GNU / Linux เทียบเท่ากับ "เส้นทางได้รับ ... " ของ BSD คืออะไร


16

routeคำสั่งBSD มีคุณสมบัติที่จะแสดงเส้นทางที่จะถูกเลือกสำหรับโฮสต์ที่กำหนด ตัวอย่างเช่น:

/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 

ฉันพบว่ามีประโยชน์ในบางครั้งหากฉันทำเองกับตารางเส้นทางเพื่อให้แน่ใจว่ากฎการกำหนดเส้นทางทำงานตามที่คาดไว้

เส้นทางรุ่น GNU ไม่มีคำสั่งย่อย "รับ" เหมือนกัน มีหรือเทียบเท่าบางอย่างสำหรับ GNU / Linux?


1
ผมกำลังมองหา / BSD / เทียบเท่า IP RO แต่หน้านี้ยังคงพอเพียง :)
เบนจามิน Goodacre

คำตอบ:


21

นั่นคือ

ip route get 74.125.137.100

แต่มันไม่ได้แก้ปัญหาชื่อโฮสต์ (ซึ่งฉันคิดว่าเป็นสิ่งที่ดี) คำสั่งมักจะพร้อมใช้งานจากแพ็คเกจ iproute หรือ iproute2


3
ip route get "$(dig google.com +short)"สำหรับการแก้ปัญหาชื่อโฮสต์
jordanm

5
@jordanm, ชอบมากกว่านี้:dig google.com +short | xargs -tn1 ip route get
Stéphane Chazelas

1
@ StéphaneChazelasโปรดบอกฉันว่าคำสั่ง linux ด้านบนนี้จำเป็นต้องใช้อินเทอร์เน็ตหรือจะดึงผลลัพธ์จากการกำหนดเส้นทาง / แคชใด ๆ
kd12

คำสั่ง 'ขุด' ทำการค้นหา DNS ซึ่งอาจต้องมีการเข้าถึงเครือข่ายเว้นแต่ว่ารายการ DNS อยู่ในแคชในเครื่อง
WillW

> แต่มันไม่ได้แก้ปัญหาชื่อโฮสต์ (ซึ่งฉันคิดว่าเป็นสิ่งที่ดี) - ระมัดระวังที่จะอธิบายอย่างละเอียดว่าทำไมคุณคิดว่าความไม่สะดวกที่เกิดขึ้นมันคุ้มค่าอะไรจริงๆหรือ?
poige
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.