Tại sao traceroute hiển thị nhiều địa chỉ IP cho cùng một bước nhảy?


13

Đây là con đường từ nhà tôi đến sina.com.cn.

 traceroute -n   sina.com.cn
traceroute to sina.com.cn (202.108.33.60), 30 hops max, 60 byte packets
 1  192.168.31.1  0.476 ms  0.587 ms  0.695 ms
 2  140.0.5.1  2.557 ms  2.699 ms  3.065 ms
 3  221.11.155.65  4.501 ms * 221.11.165.9  5.045 ms
 4  * 221.11.156.18  26.480 ms 221.11.165.233  22.950 ms
 5  219.158.9.97  14.176 ms * 219.158.19.149  21.472 ms
 6  219.158.9.97  18.142 ms 219.158.8.81  44.856 ms  52.539 ms
 7  124.65.194.190  53.162 ms 219.158.8.81  50.614 ms 124.65.194.190  47.266 ms
 8  124.65.194.190  50.760 ms 61.148.143.26  49.351 ms  53.515 ms
 9  210.74.176.138  43.056 ms  43.286 ms 61.148.143.26  53.712 ms
10  202.108.33.60  46.385 ms 210.74.176.138  42.896 ms  46.931 ms

192.168.31.1 là bộ định tuyến nhà của tôi.
140.0.5.1 là ip công khai của tôi mà ISP cung cấp.

curl  ifconfig.me
140.0.5.1 

Trong dòng thứ ba, nó nói

3  221.11.155.65  4.501 ms * 221.11.165.9  5.045 ms

Tại sao có hai địa chỉ IP 221.11.155.65221.11.165? Nó có nghĩa là gì?

Liệu gói tin nhảy từ 140.0.5.1 đến 221.11.155.65, sau đó nhảy từ 221.11.155.65 đến 221.11.165?


Một làm rõ. Nếu ISP đã cung cấp cho bạn một địa chỉ IP thì nó không có nghĩa là hiển thị trong các lệnh theo dõi mà bạn chạy. Và nếu bạn thực hiện theo dõi đến địa chỉ IP thì nó sẽ hiển thị dưới dạng hop 1. Nhiều khả năng bạn không có bất kỳ địa chỉ IP nào và 140.0.5.1là một loại CGN hoạt động theo cách hơi bất thường.
kasperd

Câu trả lời:


4

Những gì traceroute làm là sử dụng các trường tùy chọn vì nó sẽ gửi các gói giao thức tin nhắn điều khiển internet (icmp). Mỗi Cổng hoặc điểm định tuyến trong mạng đọc các gói trên một giao diện, quyết định nơi chúng nên đến và ghi chúng ra trên giao diện khác. Giao diện đó có lẽ gần với đích hơn. Trong khi bộ định tuyến đang chuyển tiếp gói, nó cũng thực hiện sửa đổi cho tiêu đề gói. Nó giảm trường "thời gian để sống" hoặc nhảy trường đếm một. Mỗi Cổng trong đường dẫn của gói đến đích sẽ làm giảm trường này.

Khi trường đếm hop giảm xuống 0, nhiều bộ định tuyến sẽ gửi lại tin nhắn icmp cho biết nơi gói tin bị rơi. Để tìm địa chỉ IP ở khoảng cách cụ thể, traceroute sẽ gửi các gói với các tùy chọn thời gian để sống và cho tôi phản hồi khi hết thời gian. các tin nhắn có số bước nhảy bắt đầu từ 1 và tăng dần sẽ trả về địa chỉ IP của các bộ định tuyến xa hơn. Bởi vì traceroute thực hiện việc này nhiều lần bạn sẽ quay lại (nếu bạn có một mạng được kết nối phong phú, cũng như internet), nhiều câu trả lời tại một số tổng số. đó có thể là trường hợp mà một Cổng cụ thể sẽ trả lời ở các mức khác nhau vì tuyến đường đến cổng đó đi qua các bước khác nhau.


11

Điều traceroutecung cấp cho bạn ở đây vì thông tin là bạn có ít nhất 2 tuyến đường để đến đích bắt đầu từ bộ định tuyến:

           IP adresses                 Internet operator

           140.0.5.1                   Firstmedia - Indonesia
             /    \
            /      \
221.11.155.65      221.11.165.9        China Unicom - China

Đây là một tình huống bình thường đối với một nhà khai thác Internet khổng lồ: có nhiều tuyến đường để chống lại các sự cố thông thường trên Internet.

Các -atùy chọn traceroutecó thể giúp bạn xác định mà nhà điều hành tất cả các địa chỉ IP thuộc.

Dưới đây là một ví dụ về cây tuyến đường lớn hơn mà bạn có thể nhận được ngay cả từ điện thoại di động của mình thông qua một công cụ mạng như máy chủ http://ping.eu/traceroute/ : theo dõi đến 140.0.5.1


Không có tùy chọn -a cho traceroute của tôi trong debian9.
phế liệu

traceroute [-46dFITUnreAV] [-f first_ttl] [-g gate, ...] [-i device] [-m max_ttl] [-p port] [-s src_addr] [-q nqueries] [-N squeries] [ -t tos] [-l Flow_label] [-w waittimes] [-z sendwait] [-UL] [-D] [-P proto] [--sport = port] [-M method] [-O mod_options] [ --mtu] [--back] host [pack_len]
phế liệu

Tôi đã sử dụng FreeBSD ở đây.
dan

8

Từ traceroute(8)hướng dẫn trên OpenBSD:

Ba đầu dò (số chính xác có thể được thay đổi bằng cách sử dụng -q tùy chọn) được gửi và một dòng được in hiển thị giới hạn TTL hoặc hop, địa chỉ của cổng và thời gian khứ hồi của mỗi đầu dò. Nếu câu trả lời thăm dò đến từ các cổng khác nhau, địa chỉ của mỗi hệ thống phản hồi sẽ được in.

Hướng dẫn Linux sẽ có từ ngữ tương tự.

Nhiều địa chỉ IP mà bạn thấy là các cổng đáp ứng với các đầu dò riêng lẻ ở các giới hạn hop cụ thể.

Trong trường hợp của bạn, ba tàu thăm dò đã trả lời rằng, ở giới hạn hop 3, đã quay lại với bạn từ các cổng vào số 221.11.155,65 và tại số 221.11.165.9.

Vì vậy, câu trả lời là: Không, gói không nhảy giữa hai máy chủ được liệt kê trên dòng đó, có ba đầu dò được gửi và chúng có hai tuyến khác nhau từ 140.0.5.1.


1
@RuiFRibeiro Tôi đã làm rõ câu trả lời của mình để trả lời câu hỏi rõ ràng đang được hỏi.
Kusalananda

Thật vậy, tôi đã xác nhận, ít nhất trong traceroute Debian có cùng từ ngữ.
Rui F Ribeiro
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.