Определите, какая из структур addrinfo, возвращаемых getaddrinfo, принадлежит текущей машине
Я звоню getaddrinfo
, Возвращает список совпадающих адресов. Один из них принадлежит машине, с которой был сделан звонок. Как мне определить, какой это?
Если нет способа сделать это, могу ли я что-нибудь сделать, чтобы надежно и точно определить IP-адрес определенного сетевого интерфейса на текущем компьютере?
Если нет переносимого пути, каков специфический для Linux способ?
1 ответ
Решение
Найдена функция, позволяющая перечислять все сетевые интерфейсы и получать информацию о них, включая IP-адрес. Функция getifaddrs, однако обратите внимание, что она не выглядит переносимой. Во всяком случае, это решает мою проблему на данный момент.