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/configoder /proc/net/vlan/bond0.1007ob es sich um eine VLAN-Schnittstelle handelt.
/sys. /procoder /syssind 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_GETLINKNachricht ausgeben und als IFLA_LINKAntwort nach Attributen suchen .
ip link show(wahrscheinlich mit der Netlink-API)