某家庭宽带用户CPE设备通过某IPv6隧道服务提供商接入IPv6网络,CPE设备在IPv4 Internet上的地址是114.243.224.254,IPv6隧道服务提供商在IPv4 Internet上的地址是66.220.18.42,向该用户CPE设备分配的隧道接口互联地址是2001:470:c:600::2/64,同时还分配给该用户一个2001:470:d:600::/64的IPv6前缀可以供用户用于CPE设备的LAN接口分配给终端使用。
#
sysname CPE
#
interface GigabitEthernet0/0
ip address 114.243.224.254 255.255.255.0
nat outbound
#
interface GigabitEthernet0/1
ip address 192.168.0.1 255.255.255.0
ipv6 address 2001:470:D:600::1/64
undo ipv6 nd ra halt
#
interface Tunnel0 mode ipv6-ipv4
source GigabitEthernet0/0
destination 66.220.18.42
ipv6 address 2001:470:C:600::2/64
#
ip route-static 0.0.0.0 0 114.243.224.1
ipv6 route-static :: 0 Tunnel0
#
return
某一天用户在上网时发现网络访问缓慢,在CPE设备上display interface,发现与运营商互联的接口双方向都出现了严重拥塞,但是观察其他接口的流量,未发现如此大的流量。
在CPE设备上对与运营商互联的接口做端口镜像抓包,抓包发现在这个接口上出现了大量IPv6overIPv4封装的隧道报文,仔细观察其中被封装的IPv6报文,发现同一个IPv6报文内容在不同的隧道报文中重复出现,但是HopLimit值在连续的几个报文中依次减小,这是路由环路的典型特征。
这些导致路由环路的报文具有如下共同的特征:源地址是2001:470:d:600:82ee:73ff:fe31:cc9c、目的地址是2002:72f3:e0fe::72f3:e0fe。由于目的地址匹配CPE设备本地的IPv6隧道路由表::/0出接口是Tunnel0,所以会以IPv6overIPv4的形式封装成隧道报文并且转发给IPv6隧道服务提供商。该IPv6报文到达IPv6 Internet之后在IPv6 Internet上路由转发,由于目的地址是2002::/16的6to4隧道地址,所以该报文被转发给6to4中继。6to4中继根据目的IPv6地址从第17-48位提取IPv4地址114.243.224.254并封装成6to4隧道报文,再通过IPv4 Internet路由转发给CPE设备。CPE设备收到6to4隧道报文之后,解封装得到IPv6报文,又会继续按照上述方式封装与转发,导致了路由环路的形成。
由于CPE设备不通过6to4自动隧道接入IPv6 Internet,所以可以只接收来自IPv4 Internet的源地址是Tunnel0接口所配destination地址的IPv6overIPv4封装的隧道报文,其他源地址的IPv6overIPv4隧道报文可以直接丢弃。
acl advanced 3000
rule permit 41 source 66.220.18.42 0
rule deny 41
rule permit ip
[CPE-GigabitEthernet0/0] packet-filter 3000 inbound
增加上述配置之后,问题解决。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作