我在使用 Cisco 877 和 ipv6 时遇到了一个奇怪的问题。我的 ISP 为我提供了原生的 ipv6 连接,路由器配置了我提供的子网的第一个地址。我的网络上有大约 20 个主机,它们都配置了 IPv6。
每台主机都可以完美访问更广泛的 IPv6 互联网。跟踪路由显示路由器是第一跳,其次是我的 ISP。
真正奇怪的是,路由器无法 ping 通网络上的任何内部主机,并且没有任何内部主机可以直接 ping 通路由器。路由器可以 ping 通任何外部 ipv6 地址,并且它会响应来自外部地址的 IPv6 ping。
为什么是这样?
一些相关的配置位:
no ipv6 source-route
ipv6 unicast-routing
ipv6 cef
ipv6 dhcp pool ipv6pool
ipv6 multicast-routing
ipv6 route ::/0 Dialer1
!
interface Dialer1
description virtual dialer interface
ip address negotiated
ip access-group INTERNET-IN in
ip nat outside
ip virtual-reassembly
encapsulation ppp
dialer pool 1
dialer-group 1
ipv6 enable
ipv6 traffic-filter IPV6-IN in
ppp authentication chap pap callin
ppp chap hostname **
ppp chap password 7 **
no cdp enable
!
end
!
!
interface Vlan1
description internal private VLAN
ip address 192.168.0.1 255.255.255.0
no ip redirects
no ip unreachables
no ip proxy-arp
ip nbar protocol-discovery
ip flow ingress
ip nat inside
ip virtual-reassembly
ip route-cache same-interface
ip tcp adjust-mss 1452
ipv6 address 2001:111:1111::1/64
ipv6 enable
ipv6 nd ra interval 4
ipv6 dhcp server ipv6pool rapid-commit
!
hold-queue 100 out
end
编辑
针对一些提出的评论:
我可以通过 IPv4 ping 路由器,客户端可以从正确的子网中顺利获得自动分配的 IPv6 地址。网络上的一些客户端既有自动分配的 IPv6 地址,也有静态 IPv6 地址,但无论客户端是否具有静态 IPv6 地址,我都看到相同的 ping 行为。
如果我关闭 ipv6 cef,我也会看到同样的行为。
输出sh ipv6 neighbors
:
talkbot#sh ipv6 neighbors
IPv6 Address Age Link-layer Addr State Interface
FE80::21E1:D61:8F7B:EB78 21 0022.1579.d21c STALE Vl1
2001:111:1111:0:646:65FF:FE82:66A3 5 0446.6582.66a3 STALE Vl1
2001:111:1111:0:21E1:D61:8F7B:EB78 119 0022.1579.d21c STALE Vl1
FE80::646:65FF:FE82:66A3 5 0446.6582.66a3 STALE Vl1
2001:111:1111:0:225:B3FF:FEE6:47E2 13 0025.b3e6.47e2 STALE Vl1
FE80::225:B3FF:FEE6:47E2 12 0025.b3e6.47e2 STALE Vl1
2001:111:1111:0:B957:209F:93A9:8699 0 0026.5e45.0b2c STALE Vl1
FE80::20C:29FF:FEAE:A3B1 15 000c.29ae.a3b1 STALE Vl1
2001:111:1111:0:F9CB:6036:495D:535C 0 0022.1579.d21c REACH Vl1
FE80::203:97FF:FE05:C000 - - REACH Di1
2001:111:1111::10 0 000c.29ce.a15d REACH Vl1
2001:111:1111::13 15 000c.29ae.a3b1 STALE Vl1
2001:111:1111::15 3 000c.29b9.0130 STALE Vl1
2001:111:1111::14 42 000c.29b9.7715 STALE Vl1
2001:111:1111::16 3 000c.296f.74aa STALE Vl1
FE80::20C:29FF:FE6F:74AA 3 000c.296f.74aa STALE Vl1
FE80::20C:29FF:FEB9:7715 7 000c.29b9.7715 STALE Vl1
FE80::225:22FF:FEA1:321B 8 0025.22a1.321b STALE Vl1
FE80::20C:29FF:FECE:A15D 0 000c.29ce.a15d DELAY Vl1
FE80::F880:F7D2:A3DF:7BE6 0 0026.5e45.0b2c STALE Vl1
2001:111:1111:0:20C:29FF:FECE:A15D 3 000c.29ce.a15d STALE Vl1
2001:111:1111:0:225:22FF:FEA1:321B 8 0025.22a1.321b STALE Vl1
FE80::20C:29FF:FEB9:130 3 000c.29b9.0130 STALE Vl1
输出sh ipv6 route
talkbot#sh ipv6 route
IPv6 Routing Table - default - 4 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
D - EIGRP, EX - EIGRP external, ND - Neighbor Discovery
O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
S ::/0 [1/0]
via Dialer1, directly connected
C 2001:111:1111::/64 [0/0]
via Vlan1, directly connected
L 2001:111:1111::1/128 [0/0]
via Vlan1, receive
L FF00::/8 [0/0]
via Null0, receive
答案1
这里的问题是,2001:111:1111::/64
两侧有相同的子网(),即 WAN(使用 Dialer1)和 LAN(使用 Vlan1)。
您可以在路由表上看到,如果您想从该子网内的路由器访问主机,它将转到 Dialer1 而不是 Vlan1。
无论如何,您应该能够通过其链路本地()地址从局域网访问路由器fe80
,并且对于邻居缓存中存在的任何主机也同样如此。