Код C++ для получения имени всех сетевых интерфейсов, доступных в системах.

Кто-нибудь знает какой-нибудь код C++, чтобы получить имя всего сетевого интерфейса, доступного на компьютере, с проводными или беспроводными типами. Также будет одинаково хорошо, если будут доступны только все имена интерфейсов. Я хочу сделать это с помощью библиотеки ioctl, например,

ioctl(sd, SIOCGIFNAME, &ifr);
strncpy(ifname,ifr.ifr_name,IFNAMSIZ);
printf("Interface name :%s\n",ifname);

на самом деле вышеуказанный способ не работает.

Спасибо


person Alan    schedule 12.05.2011    source источник


Ответы (2)


Попробуйте: man getifaddrs - получить адреса интерфейсов

person e.dan    schedule 12.05.2011

Спасибо. Но я нашел другой способ, то есть прочитать файл /proc/net/dev, чтобы получить список всех интерфейсов в системе.

person Alan    schedule 13.05.2011