View previous topic :: View next topic |
Author |
Message |
bendis n00b
Joined: 06 Nov 2002 Posts: 15
|
Posted: Wed May 05, 2004 2:45 pm Post subject: IPv6 problem |
|
|
Hi,
I was playing with IPv6 and encountered the following problem:
The box has a 2.6.5 kernel with IPv6 enabled (built-in, no modules). IPv6 is also enabled in /etc/rc.conf. The box has six physical interfaces: eth0, eth1, eth2, wlan0, wlan1, wlan2 and two loopback interfaces: lo and dummy0. All interfaces have a link-local IPv6 address assigned:
Code: |
1: lo: <LOOPBACK,UP> mtu 16436
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST,UP> mtu 1500 qlen 1000
inet6 fe80::260:b3ff:fe6d:9114/64 scope link
valid_lft forever preferred_lft forever
4: wlan1: <BROADCAST,MULTICAST,UP> mtu 1500 qlen 1000
inet6 fe80::260:b3ff:fe6b:6b7f/64 scope link
valid_lft forever preferred_lft forever
5: wlan2: <BROADCAST,MULTICAST,UP> mtu 1500 qlen 1000
inet6 fe80::260:b3ff:fe6b:96d6/64 scope link
valid_lft forever preferred_lft forever
6: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qlen 1000
inet6 fe80::260:b3ff:fe1c:2a53/64 scope link
valid_lft forever preferred_lft forever
7: eth1: <BROADCAST,MULTICAST,UP> mtu 1500 qlen 1000
inet6 fe80::20d:87ff:fe9b:68ab/64 scope link
valid_lft forever preferred_lft forever
8: dummy0: <BROADCAST,NOARP,UP> mtu 1500
inet6 fe80::200:ff:fe00:0/64 scope link
valid_lft forever preferred_lft forever
9: eth2: <BROADCAST,MULTICAST,UP> mtu 1500 qlen 1000
inet6 fe80::250:fcff:fef4:b2e5/64 scope link
valid_lft forever preferred_lft forever
|
The following command should show all IPv6 interfaces (at least ::1) on a link:
Code: |
ping6 -I <iface> ff02::1
|
This works for on dummy0 and eth2 but not on any other interface! Pinging eth0 (and other ifaces) just shows no replies. Moreover, the following record appears in IPv6 neighborhood:
Code: |
router-bart root # ip -6 neigh show dev eth0
router-bart root # ping6 -I eth0 ff02::1
PING ff02::1(ff02::1) from fe80::260:b3ff:fe1c:2a53 eth0: 56 data bytes
--- ff02::1 ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 3999ms
router-bart root # ip -6 neigh show dev eth0
fe80::260:b3ff:fe1c:2a53 nud incomplete
fe80::260:b3ff:fe1c:2a4b nud failed
|
This is quite weird because fe80::260:b3ff:fe1c:2a53 is our local address. The address fe80::260:b3ff:fe1c:2a4b is an address of another IPv6-enabled box on eth0. Tcpdump while pigning eth0 is:
Code: |
router-bart root # tcpdump -i eth0 ip6
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
16:41:36.731625 fe80::260:b3ff:fe1c:2a53 > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
16:41:36.731652 fe80::260:b3ff:fe1c:2a53 > ip6-allnodes: icmp6: echo request seq 1 [hlim 1]
16:41:36.737242 fe80::260:b3ff:fe1c:2a4b > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
16:41:36.737330 fe80::260:b3ff:fe1c:2a53 > fe80::260:b3ff:fe1c:2a4b: icmp6: neighbor adv: tgt is fe80::260:b3ff:fe1c:2a53
16:41:36.739034 fe80::260:b3ff:fe1c:2a4b > fe80::260:b3ff:fe1c:2a53: icmp6: echo reply seq 1
16:41:37.730552 fe80::260:b3ff:fe1c:2a53 > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
16:41:37.730784 fe80::260:b3ff:fe1c:2a53 > ip6-allnodes: icmp6: echo request seq 2 [hlim 1]
16:41:37.732767 fe80::260:b3ff:fe1c:2a4b > fe80::260:b3ff:fe1c:2a53: icmp6: echo reply seq 2
16:41:38.730376 fe80::260:b3ff:fe1c:2a53 > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
16:41:38.730594 fe80::260:b3ff:fe1c:2a53 > ip6-allnodes: icmp6: echo request seq 3 [hlim 1]
16:41:38.732602 fe80::260:b3ff:fe1c:2a4b > fe80::260:b3ff:fe1c:2a53: icmp6: echo reply seq 3
16:41:39.730228 fe80::260:b3ff:fe1c:2a53 > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
16:41:39.730438 fe80::260:b3ff:fe1c:2a53 > ip6-allnodes: icmp6: echo request seq 4 [hlim 1]
16:41:39.739516 fe80::260:b3ff:fe1c:2a4b > fe80::260:b3ff:fe1c:2a53: icmp6: echo reply seq 4
16:41:40.730027 fe80::260:b3ff:fe1c:2a53 > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
16:41:40.730285 fe80::260:b3ff:fe1c:2a53 > ip6-allnodes: icmp6: echo request seq 5 [hlim 1]
16:41:40.732514 fe80::260:b3ff:fe1c:2a4b > fe80::260:b3ff:fe1c:2a53: icmp6: echo reply seq 5
16:41:41.729852 fe80::260:b3ff:fe1c:2a53 > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
16:41:41.735842 fe80::260:b3ff:fe1c:2a53 > fe80::260:b3ff:fe1c:2a4b: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a4b
16:41:41.737565 fe80::260:b3ff:fe1c:2a4b > fe80::260:b3ff:fe1c:2a53: icmp6: neighbor adv: tgt is fe80::260:b3ff:fe1c:2a4b
16:41:42.729705 fe80::260:b3ff:fe1c:2a53 > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
16:41:42.735666 fe80::260:b3ff:fe1c:2a53 > fe80::260:b3ff:fe1c:2a4b: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a4b
16:41:42.737291 fe80::260:b3ff:fe1c:2a4b > fe80::260:b3ff:fe1c:2a53: icmp6: neighbor adv: tgt is fe80::260:b3ff:fe1c:2a4b
16:41:43.729813 fe80::260:b3ff:fe1c:2a53 > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
16:41:43.735765 fe80::260:b3ff:fe1c:2a53 > fe80::260:b3ff:fe1c:2a4b: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a4b
16:41:43.737711 fe80::260:b3ff:fe1c:2a4b > fe80::260:b3ff:fe1c:2a53: icmp6: neighbor adv: tgt is fe80::260:b3ff:fe1c:2a4b
16:41:44.729328 fe80::260:b3ff:fe1c:2a53 > ff02::1:ff1c:2a53: icmp6: neighbor sol: who has fe80::260:b3ff:fe1c:2a53
27 packets captured
28 packets received by filter
0 packets dropped by kernel
|
On the other hand, pinging eth2 is ok:
Code: |
router-bart root # ip -6 neigh show dev eth2
router-bart root # ping6 -I eth2 ff02::1
PING ff02::1(ff02::1) from fe80::250:fcff:fef4:b2e5 eth2: 56 data bytes
64 bytes from ::1: icmp_seq=1 ttl=64 time=0.087 ms
64 bytes from ::1: icmp_seq=2 ttl=64 time=0.077 ms
--- ff02::1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.077/0.082/0.087/0.005 ms
router-bart root # ip -6 neigh show dev eth2
|
What is the problem? Why it works on one interface and not another? I have another box with the same kernel, glibc, portage tree and everything works fine...
Please help, thanks! |
|
Back to top |
|
|
bendis n00b
Joined: 06 Nov 2002 Posts: 15
|
Posted: Wed May 05, 2004 2:58 pm Post subject: |
|
|
Another interesting thing - when pinging the eth0 link from remote gentoo box where everything works fine
Code: |
router-hell root # ping6 -I eth0 ff02::1
PING ff02::1(ff02::1) from fe80::260:b3ff:fe1c:2a4b eth0: 56 data bytes
64 bytes from ::1: icmp_seq=1 ttl=64 time=0.084 ms
64 bytes from ::1: icmp_seq=2 ttl=64 time=0.079 ms
64 bytes from ::1: icmp_seq=3 ttl=64 time=0.075 ms
--- ff02::1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.075/0.079/0.084/0.008 ms
|
the following lines appear in kern.log at the problem box:
Code: |
May 5 16:56:51 router-bart icmpv6_send: no reply to icmp error
May 5 16:56:51 router-bart icmpv6_send: no reply to icmp error
May 5 16:56:56 router-bart icmpv6_send: no reply to icmp error
...
|
|
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|