그래서 내가 찾고 있는 것은 인터페이스 색인(또는 이름)이지만 실제적인 것입니다. 나에게 도움이되지 않는 if_nametoindex(3)
것 같습니다 ioctl(2)
. 이제 이 작업을 수행하는 방법을 찾은 유일한 방법은 다음과 같습니다 /sys
.
# cat /sys/class/net/bond0.1007/ifindex
26
# cat /sys/class/net/bond0.1007/iflink
23 <-- I need either this or a reference to bond0
# cat /sys/class/net/bond0/ifindex
23
함수 호출을 통해 이를 수행할 수 있는 방법이 있습니까, 아니면 유일한 방법입니까 sysfs
?
답변1
이 명령이 ip link show
원하는 것일 수 있습니다. 인터페이스 정보 앞에 색인이 표시됩니다. 다음 예는 본딩된 NIC가 있는 시스템의 예입니다.
# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9214 qdisc mq master bond0 portid 000f53000000 state UP mode DEFAULT qlen 1000
link/ether 00:0f:53:00:00:00 brd ff:ff:ff:ff:ff:ff
3: eth0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9214 qdisc mq master bond0 portid 000f53000001 state UP mode DEFAULT qlen 1000
link/ether 00:0f:53:00:00:00 brd ff:ff:ff:ff:ff:ff
4: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 9214 qdisc noqueue state UP mode DEFAULT qlen 1000
link/ether 00:0f:53:00:00:00 brd ff:ff:ff:ff:ff:ff