网络接口有类似 lsblk 的东西吗?

jla*_*ger 10 command-line networking

是否有一个 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
Run Code Online (Sandbox Code Playgroud)

或者这个(自上而下的方法):

br42
??bond0.42
? ??bond0
?   ??eth0
?   ??eth1
??tap100i0
??tap101i0
br43
??bond0.43
? ??bond0
?   ??eth0
?   ??eth1
??tap100i1
??tap101i1
Run Code Online (Sandbox Code Playgroud)

注意:我不是在寻找产生这种精确输出的工具,而是询问是否有人知道具有类似结果的命令。

Zab*_*ula 5

我在现有实用程序中搜索了一个选项,但我没有找到任何选项。然而,从我的角度来看,所需的功能很有用。所以我做了一个简单的 bash 脚本来解析ip link show命令并打印类似于问题中所需输出的内容:

$ ./nettree.sh -u
eth3
    bond1
       bond0
eth2
    bond0
eth1
    bond0
eth0
lupen3
    bond1
       bond0
lo
lxcbr0
virbr0
veth6404e35
    docker0
Run Code Online (Sandbox Code Playgroud)

我把脚本推到了github:https : //github.com/zabojcampula/show-net-devices-tree