Я не знаю ни одной системы Linux, имеющей интерфейс обратной связи, кроме lo
. Я полагаюсь на это соглашение об именах, если я пишу системный скрипт, но не при написании переносимой программы. Например loopback в OSX это lo0
.
Надежным способом в C является вызов SIOCGIFCONF
ioctl
в сокете, итерация по интерфейсам, вызов SIOCGIFFLAGS
ioctl
для каждого и проверка, на каких интерфейсах установлен флаг IFF_LOOPBACK
(см. /usr/include/linux/if.h
).
SIOCGIFCONF
также даст вам имена интерфейсов.