มีบางอย่างเช่น lsblk สำหรับอินเตอร์เฟสเครือข่ายหรือไม่?


10

มีคำสั่ง Linux ที่แสดงภาพอินเตอร์เฟสเครือข่ายที่กำหนดค่าไว้ในมุมมองแบบต้นไม้เช่นเดียวlsblkกับอุปกรณ์บล็อกหรือไม่

ผลลัพธ์ของโปรแกรมดังกล่าวอาจมีลักษณะเช่นนี้ (จากล่างขึ้นบน):

eth0   
└─bond0
  ├─bond0.42
  │ └─br42
  └─bond0.43
    └─br43
eth1
└─bond0
  ├─bond0.42
  │ └─br42
  └─bond0.43
    └─br43
tap100i0
└─br42
tap100i1
└─br43
tap101i0
└─br42
tap101i1
└─br43

หรือสิ่งนี้ (จากบนลงล่าง):

br42
├─bond0.42
│ └─bond0
│   ├─eth0
│   └─eth1
├─tap100i0
└─tap101i0
br43
├─bond0.43
│ └─bond0
│   ├─eth0
│   └─eth1
├─tap100i1
└─tap101i1

หมายเหตุ: ฉันไม่ได้มองหาเครื่องมือที่สร้างผลลัพธ์ที่แน่นอน แต่ถามว่าใครรู้คำสั่งที่มีผลลัพธ์ที่คล้ายกัน


คุณลอง ip addrไหม
Sidahmed

ใช่ แต่ip addrส่งกลับรายการแบบแบนของอินเทอร์เฟซเครือข่ายไม่ใช่มุมมอง
แผนผัง

คำตอบ:


5

ฉันค้นหาตัวเลือกในยูทิลิตี้ที่มีอยู่แล้ว แต่ไม่พบเลย อย่างไรก็ตามฟังก์ชั่นที่ต้องการมีประโยชน์จากมุมมองของฉัน ดังนั้นฉันจึงใช้สคริปต์ทุบตีง่ายๆที่แยกวิเคราะห์ip link showคำสั่งและพิมพ์สิ่งที่คล้ายกับเอาต์พุตที่ต้องการในคำถาม:

$ ./nettree.sh -u
eth3
    bond1
       bond0
eth2
    bond0
eth1
    bond0
eth0
lupen3
    bond1
       bond0
lo
lxcbr0
virbr0
veth6404e35
    docker0

ฉันผลักสคริปต์ไปที่ github: https://github.com/zabojcampula/show-net-devices-tree

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.