Ваш вопрос может быть неточным, но я не уверен, почему все ломают ваши отбивные.
Я думаю, что вы спрашиваете основы, в случае чего вы, вероятно, хотите, это getifaddrs . На странице man есть небольшой пример программы.
Вы также можете получить похожую информацию, используя опцию SIOCGIFCONF с ioctl (). Вот пример кода здесь и в Интернете.
Если вы будете искать эти и подобные термины, вы обнаружите, что этот вопрос уже задавался в различных формах. Тебе нужно немного покопаться.
Также обратите внимание, что они не предоставят вам общедоступный IP-адрес вашей сети, если вы находитесь за NAT.