HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN MÔN : TCP/IP
Đề tài: Trình bày tính năng, cách sử dụng, thực hành bắt và
phân tích gói tin trên phần mềm Wireshark
Giáo viên : Lê Thị Hồng Vân
Sinh viên: Đỗ Huy Hùng
Nguyễn Thành Đạt
Lương Văn Dũng
Trịnh Doãn Mạnh
Lớp: AT9B
Hà Nội, Tháng 10/2014.
Tìm hiểu về phần mềm Wireshark
Mục lục.
Page | 2
Email:
Tìm hiểu về phần mềm Wireshark
I. Giới thiệu về Wireshark
WireShark có một bề dầy lịch sử. Gerald Combs là người đầu tiên phát triển
phần mềm này. Phiên bản đầu tiên được gọi là Ethereal được phát hành năm 1998.
Tám năm sau kể từ khi phiên bản đầu tiên ra đời, Combs từ bỏ công việc hiện tại để
theo đuổi một cơ hội nghề nghiệp khác. Thật không may, tại thời điểm đó, ông không
thể đạt được thoả thuận với công ty đã thuê ông về việc bản quyền của thương hiệu
Ethereal. Thay vào đó, Combs và phần còn lại của đội phát triển đã xây dựng một
thương hiệu mới cho sản phẩm “Ethereal” vào năm 2006, dự án tên là WireShark.
WireShark đã phát triển mạnh mẽ và đến nay, nhóm phát triển cho đến nay đã
lên tới 500 cộng tác viên. Sản phẩm đã tồn tại dưới cái tên Ethereal không được phát
triển thêm.
Lợi ích Wireshark đem lại đã giúp cho nó trở nên phổ biến như hiện nay. Nó có
thể đáp ứng nhu cầu của cả các nhà phân tích chuyên nghiệp và nghiệp dư và nó đưa ra
nhiều tính năng để thu hút mỗi đối tượng khác nhau.
Các giao thực được hỗ trợ bởi WireShark:
WireShark vượt trội về khả năng hỗ trợ các giao thức (khoảng 850 loại), từ
những loại phổ biến như TCP, IP đến những loại đặc biệt như là AppleTalk và Bit
Torrent. Và cũng bởi Wireshark được phát triển trên mô hình mã nguồn mở, những
giao thức mới sẽ được thêm vào. Và có thể nói rằng khôngcó giao thức nào mà
Wireshark không thể hỗ trợ.
1. Thân thiện với người dùng: Giao diện của Wireshark là một trong những giao diện
phần mềm phân tích gói dễ dùng nhất. Wireshark là ứng dụng đồ hoạ với hệ thống
menu rât rõ ràng và được bố trí dễ hiểu. Không như một số sản phẩm sử dụng dòng
lệnh phức tạp như TCPdump, giao diện đồ hoạ của Wireshark thật tuyệt vời cho những
ai đã từng nghiên cứu thế giới của phân tích giao thức.
2. Giá rẻ: Wireshark là một sản phẩm miễn phí GPL. Bạn có thể tải về và sử dụng
Wireshark cho bất kỳ mục đích nào, kể cả với mục đích thương mại.
3. Cộng đồng: Cộng đồng của Wireshark là một trong những cộng đồng tốt và năng
động nhất của các dự án mã nguồn mở.
4. Hỗ trợ nhiều hệ điều: Wireshark hỗ trợ hầu hết các loại hệ điều hành hiện nay.
Page | 3
Email:
Tìm hiểu về phần mềm Wireshark
II. Một số tính năng nâng cao
1. Name Resolution
Dữ liệu truyền trong mạng thông qua một vài hệ thống địa chỉ, các địa chỉ này
thường dài và khó nhớ (Ví dụ: MAC). Phân giải điạ chỉ là quá trình mà một giao thức
sử dụng để chuyển đổi một địa chỉ loại này thành một địa chỉ loại khác đơn giản hơn.
Chúng ta có thể tiết kiệm thời gian bằng cách sử dụng một vài công cụ phân giải địa
chỉ để file dữ liệu ta bắt được dễ đọc hơn. Ví dụ như là chúng
ta có thể sử dụng phân giải tên DNS để giúp định danh tên của một máy tính mà
ta đang có gắng xác định như là nguồn của các gói cụ thể.
Các kiểu công cụ phân giải tên trong Wireshark: có 3 loại
· MAC Name Resolution: phân giải địa chỉ MAC tầng 2 sang địa chỉ IP tầng 3.
Nếu việc phân giải này lỗi, Wireshark sẽ chuyển 3 byte đầu tiên của địa chỉ MAC sang
tên hãng sản xuất đã được
IEEE đặc tả, ví dụ: Netgear_01:02:03.
· Network Name Resolution: chuyển đổi địa chỉ tầng 3 sang một tên DNS dễ đọc
như là
MarketingPC1.
· Transport Name Resolution: chuyển đổi một cổng sang một tên dịch vụ tương
ứng với nó, ví dụ:
cổng 80 là http.
2. Protocol Dissection
Một protocol dissector cho phép Wireshark phân chia một giao thức thành một số
thành phần để phân tích. ICMP protocol dissector cho phép Wireshark phân chia dữ
liệu bắt được và định dạng chúng như là một gói tin ICMP. Bạn có thể nghĩ rằng một
dissector như là một bộ phiên dịch giữa dòng dữ liệu trên đường truyền và chương
trình Wireshark. Với mục đích để hỗ trợ một giao thức nào đó, một dessector cho giao
thức đó phải được tích hợp trong Wireshark. Wireshark sử dụng đồng thời vài
dissector để phiên dịch mỗi gói tin. Nó quyết định dissector nào được sử dụng bằng
cách sử dụng phân tích lôgic đã được cài đặt sẵn và thực hiện việc dự đoán. Thật
không may là Wireshark không phải lúc nào cũng đúng trong việc lựa chọn dissector
phù hợp cho một gói tin. Tuy nhiên, ta có thể thay đổi việc lựa chọn này trong từng
trường hợp cụ thể.
3. Following TCP Streams
Một trong những tính năng hữu ích nhất của Wireshark là khả năng xem các
dòng TCP như là ở tầng ứng dụng. Tính năng này cho phép bạn phối hợp tất cả các
thông tin liên quan đến các gói tin và chỉ cho bạn dữ liệu mà các gói tin này hàm chứa
Page | 4
Email:
Tìm hiểu về phần mềm Wireshark
giống như là người dùng cuối nhìn thấy trong ứng dụng. Còn hơn cả việc xem các dữ
liệu đang được truyền giữa máy trạm và máy chủ trong một mớhỗn độn, tính năng này
sắp xếp dữ liệu để có thể xem một cách đơn giản. Bạn có thể sử dụng công cụ này để
bắt và giải mã một phiên instant messages được gửi bởi một người làm thuê (người
này đang bị nghi ngờ phát tán các thông tin tài chính của công ty).
4. Cửa sổ thống kê phân cấp giao thức
Khi bắt được một file có kích thước lớn, chúng ta cần biết được phân bố các giao
thức trong file đó, bao nhiêu phần trăm là TCP, bao nhiêu phần trăm là IP và DHCP là
bao nhiêu phần trăm, Thay vì phải đếm từng gói tin để thu được kết quả, chúng ta có
thể sử dụng cửa sổ thống kê phân cấp giao thức của Wireshark. Đây là cách tuyệt với
để kiểm thử mạng của bạn. Ví dụ, nếu bạn biết rằng 10% lưu lượng mạng của bạn
được sử dụng bởi các lưu lượng ARP, và một ngày nào đó, bạn thấy lưu lượng ARP
lên tới 50%, bạn hoàn toàn có thể hiểu rằng đang có một cái gì đó không ổn xảy ra.
5. Xem các Endpoints
Một Endpoint là chỗ mà kết nối kết thúc trên một giao thức cụ thể. Ví dụ, có hai
endpoint trong kết nối TCP/IP: các địa chỉ IP của các hệ thống gửi và nhận dữ liệu,
192.168.1.5 và 192.168.0.8. Một ví dụ ở tầng 2 có thể là kết nối giữa hai NIC vật lý và
địa chỉ MAC của chúng. Các NIC gửi và nhận dữ liệu, các MAC đó tạo nên các
endpoint trong kết nối.
Khi thực hiện phân tích gói tin, bạn có thể nhận ra rằng bạn đã khoanh vùng vấn
đề chỉ còn là một enpoint cụ thể trong mạng. Hộp thoại Wireshark endpoints chỉ ra
Page | 5
Email:
Tìm hiểu về phần mềm Wireshark
một vài thống kê hữu ích cho mỗi endpoint, bao gồm các địa chỉ của từng máy cũng
như là số lượng các gói tin và dung lượng đã được truyền nhận của từng máy.
6. Cửa số đồ thị IO
Cách tốt nhất để hình dung hướng giải quyết là xem chúng dưới dạng hình ảnh.
Cửa sổ đồ thị IO của Wireshark cho phép bạn vẽ đồ thị lưu lượng dữ liệu trên mạng.
Bạn có thể sử dụng tính năng này để tìm kiếm các đột biến hoặc những thời điểm
không có dữ liệu truyền của các giao thức cụ thể mà bạn đang quan tâm. Bạn có thể vẽ
đồng thời 5 đường trên cùng một đồ thị cho từng giao thức mà bạn quan tâm bằng các
màu khác nhau. Điều này giúp bạn dê dàng hơn để thấy sự khác nhau của các đồ thị.
Biểu đồ lưu lượng dữ liệu mạng
Page | 6
Email:
Tìm hiểu về phần mềm Wireshark
III. Hướng dẫn cài đặt và sử dụng
1. Hướng dẫn cài đặt
Do Wireshark là một ứng dụng mã nguồn mở và có thể download miễn phí tại
Trong bài viết sử dụng phiên bản
1.8.1(64bit)
Tiến hành cài đặt
Sau khi tải về tập tin lưu trên máy có dang Wireshark-win64-1.8.1.exe.
Click đúp vào file để tiến hành quá trình cài đặt chương trình
Hình 1. Bắt đầu cài đặt
Nhấn Next để bắt đầu quá trình cài đặt
Hình 2. Thông tin bản
Page | 7
Email:
Tìm hiểu về phần mềm Wireshark
Nhấn I Agree để tiếp tục
Hình 3. Trang Components của Wireshark
Nhấn Next để tiếp tục.
Hình 4. Chọn nơi hiển thị lối tắt và các file hỗ trợ
Page | 8
Email:
Tìm hiểu về phần mềm Wireshark
Nhấn Next để tiếp tục.
Hình 5. Chọn đường dẫn cài đặt
Nhấn Next để tiếp tục quá trình cài đặt.
Hình 6. Cài WinPcap
Page | 9
Email:
Tìm hiểu về phần mềm Wireshark
Để wireshark có thể hoạt động được, bạn phải cài đặt driver WinPcap trên máy
tính của bạn( Tương tự như .net framework). Nếu bạn chưa cài đặt WinPcap hoặc
phiên bản cũ chương trình sẽ hỏi bạn có cài WinPcap không?.
Ở đây chưa cài nên nhấn Install để cài
Hình 7. Quá trình cài đặt
Chương trình sẽ tự động bật cửa sổ yêu cầu cài đặt WinPcap. Kích Next để tiếp
tục
.
Hình 8. Hộp thoại chào mừng cài đặt WinPcap
Nhấn Next 2 lần để tiếp tục
Page | 10
Email:
Tìm hiểu về phần mềm Wireshark
Hình 9. Các điều khoản của WinPcap
Nhấn I Agree để tiếp tục quá trình cài đặt. Sau đó nhấn Install để cài đặt
WinPcap lên máy.
Nhấn Finish để kết thúc quá trình cài đặt WinPcap
Tiếp theo quá trình cài đặt Wireshark cũng hoàn thành. Nhấn Next để tiếp tục
Page | 11
Email:
Tìm hiểu về phần mềm Wireshark
Nhấn Finish để kết thúc quá trình cài đặt. Tích chọn vào Run Wireshark 1.8.4
để khởi động Wireshark.
Page | 12
Email:
Tìm hiểu về phần mềm Wireshark
2. Hướng dẫn sử dụng
Để bắt được gói tin, Wireshark phải được cài đặt trên máy tính có kết nối
mạng(LAN, mạng ảo, Internet…) đang hoạt động và Wireshark phải chạy trước, trước
khi quá trình trao đổi dữ liệu diễn ra
Màn hình khởi động của Wireshark
Để bắt đầu bắt gói tin, vào menu Capture chọn Interface( Ctrl + I)
Chọn Card mạng muốn bắt gói tin và nhấn Start.
Page | 13
Email:
Tìm hiểu về phần mềm Wireshark
Để tùy chọn các chức năng, vào Capture chọn Option( Ctrl + K). Hộp thoại
Options cho phép thiết lập các tùy chọn, đặt các điều kiện lọc, giúp lựa chọn loại dữ
liệu và số lượng dữ liệu sẽ bắt.
Trước tiên, cần đảm bảo là Wireshark được thiết lập để bắt gói tin trên
Interface thích hợp( Như hình minh họa)
Một số tùy chọn:
- Capture on all interfaces: Bắt các gói tin trên toàn bộ các Interface.
- Capture all packets in promiscuous mode: Chỉ định Wireshark nên đặt tất cả các
interface ở chế độ promiscuous khi bắt các gói tin.
- Name resolution: với tùy chọn này, Wireshark sẽ quyết định có/hay không thực hiện
việc phân giải địa chỉ mạng (trong các gói tin) sang dạng tên. Mặc dù việc phân giải
tên là có ích, tuy nhiên, việc phân giải tên cũng làm gia tăng các gói tin được bắt tại
card mạng, dẫn đến làm méo mó kết quả của quá trình phân tích mạng.
- Stop Capture: Cho phép dừng quá trình bắt gói tin sau một số packet(s), megabyte(s),
hoặc sau một thời gian nào đó.
Page | 14
Email:
Tìm hiểu về phần mềm Wireshark
Bấm nút Start để bắt đầu quá trình bắt gói tin. Có thể thực hiện ping đến một máy
khác, truy cập đến website nào đó, sau đó quan sát màn hình kết quả.
Vào Capture chọn Stop để dừng quá trình bắt gói tin.
Cửa sổ hiển thị kết quả bắt gói của Wireshark gồm có 3 phần.
Phần danh sách các gói tin: hiển thị tất cả các gói tin đã bắt được, kèm theo
thông tin vắn tắt của mỗi gói tin.
Khi bấm vào mỗi gói tin trong phần “Danh sách các gói tin”, thông tin về gói
tin(được chọn) sẽ hiển thị tại phần “Nội dung chi tiết mỗi gói tin”, và nội dung của gói
tin dưới dạng hệ số16 sẽ được hiển thị tại phần “Nội dung gói tin dạng hex”.
Phần “Nội dung chi tiết mỗi gói tin” sẽ hiển thị các giao thức, các trường của
mỗi giao thức, các giao thức. Các trường được tổ chức theo cấu trúc cây, có thể mở
rộng hoặc thu gọn cấu trúc cây để tiện quan sát.
Để tìm kiếm các gói tin ta sử dụng thanh công cụ filter.
Ví dụ để tìm các gói tin có giao thức TCP ta gõ TCP vào thanh công cụ Filter
và nhấn Apply.
Khi đóng màn hình kết quả hoặc tắt chương trình Wireshark, sẽ có cửa sổ nhắc
người sử dụng lưu lại các kết quả đã bắt.
Page | 15
Email:
Tìm hiểu về phần mềm Wireshark
IV. Thực hành.
1. Bắt và phân tích gói tin trong một số trường hợp cơ bản
a. Bắt gói ping
Một trong các công cụ khi kiểm tra kết nối mạng là công cụ ping.
Nguyên tắc hoạt động:
Lệnh ping hoạt động dựa trên ý tưởng dò tìm. Mỗi khi cần xác định xem có vật
gì gần mình hay không, bạn sẽ dùng tay “sờ”, dùng gậy “khua” hoặc ném đá ra xung
quanh mình. Nếu có một va chạm xảy ra thì dựa trên tiếng “pong” của va chạm bạn sẽ
xác định được phương hướng của vật thể đang ở gần bạn.
Tương tự như vậy, lệnh Ping cũng hoạt động bằng cách gửi gói tin truy vấn ICMP
“echo-request” đến cho máy đích và lắng nghe gói tin hồi đáp ICMP “echo-reply" để
xác định có sự hiện diện của máy đích.
Tiến hành bắt và phân tích
- Đầu tiên, chạy chương trình wireshark, thiết lập một số tùy chọn như phần trên
- Thực hiện ping( ping địa chỉ IP) tới một máy tính khác.
- Sau khi thực hiện lệnh ping thành công( đã nhận được gói tin trả lời – reply), dừng
quá trình bắt gói tin
Quá trình gửi và nhận các gói tin được wireshark ghi lại.
Danh sách các gói tin
Ở đây, ta có thể thấy 8 dòng thể hiện quá trình ping vừa thực hiện.
Nhìn vào phần Protocol: giao thức mà lệnh ping sử dụng đó là giao thức
ICMP(Internet Control Message Protocol).
Dựa vào phần Info: có thể thấy được 2 loại gói tin của lệnh ping đó là echo
request và echo reply. Cứ mỗi một gói echo request được gửi đi thì nhận được một gói
Page | 16
Email:
Tìm hiểu về phần mềm Wireshark
echo reply trả về. Dựa vào gói tin echo reply mà ta có thể kiểm tra được hoạt động của
hệ thống mạng, sự tồn tại của máy đích, kiểm định chất lượng, đo đạt tốc độ truyền
dẫn của hệ thống mạng. Cuối mỗi lệnh ping sẽ hiển thị thống kê về số lượng gói tin
được gửi, thời gian hồi đáp và ghi nhận các gói tin bị rớt hay truyền thành công trên
đường truyền …
Các thông báo của lệnh ping
• Reply from 8.8.8.8: bytes=32 time=30ms TTL=247
Khi nhận được thông báo như trên thì có nghĩa lệnh ping đã thực hiện thành
công và hệ thống không có lỗi.
• Request timed out
Nếu không kết nối được với máy đích thì Ping sẽ hiển thị thông báo là "Request
timed out".
Thông điệp "Request timed out" có nghĩa là không có hồi đáp trả về. Khi gặp
thông báo này thì bạn có thể có chẩn đoán các nguyên nhân gây ra lỗi như sau:
- Thiết bị định tuyến Router bị tắt.
- Địa chỉ máy đích không có thật hoặc máy đích đang bị tắt, hoặc cấm ping.
- Nếu máy đích khác đường mạng với máy nguồn thì nguyên nhân có thể do
không có định tuyến ngược trở lại máy nguồn. Lúc này, nếu máy đích đang chạy, bạn
có thể kiểm tra đường đi về của gói tin bằng cách xem lại thông số Default Gateway
trên máy đích, máy nguồn và router kết nối các đường mạng.
- Độ trễ của quá trình hồi đáp lớn hơn 1 giây. Phiên làm việc của lệnh ping mặc
định là 1 giây. Nhưng nếu quá trình hồi đáp lớn hơn 1 giây mà gói tin vẫn chưa đến
đích thì lệnh ping cũng thông báo lỗi trên. Bạn có thể sử dụng tùy chọn -w để tăng
thêm thời gian hết hạn. Ví dụ cho phép kéo dài quá trình hồi đáp trong vòng 5 giây sử
dụng bạn dùng lệnh ping -w 5000.
• Destination host unreachable
Thông báo cho biết không thể kết nối đến máy đích. Nguyên nhân gây ra lỗi
này có thể là do cáp mạng bị đứt, không gắn cáp vào card mạng, card mạng bị tắt,
Driver card mạng bị hư…
b. Bắt gói tin DNS
Bước 1: Chọn gói tin bạn muốn phân tích.
Ta sẽ được của sổ thông tin của gói tin:
Page | 17
Email:
Tìm hiểu về phần mềm Wireshark
Bước 2: Phân tích gói tin:
- Frame:
- Ethernet II:
+ Đích đến: 01:00:5e:00:00:fc
+ Nguồn đến: 00:21:85:9f:bc:bc
- Internet Protocol version 4:
-
+ Header Length(Độ dài header) : 20 bytes
+ Total Length( độ dài tổng): 50
+ Fragment offset(đoạn bù đắp): 0
+ Time to live(thời gian sống): 1
+ Source(địa chỉ nguồn): 192.168.0.105
+Destination(địa chỉ đích): 224.0.0.252
- User Datagram Protocol:
+ Source(Cổng nguồn) : 50086
+Destination Port( Cổng đích) : 5355
+Length( Độ dài) : 30
- Truy vấn DNS:
Page | 18
Email:
Tìm hiểu về phần mềm Wireshark
-
c. Bắt gói tin FTP (File Transfer Protocol)
Giao thức truyền tải file, thường được gọi là FTP, là công cụ quản lý files giữa
các máy. FTP cho phép truyền và tải files, quản lý thư mục, và lấy mail. FTP không
được thiết kế để truy nhập và thi hành files, nhưng nó là công cụ tuyệt vời để truyền
tải files.
Nội dung: tiến hành kết nối với máy FTP server, tải file at9b.txt về máy, thoát
khỏi ftp server.
Quá trình kết nối với FTP server
Trong khung danh sách các gói tin ta có thể thấy phần tạo kết nối và phần đăng
nhập ( user: u775958434, pass: at9bKMA)
Page | 19
Email:
Tìm hiểu về phần mềm Wireshark
Quá trình tạo kết nối, Client ( IP: 192.168.136.128) yêu cầu mở cổng dịch vụ
bằng cách gửi gói tin SYN (Gói tin TCP) với tham số Sequence number ngẫu nhiên
X (ở đây là 0) đến server (IP: 31.220.16.16).
Server hồi đáp bằng cách gửi lại client bản tin SYN-ACK trong gói tin này,
tham số Acknowledgment number được gán giá trị bằng X + 1, tham số sequence
number được gán ngẫu nhiên một giá trị Y.
Để hoàn tất quá trình bắt tay ba bước, client tiếp tục gửi tới server bản tin ACK,
trong bản tin này, tham số sequence number được gán cho giá trị bằng X + 1 còn tham
số acknowledgment number được gán giá trị bằng Y + 1
Quá trình tạo kết nối
Như vậy, kết nối đã được thiết lập giữa client và server.
Page | 20
Email:
Tìm hiểu về phần mềm Wireshark
Để xem các giao thức nào được đóng gói trong FRAME chọn một dòng, quan sát
trong cửa sổ “nội dung chi tiết mỗi gói tin”, mở rộng phần frame
Quá trình đăng nhập vào server
Sau khi thiết lập được kết nối, client tiếp tục gửi gói tin ACK, tên tài khoản
(u775958434) để truy cập vào ftp server. Tiếp đó server sẽ kiểm tra trên hệ thống và
gửi lại cho client thông tin về user. Nếu đúng thì tiếp tục đăng nhập – điền mật khẩu.
Quá trình gửi, kiểm tra mật khẩu giống như phần kiểm tra tên tài khoản.
Chú ý: tham số Sequence number trong gói tin ACK server trả về phải giống với
tham số Acknowledgment number trong gói tin ACK client gửi lên.
Chọn dòng có chứa tên tài khoản đăng nhập hoặc mật khẩu. Nhìn vào “Nội dung gói
tin dạng Hex”. Tên tài khoản và mật khẩu là tường minh, không hề được mã hóa, che
giấu => vấn đề bảo mật thông tin trong quá trình đăng nhập FTP là chưa có.
Page | 21
Email:
Tìm hiểu về phần mềm Wireshark
Quá trình tải file at9b.txt
Quá trình thoát khỏi FTP server
Đăng xuất khỏi FTP:
Khi người dùng chọn đăng xuất, client gửi gói tin ACK và yêu cầu đăng xuất khỏi
server. Server hồi đáp lại bằng gói tin ACK với tham số Seq giống tham số Ack mà
client gửi lên. Trả về dòng thông báo đã upload và download bao nhiêu dung lượng.
Đồng thời cũng gửi gói tin báo ngắt kết nối cho client. Client gửi thêm 2 gói tin ACK
và RST để báo chính thức ngắt kết nối.
Quá trình ngắt kết nối
2. Xử lý tình huống thực tế với wireshark
a. A Lost TCP Connection (mất kết nối TCP)
Một trong các vấn đề phổ biến nhất là mất kết nối mạng.Chúng ta sẽ bỏ qua
nguyên nhân tại sao kêt nối bị mất, chúng ta sẽ nhìn hiện tượng đó ở mức gói tin.
Ví dụ:
Một ví truyền file bị mất kết nối:
Bắt đầu bằng việc gửi 4 gói TCP ACK từ 10.3.71.7 đến 10.3.30.1.
Page | 22
Email:
Tìm hiểu về phần mềm Wireshark
Lỗi bắt đầu từ gói thứ 5, chúng ta nhìn thấy xuất hiện việc gửi lại gói của TCP.
Hình 3.1-2: These TCP retransmissions are a sign of a weak or dropped
connection.
Theo thiết kế, TCP sẽ gửi một gói tin đến đích,
nếu không nhận được trả lời sau một khoảng thời gian
nó sẽ gửi lại gói tin ban đầu. Nếu vẫn tiếp tục không
nhận được phản hồi, máy nguồn sẽ tăng gấp đôi thời
gian đợi cho lần gửi lại tiếp theo.
Như ta thấy ở hình trên, TCP sẽ gửi lại 5 lần,
nếu 5 lần liên tiếp không nhận được phản hồi thì kết
nối được coi là kết thúc.
Hiện tượng này ta có thể thấy trong Wireshark
như sau:
Hình 3.1-4: Windows will retransmit up to five times by default.
Khả năng xác định gói tin bị lỗi đôi khi sẽ giúp chúng ta có thể phát hiện ra
mấu trốt mạng bị mất là do đâu.
b. Unreachable Destinations and ICMP Codes (không thể chạm tới điểm cuối và các
mã ICMP)
Một trong các công cụ khi kiểm tra kết nối mạng là công cụ ICMP ping. Nếu
may mắn thì phía mục tiêu trả lời lại điều đó có nghĩa là bạn đã ping thành công, còn
nếu không thì sẽ nhận được thông báo không thể kết nối tới máy đích. Sử dụng công
cụ bắt gói tin trong việc này sẽ cho bạn nhiều thông tin hơn thay vì chỉ dung ICMP
ping bình thường. Chúng ta sẽ nhìn rõ hơn các lỗi của ICMP.
Page | 23
Email:
Tìm hiểu về phần mềm Wireshark
Hình dưới đây cho thấy thông báo không thể ping tới 10.4.88.88 từ máy
10.2.99.99.
Như vậy so với ping thông thường thì ta có thể thấy kết nối bị đứt từ 10.2.99.99.
Ngoài ra còn có các mã lỗi của ICMP, ví dụ : code 1 (Host unreachable)
c. Unreachable Port (không thể kết nối tới cổng)
Một trong các nhiệm vụ thông thường khác là kiểm tra kết nối tới một cổng trên
một máy đích. Việc kiểm tra này sẽ cho thấy cổng cần kiểm tra có mở hay không, có
sẵn sang nhận các yêu cầu gửi đến hay không.
Ví dụ, để kiểm tra dịch vụ FTP có chạy trên một server hay không, mặc định FTP
sẽ làm việc qua cổng 21 ở chế độ thông thường. Ta sẽ gửi gói tin ICMP đến cổng 21
của máy đích, nếu máy đích trả lời lại gói ICMP loại o và mã lỗi 2 thì có nghĩa là
không thể kết nối tới cổng đó.
Page | 24
Email:
Tìm hiểu về phần mềm Wireshark
Hình 3.1-7: This ping request requires three packets rather than one because the
data being transmitted is above average size.
Ở đây có thể thấy kích thước gói tin ghi nhận được lớn hơn kích thước gói tin
mặc định gửi đi khi ping lp 32 bytes tới một máy tính chạy Windows.
Kích thước gói tin ở đây là 3,072 bytes.
d. Determining Whether a Packet Is Fragmented (xác định vị trí gói tin bị phân
đoạn)
No Connectivity (không kết nối)
Vấn đề : chúng ta có 2 nhân viên mới Hải và Thanh và được sắp ngồi cạnh nhau
và đương nhiên là được trang bị 2 máy tính. Sau khi được trang bị và làm các thao tác
để đưa 2 máy tính vào mạng, có một vấn đề xảy ra là máy tính của Hải chạy tốt, kết
nối mạng bình thường, máy tính của Thanh không thể truy nhập Internet.
Mục tiêu : tìm hiểu tại sao máy tính của Thanh không kết nối được Internet và
sửa lỗi đó.
Các thông tin chúng ta có
• Cả 2 máy tính đều mới
• Cả 2 máy đều được đặt IP và có thể ping đến các máy khác trong mạng
Nói tóm lại là 2 máy này được cấu hình không có gì khác nhau.
Tiến hành
Cài đặt Wireshark trực tiếp lên cả 2 máy.
Phân tích
Page | 25
Email: