Donc ce que je recherche, c'est un index (ou un nom) d'interface mais le vrai.
if_nametoindex(3)
et ioctl(2)
ne semblent pas m'aider ici. Maintenant, la seule façon dont j'ai trouvé comment le faire est via /sys
. Permettez-moi de montrer par exemple ce dont j'ai besoin:
# 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
Existe-t-il un moyen de le faire avec un appel de fonction ou le seul moyen est sysfs
?
/proc/net/vlan/config
ou /proc/net/vlan/bond0.1007
s'il s'agit d'une interface vlan.
/sys
. /proc
ou /sys
sont plus ou moins les mêmes dans ce sens. Je voulais juste vérifier s'il y a un syscall pour obtenir ce genre d'informations, il se trouve que non.
RTM_GETLINK
message et recherchez l' IFLA_LINK
attribut en réponse.
ip link show
fait (probablement en utilisant l'API Netlink)