cara menemukan gateway yang digunakan untuk routing

40

Ini di lingkungan unix. Saya memiliki beberapa rute di host (terlihat dengan perintah 'ip route show'). Jika saya mem-ping suatu alamat, bagaimana saya bisa mengetahui gateway mana yang digunakan untuk merutekan tracffic?

Saya mencoba menggunakan perintah traceroute, tetapi tidak menunjukkan gateway langsung.

Dari output di bawah ini, 10.58.227.1 adalah gateway default saya.

# ip r l
10.58.227.0/24 dev front_eth1  proto kernel  scope link  src 10.58.227.231
169.254.0.0/17 dev bond0  proto kernel  scope link  src 169.254.0.4
default via 10.58.227.1 dev front_eth1  proto gated

Ketika saya melakukan traceroute ke alamat eksternal, gateway yang digunakan (gateway default 10.58.227.1) tidak ditampilkan dalam output.

# traceroute -n -I 10.63.21.118
traceroute to 10.63.21.118 (10.63.21.118), 30 hops max, 40 byte packets
 1  10.58.112.1  0.507 ms  1.008 ms  1.017 ms
 2  10.63.21.118  0.228 ms  0.233 ms  0.234 ms

Apakah ada opsi untuk melihat informasi yang sama seperti yang diberikan oleh perintah traceroute, termasuk gateway yang digunakan untuk perutean?


sumber

Jawaban:

67

Anda dapat menggunakan ip route get <address>perintah untuk meminta kernel untuk melaporkan rute yang akan digunakan untuk mengirim paket ke alamat yang ditentukan:

$ ip route get 4.2.2.1
4.2.2.1 via 192.168.0.1 dev eth0  src 192.168.0.121 
    cache 
$ 

192.168.0.1adalah rute default saya. Jika saya meminta alamat yang tidak akan melewati rute default:

$ ip route get 192.168.0.116
192.168.0.116 dev eth0  src 192.168.0.121 
    cache 
$ 
sarnold
sumber
Banyak hal. :) Itu memecahkan masalah.
Pertanyaan sampingan acak - Jika 192.168.0.1"rute default" atau "gateway" ... nama apa yang akan digunakan untuk merujuk 192.168.0.121? Hanya "sumber"?
dtmland
@sarnold, harap konfirmasi apakah perlu internet di server itu.
kd12
@ kd12 Anda hanya perlu koneksi Internet di server itu jika Anda ingin merutekan paket ke Internet. Anda dapat mengatur jaringan IP tanpa terhubung ke Internet jika diinginkan; tabel routing tidak tahu dan tidak peduli, semuanya bekerja sama. :)
sarnold