Apa yang setara dengan GNU / Linux dari "route get ..." BSD?


16

routePerintah BSD memiliki fitur yang akan menunjukkan rute apa yang akan dipilih untuk host yang diberikan. Sebagai contoh:

/Users/mhaase $ route get google.com
   route to: iad23s07-in-f8.1e100.net
destination: iad23s07-in-f8.1e100.net
    gateway: 10.36.13.1
  interface: en0
      flags: <UP,GATEWAY,HOST,DONE,WASCLONED,IFSCOPE,IFREF>
 recvpipe  sendpipe  ssthresh  rtt,msec    rttvar  hopcount      mtu     expire
       0         0         0         0         0         0      1500         0 

Saya kadang-kadang menemukan ini berguna jika saya secara manual mengacaukan tabel routing untuk memastikan bahwa aturan routing berfungsi seperti yang diharapkan.

Versi rute GNU tidak memiliki sub-perintah "get" yang sama. Apakah ada yang setara atau alternatif untuk GNU / Linux?


1
Saya mencari / BSD / setara dengan ip ro tetapi halaman ini masih mencukupi :)
Benjamin Goodacre

Jawaban:


21

Ada

ip route get 74.125.137.100

tetapi tidak melakukan resolusi nama host (yang saya pikir adalah hal yang baik). Perintah ini biasanya tersedia dari paket iproute atau iproute2.


3
ip route get "$(dig google.com +short)"untuk resolusi nama host.
jordanm

5
@jordanm, Lebih mirip:dig google.com +short | xargs -tn1 ip route get
Stéphane Chazelas

1
@ StéphaneChazelas, tolong beri tahu saya perintah linux di atas ini membutuhkan internet atau mengambil hasil dari tabel routing / cache?
kd12

Perintah 'menggali' melakukan pencarian DNS. Itu mungkin memerlukan akses jaringan kecuali entri DNS ada di cache lokal.
WillW

> tetapi itu tidak melakukan resolusi nama host (yang saya pikir adalah hal yang baik) - peduli untuk menguraikan mengapa Anda berpikir ketidaknyamanan yang disebabkannya benar-benar berharga?
poige
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.