linux的ipv6配置查看排错

来源:互联网 发布:windows ios开发 编辑:程序博客网 时间:2024/06/05 04:33

linux系下面的ipv6使用

一:查看是否内核模块是否支持

#lsmod|grep v6

查看是否有文件/proc/net/if_inet6
#ping6 ::1

不支持可以动态加载,再不行就要编译内核了

#modprobe ipv6


二:查看ipv6信息

(1)查看ipv6地址

#ifconfig

注释:里面的inet6 addr:后面就是ipv6地址

可以使用只显示ipv6地址

#ifconfig |grep -E '(Link|inet6)'

不显示私网ipv6地址

#ifconfig |grep -E '(Link|inet6)'|grep -v "Scope:Link"

(2)查看所有的“路由表”

#ip -6 rule

(3)查看不同的路由表

1)查看main表

#ip -6 route

#ip -6 route sh table main

2)查看local和default表

#ip -6 route sh table local

#ip -6 route sh table default


#ip route append default via 192.168.1.1 table default


三:添加ipv6地址和网关

(1)添加ipv6地址,下面两条同样功能

#ifconfig ETH1 add 2001:250:212:2::2/64

#ifconfig ETH1 inet6 2001:250:212:2::2/64

删除

#ifconfig ETH1 del 2001::2/64

(2)添加网关到不同的表,

#ip -6 route append default via 2001:250:212:2::1 table default

#ip -6 route append default via 2001:250:212:2::1 table main

#ip -6 route add default via 2001:250:212:2::1 table default

#ip -6 route add default via 2001:250:212:2::1 table main

删除

#ip -6 route del default via 2001:250:212:2::1 table default

#ip -6 route del default via 2001:250:212:2::1 table main

(3)配置隧道

 

分别激活Host1和Host2的自动隧道sit0,使双方可以通过IPv4 兼容的IPv6 地址连通,然后激活隧道sit1,使双方可以通过可聚集全局单播IPv6地址通信。具体命令如下

Host1:

[root @ipv6/root] # ifconfig sit0 up

[root @ipv6/root] # ifconfig sit0 inet6 tunnel : : 202.194.67.138

[root @ipv6/root] # ifconfig sit1 up

[root @ipv6/root] # route -A inet6 add 2001:250:5802:1:203:ffff:fe2b:af01/48 dev sit1

Host2:

[root @ipv6/root] # ifconfig sit0 up

[root @ipv6/root] # ifconfig sit0 inet6 tunnel : : 202.194.68.138

[root @ipv6/root] # ifconfig sit1 up

[root @ipv6/root] # route -A inet6 add 2001:250:5802:2:210:dcff:fe29:af07/48 dev sit1

四:检测排错

(1),使用tcpdump转包看ipv6数据包

#tcpdump -t -n -i any -s 512 -vv ip6 or proto ipv6

注释:

proto ipv6: filters tunneled IPv6-in-IPv4 traffic

'-i any':捕获所有接口的数据。也可以之捕获固定接口 比如ETH1,LAN2等。

"-s 512": 增加捕获限定为512 bytes.

"-vv": 详细列印.

"-n": 不将地址转换成名称,在名称服务有问题时可以用到.

(2)测试,可以使用google的DNS服务器的ipv6地址做测试。

#ping6 2001:4860:4860::8888

  • 2001:4860:4860::8888
  • 2001:4860:4860::88
(3)查看到某个ipv6地址的的数据包从哪个接口出去的,下一跳。路由信息,

ip -6 route get 2001:4860:4860::8888