Khắc phục sự cố các vấn đề kết nối trong mạng - Phần 5

Khắc phục sự cố các vấn đề kết nối trong mạng (Phần 1)
Khắc phục sự cố các vấn đề kết nối trong mạng (Phần 2)
Khắc phục sự cố các vấn đề kết nối trong mạng (Phần 3)
Khắc phục sự cố các vấn đề kết nối trong mạng (Phần 4)

Brien M. Posey

Quản trị mạng - Trong phần trước của loạt bài này, chúng tôi đã giới thiệu cho các bạn về lệnh TRACERT, lệnh này có thể được sử dụng để chuẩn đoán các vấn đề kết nối giữa các host nội bộ và các host trên các mạng từ xa. Trong phần đó, chúng tôi đã giới thiệu một chút về lệnh TRACERT, chính vì vậy trong phần này sẽ tiếp tục thảo luận bằng cách giới thiệu cho bạn cách thông dịch các kết quả của lệnh này.

Với mục đích đó, chúng tôi đã thực hiện lệnh TRACERT đối với miền www.espn.com. Lý do tại sao chúng tôi lại chọn tên miền cụ thể này là vì nó là một trong những site mà chúng ta dễ biết và rằng không khóa lưu lượng ICMP. Bạn có thể xem đầu ra của lệnh bên dưới. Chúng tôi sẽ tham chiếu đầu ra này trong suốt phần còn lại của bài.

C:\Users\Administrator>TRACERT www.espn.com

đầu ra với tối đa 30 bước nhảy.

1 2 ms 1 ms <1 ms 147.100.100.100
2 10 ms 10 ms 9 ms 208.104.224.1
3 9 ms 9 ms 9 ms 208.104.1.13
4 9 ms 8 ms 9 ms 208.104.0.13
5 10 ms 9 ms 10 ms 208.104.0.1
6 11 ms 14 ms 10 ms 165.166.125.193
7 11 ms 10 ms 11 ms gig-1-1-3.core01.ncchrl.infoave.net [165.166.22.61]
8 31 ms 31 ms 30 ms 64.200.130.17
9 38 ms 39 ms 40 ms hrndva1wcx2-pos15-3-oc48.wcg.net [64.200.240.213]
10 31 ms 31 ms 31 ms 64.200.249.170
11 31 ms 30 ms 31 ms 4.68.110.5
12 48 ms 35 ms 35 ms vlan99.csw4.Washington1.Level3.net [4.68.17.254]
13 32 ms 31 ms 33 ms ae-92-92.ebr2.Washington1.Level3.net [4.69.134.157]
14 60 ms 53 ms 54 ms ae-2.ebr3.Chicago1.Level3.net [4.69.132.69]
15 86 ms 71 ms 70 ms ae-3.ebr2.Denver1.Level3.net [4.69.132.61]
16 137 ms 103 ms 102 ms ae-2.ebr2.Seattle1.Level3.net [4.69.132.53]
17 95 ms 95 ms 95 ms ae-23-52.car3.Seattle1.Level3.net [4.68.105.36]
18 94 ms 95 ms 95 ms WALT-DISNEY.car3.Seattle1.Level3.net [4.71.152.22]
19 * * * Request timed out.
20 97 ms 95 ms 98 ms 199.181.132.250
Trace complete.

Nếu quan sát vào đầu ra của lệnh ở trên, bạn sẽ thấy rằng mỗi dòng đầu ra đều có một số thông tin khác nhau. Phần đầu tiên tìm thấy bên phía trái ngoài cùng của mỗi dòng là số bước nhảy. Như chúng tôi đã giới thiệu trong phần trước, lệnh TRACERT sẽ làm việc bằng cách gửi một yêu cầu ping đến một host cụ thể. Ban đầu, giá trị TTL được thiết lập bằng 1. Giá trị này để bảo đảm rằng yêu cầu sẽ “fail” sau bước nhảy đầu tiên. Các thông tin về bước nhảy được hiện hữu và sau đó yêu cầu ICMP được truyền phát lại, nhưng lúc này với giá trị được thiết lập bằng 2. Quá trình này được lặp đi lặp lại, giá trị TTL được tăng lên 1 cho tới khi đến được host đích. Bằng cách thực hiện như vậy, lệnh TRACERT có thể báo cáo về bao nhiêu bước nhảy mà yêu cầu đã thực hiện để đến được host từ xa. Nếu bạn quan sát vào dòng cuối cùng trong đầu ra trên, khi đó sẽ thấy được nó bắt đầu bằng số 20. Con số này thể hiện cho 20 bước nhảy đã được thực hiện để đến được host đích.

Ba phần thông tin tiếp theo trên mỗi dòng hiển thị số lượng thời gian cần để đến được router hoặc host mà mỗi dòng đó biểu diễn. Nếu quan sát toàn bộ danh sách bạn sẽ thấy được rằng các liên kết thời gian dần tăng trong mỗi bước nhảy. Có hai thứ mà bạn thực sự cần biết về các liên kết thời gian được hiển thị ở đây.

Thứ nhất, đó chính là ba khoảng thời gian phân biệt được hiển thị cho mỗi bước nhảy. Như đã được đề cập từ trước, quá trình lần vết được dựa trên khái niệm gửi đi nhiều yêu cầu ICMP. Khi chúng ta làm việc với lệnh ping ở trên trong loạt bài này, bạn đã thấy lệnh ping luôn trả về 4 giá trị khác nhau để đánh giá gói tin. Khái niệm tương tự cũng được áp dụng cho việc lần vết (trace route), ngoại trừ khoảng thời gian của yêu cầu được đánh giá ba lần thay vì bốn.

Điều thứ hai là bạn cần biết về số lần đáp trả, dấu hoa thị thể hiện rằng một yêu cầu đã bị time out. Điều này có thể hoặc không thể cho chúng ta thấy được vấn đề, phụ thuộc vào cách dấu hoa thị thể hiện như thế nào. Quan sát ở bước nhảy là 19 trong đầu ra ở trên bạn sẽ thấy rằng tất cả ba giá trị thời gian đáp trả được hiện diện bằng các dấu hoa thị. Khi bạn thấy ba dấu hoa thị này trong một hàng thì điều đó có nghĩa rằng thiết bị mà lệnh đang thực hiện ping nằm trong bước nhảy có tường lửa được cấu hình để reject các gói ICMP, điều đó sẽ gây ra hiện tượng timeout và cột cuối cùng sẽ hiển thị từ Request Timed Out.

Cần lưu ý rằng Trace route cũng sẽ hiển thị ba dấu hoa thị khi không đến được thiết bị đích cần ping. Vậy đâu là sự khác nhau giữa một site khóa các gói ICMP và một link thất bại?

Chỉ cần một chút để ý bạn sẽ thấy được rằng, một link thất bại trông sẽ giống như những gì bạn thấy khi một router hoặc một host khóa các yêu cầu ICMP. Khi một thất bại xảy ra thì bạn sẽ không thể thấy thông báo lỗi xuất hiện. Trong thực tế, quá trình sẽ chấm dứt bằng một thông báo chuẩn Trace Complete.

Có hai dấu hiệu khi một link thất bại xuất hiện. Một dấu hiệu không nằm trong vấn đề lần vết, mọi kết quả được trả về times out. Một dấu hiệu khác của link thất bại là TRACERT sẽ thực hiện cả 30 bước nhảy. Không điều kiện nào trong số các điều kiện trên bảo đảm rằng một link thất bại xuất hiện ngay cả khi chúng xuất hiện cùng nhau. Cho ví dụ, Web site được thử nghiệm (www.brienposey.com) hiện đang làm việc tốt, và vẫn chạy lệnh TRACERT với nó, cả hai trong số triệu chứng trên đều xuất hiện, xem phần đầu ra bên dưới:

Sử dụng lệnh TRACERT đối với www.brienposey.com [24.235.10.4]

tối đa 30 bước nhảy:

1 1 ms 1 ms <1 ms 147.100.100.100
2 8 ms 12 ms 8 ms 208.104.224.1
3 9 ms 8 ms 9 ms 208.104.1.9
4 10 ms 9 ms 8 ms 208.104.0.9
5 10 ms 12 ms 11 ms 208.104.0.5
6 12 ms 10 ms 9 ms 165.166.18.1
7 15 ms 23 ms 13 ms gig2-2-1.c01.scclma.infoave.net [165.166.22.17]
8 13 ms 12 ms 13 ms 66.192.166.9
9 31 ms 30 ms * peer-01-ge-0-0-0-1.asbn.twtelecom.net [64.129.249.10]
10 56 ms 57 ms 55 ms bb2-p6-0.ipltin.sbcglobal.net [151.164.242.59]
11 55 ms 53 ms 55 ms ded2-g8-0.ipltin.sbcglobal.net [151.164.42.159]
12 59 ms 56 ms 56 ms Winnet-1148485.cust-rtr.ameritech.net [66.73.221.254]
13 64 ms 63 ms 68 ms 216-24-2-237.ip.win.net [216.24.2.237]
14 68 ms 68 ms 64 ms fa0-0.cust-gw2.noc.win.net [216.24.30.69]
15 * * * Request timed out.
16 * * * Request timed out.
17 * * * Request timed out.
18 * * * Request timed out.
19 * * * Request timed out.
20 * * * Request timed out.
21 * * * Request timed out.
22 * * * Request timed out.
23 * * * Request timed out.
24 * * * Request timed out.
25 * * * Request timed out.
26 * * * Request timed out.
27 * * * Request timed out.
28 * * * Request timed out.
29 * * * Request timed out.
30 * * * Request timed out.
Trace complete.

Nếu quan sát đầu ra giống như cách quan sát đầu ra ở trên, bạn có thể thấy rằng link thất bại đã xuất hiện, tuy nhiên lại không chắc hẳn như vậy. Chỉ có một cách để bảo đảm đó là chạy lệnh TRACERT đối với nhiều trang và xem xem bạn có thấy cùng một kiểu kết quả hay không. Hãy lưu ý rằng, số bước nhảy càng cao thì thiết bị đích mà bạn thực hiện đến càng ở xa bạn. Một thất bại càng xa càng khó chuẩn đoán vì các test cho các site khác có thể sử dụng các tuyến khác. Khi bạn thực hiện test đối với nhiều site, bạn sẽ phải quan sát nhiều tuyến đã được sử dụng để phân biệt link thất bị có xuất hiện hay không.

Thông tin cuối cùng hiển thị trên mỗi dòng là thông tin phân biệt router hoặc host đã đáp trả yêu cầu ICMP. Lệnh TRACERT sẽ phân biệt mỗi host hoặc router bằng tên khi nào có thể, tuy nhiên bạn sẽ không phải lúc nào cũng có được tên của các router này. Cho ví dụ, nếu quan sát vào đầu ra ở trên, bạn sẽ thấy rằng một nửa trong số các router được phân biệt với nhau bởi tên, trong khi đó các số khác thì không.

Những gì bạn có thể thấy ở đây nữa là host mà bạn đang lần vết không phải luôn sẽ được hiển thị đúng dạng tên. Cho ví dụ, nếu quan sát vào phần bắt đầu trong đầu ra của ví dụ đầu tiên ở trên bạn sẽ thấy được rằng chúng tôi đã nhập vào lệnh TRACERT WWW.ESPN.COM. Ngay lập tức sau khi thực hiện điều đó, lệnh TRACERT đã xử lý www.espn.com bằng địa chỉ 199.181.132.250. Nếu bạn vẫn lưu ý được điều đó cho đến cuối đầu ra thì sẽ thấy TRACERT đã đến được đích của nó nhưng lại không phân biệt đích bằng tên.

Hành vi này không hề khó hiểu, nó như vậy là do thiết kế. Lý do tại sao chúng tôi giới thiệu cho các bạn điều này là để các bạn không thực hiện lệnh TRACERT đối với một site và nên nghĩ rằng quá trình đã thất bại vì host đích không được thể hiện đúng tên.

Kết luận

Trong phần này, chúng tôi đã giới thiệu cho các bạn về cách giải mã đầu ra của lệnh TRACERT. Trong phần tiếp theo của loạt bài này, chúng tôi sẽ giới thiệu về cách sử dụng lệnh Route để kiểm tra bảng định tuyến của máy.

Thứ Ba, 30/09/2008 15:44
52 👨 14.458
0 Bình luận
Sắp xếp theo