我想在Linux系统上获取IPV6 IP地址。我正在使用以下命令
ifconfig eth0 | grep "inet6 addr" | awk '{print $3}'
请建议是否需要进行任何改进。 我还想检查IPV6 IP地址是否不等于0:0:0:0:0:0:0:1
怎么办?
感谢。 Dnyanesh。
答案 0 :(得分:2)
IPv6地址可以用几种方式表示;根据几个规则缩写(压缩)。我建议使用命令行ipv6calc
工具让它解释地址并使用该输出。例如:
ifconfig eth0 | grep "inet6 addr" | awk '{print $3}' | \
ipv6calc --addr_to_fulluncompressed
fe80:0000:0000:0000:dead:beaf:dead:beef/64
我发现这个--addr_to_fulluncompressed
选项对于非常可靠地比较地址非常有用。
另一方面,您可以使用--out ipv6addrtype
直接检查IPv6地址类型,使用loopback
的grep检查IPv6地址类型,但在我的安装中,由于某种原因,它看起来不起作用。