Starting to get my head around IPv6... For initial testing, I've got a tunnel setup coming into a Raspberry PI running on my LAN.
It's routing my /64 fine, I can ping other IPv6 hosts fine from machines on my LAN using addresses in the /64 network, same in the other direction - I can ping IPv6 addresses beyond my tunnel and router (Raspberry PI).
I've notcied though, if a traceroute to a node behind my tunnel endpoint/router, the traceroute seems to stop there.
[geoff@xenon: ~]# traceroute6 2001:470:XXXX:1175::2000
traceroute to 2001:470:XXXX:1175::2000 (2001:470:1f13:1175::2000), 30 hops max, 80 byte packets
1 2001:4b98:dc0:43::248 (2001:4b98:dc0:43::248) 1.786 ms 1.855 ms 1.956 ms
2 p252-core2-d-ip6.paris.gandi.net (2001:4b98:1f::c2d1:241) 0.635 ms 0.686 ms 0.746 ms
3 20gigabitethernet1-3.core1.ams1.ipv6.he.net (2001:7f8:1::a500:6939:1) 22.858 ms 23.005 ms 22.725 ms
4 10gigabitethernet2-1.core1.par2.he.net (2001:470:0:1b3::2) 21.909 ms 17.621 ms 17.592 ms
5 10gigabitethernet3-1.core1.par1.he.net (2001:470:0:1b0::1) 21.860 ms 22.053 ms 22.032 ms
6 ordns.he.net (2001:470:20::2) 17.162 ms 19.001 ms 21.475 ms
7 MYTUNNEL-1-pt.tunnel.tserv10.par1.ipv6.he.net (2001:470:XXXX:1175::2) 37.097 ms 39.933 ms 39.368 ms
8 * * *
9 * * *
10 * * *
etc
From my raspberry PI, I can sucessfully ping the other nodes accross my LAN via IPv6.
I did read that "ttl 255" needs setting in /etc/network/interfaces - which was already done.
I've also turned off iptables/ip6tables completely, but didn't help
Can anyone offer any pointers as to why the traceroute traffic might never gets past my endpoint?
Not sure if it makes any difference, but on my LAN, I'm using a stateful config (minimal RA, and dhcp6 to allocate IPv6 addresses)
Thanks
Quote from: squiggle on March 19, 2013, 03:20:05 AM[geoff@xenon: ~]# traceroute6 2001:470:XXXX:1175::2000
You made a typo in the IP address. It is supposed to be 2001:470:XXX
Y:1175::2000 not 2001:470:XXX
X:1175::2000. A traceroute to that IP address works for me, when I correct the typo.
Output when I do a traceroute with the typo:
$ traceroute6 2001:470:XXXX:1175::2000
traceroute to 2001:470:XXXX:1175::2000 (2001:470:XXXX:1175::2000), 30 hops max, 80 byte packets
1 2a01:d0:839a:babe:735d:77a7:990d:702c 0.140 ms 0.115 ms 0.141 ms
2 2a01:d0:ffff:39a::1 62.735 ms 63.284 ms 65.573 ms
3 2a01:d0:0:1c::19 63.809 ms 55.846 ms 56.227 ms
4 2001:7f8::1b1b:0:1 92.398 ms 93.200 ms 93.157 ms
5 2001:470:0:21b::2 108.711 ms 107.377 ms 107.411 ms
6 2001:470:0:1b0::1 136.252 ms 136.742 ms 136.697 ms
7 2001:470:20::2 138.433 ms 108.698 ms 109.645 ms
8 2001:470:XXXX:1175::2 120.462 ms 121.514 ms 120.529 ms
9 2001:470:20::2 125.679 ms 146.636 ms 147.205 ms
10 2001:470:XXXX:1175::2 162.424 ms 165.965 ms 165.030 ms
11 2001:470:20::2 170.597 ms 148.794 ms *
12 * * *
13 * * *
14 * * *
15 * * 2001:470:20::2 189.891 ms
16 * * *
17 * * *
18 * * *
19 2001:470:20::2 230.960 ms * *
20 * * *
21 2001:470:20::2 259.875 ms * *
22 * * *
23 2001:470:20::2 283.782 ms 266.605 ms 266.044 ms
24 * * *
25 2001:470:20::2 290.244 ms 288.507 ms 292.082 ms
26 * * *
27 2001:470:20::2 307.082 ms 305.296 ms 307.803 ms
28 2001:470:XXXX:1175::2 326.500 ms * *
29 2001:470:20::2 328.190 ms 329.945 ms 330.874 ms
30 * * *
Output when I do a traceroute with the correct address:
$ traceroute6 2001:470:XXXY:1175::2000
traceroute to 2001:470:XXXY:1175::2000 (2001:470:XXXY:1175::2000), 30 hops max, 80 byte packets
1 2a01:d0:839a:babe:735d:77a7:990d:702c 0.146 ms 0.114 ms 0.140 ms
2 2a01:d0:ffff:39a::1 60.100 ms 60.149 ms 61.851 ms
3 2a01:d0:0:1c::19 62.388 ms 55.615 ms 55.651 ms
4 2001:7f8::1b1b:0:1 90.427 ms 90.476 ms 88.797 ms
5 2001:470:0:21b::2 103.430 ms 102.946 ms 102.972 ms
6 2001:470:0:1b0::1 97.345 ms 97.389 ms 97.382 ms
7 2001:470:20::2 100.995 ms 104.569 ms 107.478 ms
8 2001:470:XXXX:1175::2 133.136 ms 133.093 ms 133.160 ms
9 2001:470:XXXY:1175::2000 133.173 ms 100.867 ms 101.752 ms
That XXXX is me masking my real IP.
Can x exist in an IPv6 address - thought it was hexadecimal only?
Quote from: squiggle on March 19, 2013, 05:24:16 AMThat XXXX is me masking my real IP.
Luckily I was able to spot the typo, even though you masked exactly the part where you made the typo. Most forum users wouldn't even try to spot the problem until you provided the full IP address.
Ahh I get ya...
My routed /64 is 2001:470:1f13:1175::
But tunnel client/server is on 2001:470:1f12......
I'm not trying to traceroute to the tunnel endpoint
[geoff@xenon: ~]# traceroute6 2001:470:1f13:1175::2000
traceroute to 2001:470:1f13:1175::2000 (2001:470:1f13:1175::2000), 30 hops max, 80 byte packets
1 2001:4b98:dc0:43::248 (2001:4b98:dc0:43::248) 1.715 ms 1.859 ms 1.963 ms
2 p252-core2-d-ip6.paris.gandi.net (2001:4b98:1f::c2d1:241) 0.743 ms 0.811 ms 1.018 ms
3 20gigabitethernet1-3.core1.ams1.ipv6.he.net (2001:7f8:1::a500:6939:1) 15.645 ms 15.728 ms 15.656 ms
4 10gigabitethernet2-1.core1.par2.he.net (2001:470:0:1b3::2) 13.324 ms 13.319 ms 14.247 ms
5 10gigabitethernet3-1.core1.par1.he.net (2001:470:0:1b0::1) 13.539 ms 14.263 ms 14.286 ms
6 ordns.he.net (2001:470:20::2) 18.221 ms 20.328 ms 23.015 ms
7 squiggle-1-pt.tunnel.tserv10.par1.ipv6.he.net (2001:470:1f12:1175::2) 48.433 ms 46.810 ms 46.438 ms
8 * * *
9 * * *
etc etc
Works for me through plenty of different networks:traceroute to 2001:470:1f13:1175::2000 (2001:470:1f13:1175::2000), 30 hops max, 80 byte packets
1 2a01:d0:839a:babe:735d:77a7:990d:702c 0.151 ms 0.115 ms 0.140 ms
2 2001:470:20::2 121.203 ms 124.678 ms 127.047 ms
3 2001:470:1f12:1175::2 147.107 ms 141.458 ms 140.560 ms
4 2001:470:1f13:1175::2000 140.571 ms 150.432 ms 150.450 ms
traceroute to 2001:470:1f13:1175::2000 (2001:470:1f13:1175::2000), 30 hops max, 80 byte packets
1 2001:470:28:940:5d75:c1f4:e0a0:f8ec 1.028 ms 0.918 ms 1.400 ms
2 2001:470:27:940::1 60.961 ms 66.120 ms 70.505 ms
3 2001:470:0:11e::1 71.095 ms 44.023 ms 48.994 ms
4 2001:470:0:22f::1 83.367 ms 84.041 ms 80.701 ms
5 2001:470:0:1b3::2 97.220 ms 97.280 ms 97.793 ms
6 2001:470:0:1b0::1 88.560 ms 89.220 ms 85.755 ms
7 2001:470:20::2 94.527 ms 79.103 ms 84.048 ms
8 2001:470:1f12:1175::2 107.480 ms 116.480 ms 115.647 ms
9 2001:470:1f13:1175::2000 117.639 ms 102.847 ms 101.614 ms
traceroute to 2001:470:1f13:1175::2000 (2001:470:1f13:1175::2000), 30 hops max, 80 byte packets
1 2001:470:1f0b:1da2:635a:c32:ae34:df91 0.230 ms 0.132 ms 0.163 ms
2 2001:470:20::2 93.166 ms 95.044 ms 97.632 ms
3 2001:470:1f12:1175::2 118.042 ms 104.733 ms 104.766 ms
4 2001:470:1f13:1175::2000 107.961 ms 107.982 ms 105.382 ms
traceroute to 2001:470:1f13:1175::2000 (2001:470:1f13:1175::2000), 30 hops max, 80 byte packets
1 2a01:4f8:d16:701:9290:4637:e09a:b380 0.833 ms 9.768 ms 9.849 ms
2 2001:470:20::2 31.660 ms 30.051 ms 42.186 ms
3 2001:470:1f12:1175::2 64.087 ms 42.540 ms 42.661 ms
4 2001:470:1f13:1175::2000 42.170 ms 42.318 ms 41.983 ms
traceroute to 2001:470:1f13:1175::2000 (2001:470:1f13:1175::2000), 30 hops max, 80 byte packets
1 2a01:d0:839a:babe:735d:77a7:990d:702c 1.760 ms 1.764 ms 1.768 ms
2 2002:d842:542a::1 99.350 ms 99.367 ms 99.371 ms
3 2001:470:1f12:1175::2 118.972 ms 118.990 ms 118.994 ms
4 2001:470:1f13:1175::2000 118.995 ms 118.999 ms 119.001 ms
But I find that it depends on the type of packets being used in the traceroute. Using ICMPv6 echo request:# traceroute6 -n -I 2001:470:1f13:1175::2000
traceroute to 2001:470:1f13:1175::2000 (2001:470:1f13:1175::2000), 30 hops max, 80 byte packets
1 2a01:d0:839a:babe:735d:77a7:990d:702c 1.738 ms 1.738 ms 1.742 ms
2 2001:470:20::2 79.519 ms 88.301 ms 88.324 ms
3 2001:470:1f12:1175::2 106.456 ms 106.052 ms 106.931 ms
4 2001:470:1f13:1175::2000 107.999 ms 108.494 ms 108.509 ms
And using UDP from the same host:# traceroute6 -n 2001:470:1f13:1175::2000
traceroute to 2001:470:1f13:1175::2000 (2001:470:1f13:1175::2000), 30 hops max, 80 byte packets
1 2a01:d0:839a:babe:735d:77a7:990d:702c 19.310 ms 19.329 ms 19.314 ms
2 2001:470:1f0a:1e45::1 101.105 ms 104.506 ms 107.663 ms
3 2001:470:0:69::1 108.315 ms 109.062 ms 109.053 ms
4 2001:470:0:21b::2 120.678 ms 120.717 ms 120.651 ms
5 2001:470:0:1b0::1 119.734 ms 119.719 ms 119.715 ms
6 2001:470:20::2 120.374 ms 108.837 ms 108.825 ms
7 2001:470:1f12:1175::2 128.999 ms 103.352 ms 104.542 ms
8 * * *
9 * * *
10 * * *
11 * * *
12 * * *
13 * * *
14 * * *
15 * * *
16 * * *
17 * * *
18 * * *
19 * * *
20 * * *
21 * * *
22 * * *
23 * * *
24 * * *
25 * * *
26 * * *
27 * * *
28 * * *
29 * * *
30 * * *
So it looks like either the router or the host itself has a packet filter configured to silently drop UDP packets. Change the packet filter to send an appropriate ICMPv6 error code back when a UDP packet is not accepted, and traceroute should start looking better.
Very helpful!
Certainly gives me areas to look into
Thanks for your time!