这是inet_pton与IPv6的错误吗?

时间:2011-01-27 22:52:49

标签: c ubuntu ipv6

当尝试将Facebook的数字IP地址解析为测试2620:0:1cfe:face:b00c::3:时,如果我将终止0从地址inet_pton() bar切掉。如果我把它放在一切工作上。

运行ubuntu 9.10:

rc = inet_pton(AF_INET6, "2620:0:1cfe:face:b00c::3:0", &ip); -> OK
rc = inet_pton(AF_INET6, "2620:0:1cfe:face:b00c::3:", &ip); -> returns -2

ping6 -n www.v6.facebook.com返回没有尾随0的IP地址。

1 个答案:

答案 0 :(得分:2)

看来,ping是一个很好的智慧,在IP地址之后添加一个冒号,如下所示:

PING maclawran.ca (173.230.128.18) 56(84) bytes of data.
64 bytes from ns.maclawran.ca (173.230.128.18): icmp_seq=1 ttl=51 time=50.3 ms

当然,如果你正在ping一个IPv6地址,它已经有很多冒号:

PING 2620:0:1cfe:face:b00c::3(2620:0:1cfe:face:b00c::3) 56 data bytes
64 bytes from 2620:0:1cfe:face:b00c::3: icmp_seq=1 ttl=52 time=9.44 ms
======================================^ << THANKS PING