getaddrinfo () возвращает только :: 1 в качестве адреса IPV6, - PullRequest
1 голос
/ 16 ноября 2009

Я использую getaddrinfo (), чтобы вернуть все назначенные IP-адреса (как IPv4, так и IPv6) для моей локальной машины. Я вижу, что в XP getaddrinfo () возвращает только: 1

(Я установил стек IPV6 на машине с 2 XP, настроил адрес IPV6 и отправил эхо-запрос на оба узла. Они работают нормально. Я проверяю, все ли Ipconfig работают нормально. )

Ответы [ 3 ]

3 голосов
/ 24 ноября 2009

Я считаю, что Гонсало на правильном пути. :: 1 - сокращение от localhost, насколько я понимаю. , , Почти в каждом случае IPV6 localhost :: 1 появляется первым при переборе возвращаемого списка. , .

0 голосов
/ 13 августа 2010

Я бы посоветовал держаться подальше от конфигураций с двумя стеками в Windows XP и 2003. Стеки просто не подходят друг другу. Если вы хотите IPv6, используйте Windows 2008 R2 или Windows 7.

0 голосов
/ 09 января 2010

Ну, в адресе ::1 (или, точнее, в любом адресе, который содержит двойное двоеточие) двойное двоеточие расширяется до количества нулевых битов, необходимых для дополнения адреса до полной длины, поэтому расширенная версия выглядит как 0000:0000:0000:0000:0000:0000:0000:0001.

В ipv6 это единственный адрес, который определенно определен как адрес обратной связи (в отличие от ipv4, где вы получаете 127.0.0.0/8 для этих целей).

(Вы уверены, что на самом деле перебираете результат, а не просто проверяете первый элемент связанного списка?)

...