[P&AM Lab] Получение IP адреса
LonelyRuyK
Lonely.RuyK на mail.ru
Чт Июн 23 02:47:36 MSK 2011
Эксперементирую с сокетами. Немного запутался с тем как программе получить
интернет адрес машины на которой она запускается. Пробовал gethostname а затем
gethostbyname, возвращается только адрес локальной сети(127.0.1.1) Затем
пытался воспользоваться функцией getifaddrs, она почему-то сваливалась в
сегментацию(даже тот кусок кода что приведён в ман странице к функции).
Размышления и гугл привели к мысли либо использовать функцию system(),
вызывать ifconfig и вычленять из него адрес, либо то же самое делать
fork/exec'ом, либо брать IP адреса из /proc/net/route/. Ещё нашёл способ когда
создаётcя udp сокет, коннектится к какому-нибудь адресу и затем вызывается
getsockname. Но всё это выглядит как-то сложно. Скажите пожалуйста есть ли
методы проще?
Подробная информация о списке рассылки Lab