Was ich also suche, ist ein Schnittstellenindex (oder Name), aber der echte.
if_nametoindex(3)
und ioctl(2)
scheinen mir hier nicht zu helfen. Jetzt habe ich nur noch herausgefunden, wie das geht /sys
. Lassen Sie mich am Beispiel zeigen, was ich brauche:
# 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
Gibt es eine Möglichkeit, dies mit einem Funktionsaufruf zu tun, oder ist die einzige Möglichkeit sysfs
?
/proc/net/vlan/config
oder /proc/net/vlan/bond0.1007
ob es sich um eine VLAN-Schnittstelle handelt.
/sys
. /proc
oder /sys
sind in diesem Sinne mehr oder weniger gleich. Ich wollte nur überprüfen, ob es einen Systemaufruf gibt, um diese Art von Informationen zu erhalten. Es stellt sich heraus, dass dies nicht der Fall ist.
RTM_GETLINK
Nachricht ausgeben und als IFLA_LINK
Antwort nach Attributen suchen .
ip link show
(wahrscheinlich mit der Netlink-API)