Ticket ID: SIXXS #9671478 Ticket Status: Remote Problem PoP: gblon03 - Gyron Internet LTD - Limited UK Company (London)
Hop limit wrong
![]()
Packets received by me through my tunnels to gblon03 (T66349 and T72649) have a hop limit one greater than expected.
For example, pinging a machine behind my tunnel from elsewhere:
mas90@moose:~$ ping6 2a00:14f0:e000:1a::2 -t13
PING 2a00:14f0:e000:1a::2(2a00:14f0:e000:1a::2) 56 data bytes
From 2a00:14f0:e000:1a::1 icmp_seq=1 Time exceeded: Hop limit
mas90@moose:~$ ping6 2a00:14f0:e000:1a::2 -t14
PING 2a00:14f0:e000:1a::2(2a00:14f0:e000:1a::2) 56 data bytes
64 bytes from 2a00:14f0:e000:1a::2: icmp_seq=1 ttl=49 time=18.1 ms
i.e. hop limit of >=14 is required to reach my tunnelled network; 13 is rejected by the PoP. This is as expected.
However, here is the second of those two ping packets as captured by tcpdump -v:
18:30:19.128540 IP6 (hlim 2, next-header ICMPv6 (58) payload length: 64) 2001:630:212:267:6c35:902e:e321:6d1a > cl-27.lon-03.gb.sixxs.net: [icmp6 sum ok] ICMP6, echo request, seq 1
"hlim 2" means the hop limit was 2; I'd expect this packet to have a hop limit of 1, since I sent the packet with a hop limit of 1 greater than that which would be rejected by the PoP.
This reliably happens on both my tunnels to gblon03 as tested from a variety of places around the internet. Both my tunnels are 6in4. One uses AICCU and the other is configured manually using Ubuntu's "iface ... inet6 v4tunnel" syntax in /etc/network/interfaces.
A symptom is that traceroutes to destinations which I route onwards from my tunnel endpoint are always missing a hop, for example:
traceroute to 2a00:14f0:e000:801a::2 (2a00:14f0:e000:801a::2) from 2001:630:212:267:6c35:902e:e321:6d1a, 30 hops max, 24 byte packets
1 2001:630:212:267::1 0.876 ms 0.941 ms 0.988 ms
2 2001:630:210:2020::1 1.985 ms 0.986 ms 0.99 ms
3 2001:630:210:24::1 0.989 ms 0.98 ms 0.985 ms
4 2001:630:210:23::2 2.974 ms 0.984 ms 0.98 ms
5 2001:630:0:9000::1 0.975 ms 0.984 ms 0.978 ms
6 2001:630:0:1000:10::1a 0.977 ms 0.98 ms 0.982 ms
7 2001:630:0:1000:10::1 2.979 ms 2.975 ms 2.983 ms
8 2001:630:0:10::155 2.973 ms 2.984 ms 2.979 ms
9 2001:668:0:3::4000:3f1 2.974 ms 2.997 ms 2.963 ms
10 2001:668:0:2::1:1d11 2.978 ms 2.975 ms 7.983 ms
11 2001:668:0:3::4000:592 3.974 ms 3.978 ms 3.982 ms
12 2a00:14f0:1:2::5 3.973 ms 3.977 ms 3.988 ms
13 2a00:14f0:e000:1a::1 3.966 ms 3.98 ms 3.984 ms
14 2a00:14f0:e000:801a::2 18.972 ms 59.948 ms 45.951 ms
Hop 13 is the PoP gblon03. Hop 14 is a host on my LAN, *not* the box on which the tunnel is configured. There should be a hop in between these from my tunnel box (2a00:14f0:e000:1a::2).
Hop limit wrong
Packets received by me through my tunnels to gblon03 (T66349 and T72649) have a hop limit one greater than expected.
Asymmetric paths can cause this, nothing much we can do about as that happens in the Internet.
|