Periodicly unroutable address
Shadow Hawkins on Tuesday, 28 July 2009 15:16:28
Hi,
I have my tunnel up, pinging happily from my end to the rest of the IPv6 world (as far as I can see, I am pinging ipv6.google.com).
I have just been allocated my 1st /48 and assigned an address to the ethernet ports of my tunnel server and also to one of my other hosts. Those two devices can happily ping each other, and the tunnel server can ping from its eth0 address happily :
ping6 -I 2a01:348:1ee::1 ipv6.google.com
PING ipv6.google.com(ey-in-x68.google.com) from 2a01:348:1ee::1 : 56 data bytes
64 bytes from ey-in-x68.google.com: icmp_seq=1 ttl=57 time=22.7 ms
64 bytes from ey-in-x68.google.com: icmp_seq=2 ttl=57 time=22.8 ms
64 bytes from ey-in-x68.google.com: icmp_seq=3 ttl=57 time=22.7 ms
so all happy there.
I have setup a static route on the second server to direct all IPv6 traffic to the tunnel servers eth0 address. That server has IPv6 forwarding enabled on all interfaces.
I try this from the other server (without the -I on ping6) and it works for a short while then stops, then sometimes resumes, then stops. Trying to see what I have done wrong I have run tcpdump on the SixXS tunnel filtering for ip6 protocol traffic and am seeing:
cpdump -i sixxs ip6
tcpdump: WARNING: sixxs: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on sixxs, link-type RAW (Raw IP), capture size 96 bytes
14:09:34.429016 IP6 2a01:348:1ee::2 > ey-in-x68.google.com: ICMP6, echo request, seq 29, length 64
14:09:34.451845 IP6 ey-in-x68.google.com > 2a01:348:1ee::2: ICMP6, echo reply, seq 29, length 64
14:09:35.429201 IP6 2a01:348:1ee::2 > ey-in-x68.google.com: ICMP6, echo request, seq 30, length 64
14:09:35.452314 IP6 ey-in-x68.google.com > 2a01:348:1ee::2: ICMP6, echo reply, seq 30, length 64
14:09:36.428697 IP6 2a01:348:1ee::2 > ey-in-x68.google.com: ICMP6, echo request, seq 31, length 64
14:09:36.451828 IP6 cl-584.lon-02.gb.sixxs.net > ey-in-x68.google.com: ICMP6, destination unreachable, unreachable address 2a01:348:1ee::2, length 112
14:09:36.451914 IP6 cl-584.lon-02.gb.sixxs.net > ey-in-x68.google.com: ICMP6, destination unreachable, unreachable address 2a01:348:1ee::2, length 112
14:09:36.451990 IP6 cl-584.lon-02.gb.sixxs.net > ey-in-x68.google.com: ICMP6, destination unreachable, unreachable address 2a01:348:1ee::2, length 112
14:09:36.453880 IP6 ey-in-x68.google.com > 2a01:348:1ee::2: ICMP6, echo reply, seq 31, length 64
14:09:37.428365 IP6 2a01:348:1ee::2 > ey-in-x68.google.com: ICMP6, echo request, seq 32, length 64
Any ideas?
Could this be due to something I have done or omitted?
Help much appreciated.
Graeme
Periodicly unroutable address
Jeroen Massar on Tuesday, 28 July 2009 16:15:35 14:09:36.451828 IP6 cl-584.lon-02.gb.sixxs.net > ey-in-x68.google.com: ICMP6, destination unreachable, unreachable address 2a01:348:1ee::2, length 112
Please use '-n', that avoids ambiguity in what resolves where or not.
The above though tells you that cl-584 (aka your side of the tunnel) does not know where to send packets to 2a01:348:1ee::2 to.
The best thing to do is to monitor the interface below that (the one where you are routing packets to), not the tunnel interface, which is most likely unrelated. Check for ND problems, those might show you what is going on there. Also check if the route is still in place when you see above errors.
Next to that, don't forget to check your firewall, maybe state times out somewhere, you never know.
Periodicly unroutable address
Shadow Hawkins on Tuesday, 28 July 2009 16:34:36
OOPS! sorry about forgetting -n
I twigged it was my end a few minutes afterwards, however still not managed to figure out whats going on. Periodically it works, then for 3 it seems to stop working. If I perform a ping6 from ::1 to ::2 that works fine too.
I have tried adding
route -6 add 2a01:348:1ee::/64 dev eth0
to the tunnel machine too, no joy, have tried switching to a different subnet also (so 2a01:348:1ee:1::/64) again with no joy.
Please forgive the ignorance, but what are ND problems?
Thanks again
Graeme
Periodicly unroutable address
Jeroen Massar on Tuesday, 28 July 2009 16:48:53
ND = Neighbor Discovery aka IPv6 versions of ARP.
Run a tcpdump on the interface and you should see that chatter in the form of ICMPv6 coming by where one host asks the other where they are.
Note btw that you are getting "ICMP6, destination unreachable, unreachable address 2a01:348:1ee::2", which is not "network unreachable"; as such most likely the route is properly in place ("ip monitor ro" might show you changes there) but that really the host is unreachable.
You might have a multicast issue there. How is that host connected to the other one? Cheap switch/Hub? Try "ip link set dev eth0 promisc on", which is what tcpdump probably already does. If you have multicast issues though you might have to do that on both hosts and probably others. Trying a cross-over cable is always a good test to see if that is the problem.
Periodicly unroutable address
Shadow Hawkins on Tuesday, 28 July 2009 17:25:43
It would appear it was 100% my own idiotic fault! doh!
Thanks for your help...
I had removed the link addresses from the eth interfaces. Replacing these has resolved the intermittent problem.
At least I am already learning :)
Sorry for the cockup, and thanks
Graeme
Posting is only allowed when you are logged in. |