我正在使用ioctl()系统调用prgramtically分配ipv6地址。 我想知道是否有办法,我可以发现分配的ip是暂定的/重复的吗?
感谢。
答案 0 :(得分:1)
主持人:使用getifaddrs()
枚举接口。
(修改)您似乎需要在sysctl(NET_IPV6_OPT_DAD_ENABLE)
之前致电getifaddrs()
吗?
http://lwn.net/Articles/218597/
网络:发送ICMP ping是DHCP服务器使用的典型但非万无一失的方法。
假设您正在设置IP,那么您正在实施一种DHCP形式,并且您可以控制该段的所有地址。否则,只需使用链接本地范围已有的唯一地址。
答案 1 :(得分:1)
答案 2 :(得分:0)
获取地址状态的一种方法是通过RTM_GETADDR消息使用rtnetlink库,该消息检索包含ifa_flags的ifaddrmsg结构。请查看此处的手册页以获取信息:
http://man7.org/linux/man-pages/man7/rtnetlink.7.html
flags和ifaddrmsg结构显示在if_addr.h中:
https://github.com/torvalds/linux/blob/master/include/uapi/linux/if_addr.h