Mengapa traceroute menampilkan banyak alamat ip untuk hop yang sama?

14

Ini adalah jalur rute dari rumah saya ke 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 adalah router rumah saya.
140.0.5.1 adalah ip publik saya yang disediakan ISP.

curl  ifconfig.me
140.0.5.1 

Di baris ketiga, katanya

3  221.11.155.65  4.501 ms * 221.11.165.9  5.045 ms

Mengapa ada dua alamat ip 221.11.155.65 dan 221.11.165? Apa artinya?

Apakah paket melompat dari 140.0.5.1 ke 221.11.155.65, lalu melompat dari 221.11.155.65 ke 221.11.165?

kasar
sumber
Satu klarifikasi. Jika ISP telah memberi Anda alamat IP maka tidak seharusnya muncul dalam perintah traceroute yang Anda jalankan. Dan jika Anda melakukan traceroute ke alamat IP itu akan muncul sebagai hop 1. Kemungkinan besar Anda tidak memiliki alamat IP dan 140.0.5.1semacam CGN yang berperilaku agak tidak biasa.
kasperd

Jawaban:

4

Apa yang dilakukan traceroute adalah menggunakan kolom opsi saat mengirimkan paket protokol pesan kontrol internet (icmp). Setiap Gateway atau titik perutean dalam jaringan membaca paket pada satu antarmuka, memutuskan ke mana mereka harus pergi, dan menuliskannya pada antarmuka lain. Antarmuka itu mungkin lebih dekat ke tujuan. Sementara router meneruskan paket itu juga membuat modifikasi ke header paket. Ini mengurangi bidang "waktu untuk hidup" atau hop count oleh satu. Setiap Gateway di jalur paket menuju tujuan mengurangi bidang ini.

Ketika bidang jumlah hop turun ke nol, banyak router akan mengirim kembali pesan icmp yang mengatakan di mana paket itu dijatuhkan. Untuk menemukan alamat IP yang berjarak tertentu, traceroute akan mengirim paket dengan opsi waktu untuk hidup & memberi saya respons ketika waktu habis. pesan dengan jumlah hop mulai dari 1 dan tingkatkan ke atas masing-masing akan mengembalikan alamat IP dari router yang semakin jauh. Karena traceroute melakukan ini beberapa kali, Anda akan mendapatkan kembali (jika Anda memiliki jaringan yang kaya, seperti halnya internet), banyak jawaban di beberapa penghitungan. mungkin saja Gateway tertentu akan menjawab pada jumlah yang berbeda jauh karena rute ke gateway itu melewati berbagai hop.

ElderDelp
sumber
11

Apa yang traceroutememberi Anda informasi di sini adalah bahwa Anda memiliki setidaknya 2 rute untuk mencapai tujuan Anda mulai dari router:

           IP adresses                 Internet operator

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

Ini adalah situasi normal bagi operator Internet besar: memiliki banyak rute untuk menolak insiden normal di Internet.

The -apilihan untuk traceroutedapat membantu Anda mengidentifikasi mana operator yang setiap alamat IP milik.

Berikut adalah contoh pohon rute yang lebih besar yang bisa Anda dapatkan dari ponsel Anda melalui alat jaringan seperti server http://ping.eu/traceroute/ : traceroute ke 140.0.5.1

dan
sumber
Tidak ada opsi-untuk traceroute saya di debian9.
kotor
traceroute [-46dFITUnreAV] [-f first_ttl] [-g gate, ...] [-i device] [-m max_ttl] [-p port] [-s src_addr] [-q nqueries] [-N squeries] [-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 [package_len]
scrapy
Saya menggunakan yang FreeBSD di sini.
dan
8

Dari traceroute(8)manual di OpenBSD:

Tiga probe (jumlah pastinya dapat diubah menggunakan -q opsi) dikirim dan sebuah garis dicetak menunjukkan TTL atau batas hop, alamat gateway, dan waktu perjalanan pulang pergi dari masing-masing probe. Jika jawaban probe berasal dari gateway yang berbeda, alamat setiap sistem yang merespons akan dicetak.

Manual Linux akan memiliki kata-kata yang serupa.

Beberapa alamat IP yang Anda lihat adalah gateway yang merespons masing-masing probe pada batas hop tertentu.

Dalam kasus Anda, tiga probe menghasilkan balasan bahwa, pada batas hop 3, kembali kepada Anda dari gateway di 221.11.155.65 dan di 221.11.165.9.

Jadi, jawabannya adalah: Tidak, paket tidak melompat di antara dua host yang terdaftar di baris itu, ada tiga probe yang dikirim dan mereka mengambil dua rute berbeda dari 140.0.5.1.

Kusalananda
sumber
1
@RuiFRibeiro Saya telah mengklarifikasi jawaban saya untuk menjawab pertanyaan eksplisit yang diajukan.
Kusalananda
Memang, saya tegaskan, setidaknya di Debian traceroute memiliki kata-kata yang sama.
Rui F Ribeiro