Entonces, lo que estoy buscando es un índice de interfaz (o nombre) pero real.
if_nametoindex(3)y ioctl(2)no parecen ayudarme aquí. Ahora la única forma en que encontré cómo hacer esto es a través de /sys. Permítanme demostrar, por ejemplo, lo que necesito:
# 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
¿Hay alguna manera de hacerlo con una llamada a función o la única es sysfs?

ip link showhace (probablemente usando la API de netlink)/proc/net/vlan/configo/proc/net/vlan/bond0.1007si es una interfaz vlan./sys./proco/sysson más o menos lo mismo en ese sentido. Solo quería comprobar si hay una llamada al sistema para obtener este tipo de información, resulta que no la hay.RTM_GETLINKmensaje y busque elIFLA_LINKatributo en la respuesta.Respuestas:
El comando
ip link showes probablemente lo que quieres. Mostrará el índice frente a la información de la interfaz. Ejemplo a continuación de un sistema con NIC enlazadas.fuente