Debe dejar de usar net-tools y la interfaz ioctl arcaica, y comenzar a usar las interfaces modernas de Netlink/sysfs. Tienes nada menos que 5 posibilidades:
- escriba su propio código de interfaz de Netlink
- su propio código NL, en combinación utilizando libmnl (-> ver rtnl-link-dump en ejemplos
- o utilizar librerías autónomas como libnl3
- analizar la salida de texto de
ip -o link
(-o es para obtener una salida destinada al análisis de texto, a diferencia de ifconfig) - o use sysfs y solo mire
/sys/class/net/eth0/address