Dear Luca,

Could you provide us the interface configuration of your router and client (ifconfig -a)?

Thanks

Albert

On 09/20/2013 04:56 PM, Luca Ermidoro wrote:
Hi,

I'm getting a weird MTU problem while using IPv6 and I hope someone will be so kind to give me some hints on where the issue is coming from.

If I do a 1300 bytes ping from a client to an IPv4 address, everything works correctly. Viceversa if I do the same ping to an IPv6 address, the client doesn't get the echo-reply back due to a strange behaviour of the router.



Here you can see the IPv4 and IPv6 pings with the related tcpdumps and lispd debugs:

-------------------------------------------------------------------------------------------------------------------------------------------
                IPv4
-------------------------------------------------------------------------------------------------------------------------------------------
# ping -c 2 -s 1300 153.16.3.1
PING 153.16.3.1 (153.16.3.1) 1300(1328) bytes of data.
1308 bytes from 153.16.3.1 <http://153.16.3.1>: icmp_req=1 ttl=242 time=145 ms 1308 bytes from 153.16.3.1 <http://153.16.3.1>: icmp_req=2 ttl=242 time=145 ms

--- 153.16.3.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 145.189/145.582/145.975/0.393 ms

-------------------------------------------------------------------------------------------------------------------------------------------
client's tcpdump

16:19:03.281849 IP 153.16.51.66 > 153.16.3.1 <http://153.16.3.1>: ICMP echo request, id 26135, seq 1, length 1308 16:19:03.427803 IP 153.16.3.1 > 153.16.51.66 <http://153.16.51.66>: ICMP echo reply, id 26135, seq 1, length 1308 16:19:04.282942 IP 153.16.51.66 > 153.16.3.1 <http://153.16.3.1>: ICMP echo request, id 26135, seq 2, length 1308 16:19:04.428092 IP 153.16.3.1 > 153.16.51.66 <http://153.16.51.66>: ICMP echo reply, id 26135, seq 2, length 1308

-------------------------------------------------------------------------------------------------------------------------------------------
router's tcpdump

16:19:03.143499 IP 153.16.51.66 > 153.16.3.1 <http://153.16.3.1>: ICMP echo request, id 26135, seq 1, length 1308 16:19:03.288922 IP 153.16.3.1 > 153.16.51.66 <http://153.16.51.66>: ICMP echo reply, id 26135, seq 1, length 1308 16:19:04.144576 IP 153.16.51.66 > 153.16.3.1 <http://153.16.3.1>: ICMP echo request, id 26135, seq 2, length 1308 16:19:04.289184 IP 153.16.3.1 > 153.16.51.66 <http://153.16.51.66>: ICMP echo reply, id 26135, seq 2, length 1308

-------------------------------------------------------------------------------------------------------------------------------------------
router's lispd debug

DEBUG-3: Received packet in the tun buffer
DEBUG-3: OUTPUT: Orig src: 153.16.51.66 | Orig dst: 153.16.3.1

DEBUG-3: lookup_map_cache_node: The entry 153.16.3.1 is not found in the map cache
DEBUG: No map cache retrieved for eid 153.16.3.1
DEBUG-2: Added map cache entry for EID: 153.16.3.1/32 <http://153.16.3.1/32> DEBUG: Sent Map-Request packet for 153.16.3.1/32 <http://153.16.3.1/32> to 217.8.98.46 <http://217.8.98.46>: Encap: Y, Probe: N, SMR: N, SMR-inv: N . Nonce: 0x73043464-0x777d3d73 DEBUG-3: select_src_rmt_locators_from_balancing_locators_vec: src EID: 153.16.51.64, rmt EID: 0.0.0.0, protocol: 1, src port: 0 , dst port: 0 --> src RLOC: 217.133.0.249, dst RLOC: 217.8.98.33
DEBUG-3: OUTPUT: Encap src: 217.133.0.249 | Encap dst: 217.8.98.33

DEBUG-3: Fordwarded eid 153.16.3.1 to petr
DEBUG-3: INPUT (4341): Inner src: 153.16.3.1 | Inner dst: 153.16.51.66
DEBUG-3: Received IPv4 packet in the control input buffer (4342)
DEBUG-2: Received a LISP control message
DEBUG: Received a LISP Map-Reply message
DEBUG-2: process_map_reply: Nonce of the Map Reply is: 0x73043464-0x777d3d73 DEBUG-2: Added map cache entry for EID: 153.16.3.0/24 <http://153.16.3.0/24> DEBUG-2: EID prefix of the map cache entry 153.16.3.1/32 <http://153.16.3.1/32> changed to 153.16.3.0/24 <http://153.16.3.0/24>.
DEBUG-2:   Activating map cache entry 153.16.3.0/24 <http://153.16.3.0/24>
DEBUG-2: pkt_process_rloc_afi: LCAF address is not supported in locators
DEBUG-2: Completed processing of LISP control message
DEBUG-3: Received packet in the tun buffer
DEBUG-3: OUTPUT: Orig src: 153.16.51.66 | Orig dst: 153.16.3.1

DEBUG-3: select_src_rmt_locators_from_balancing_locators_vec: src EID: 153.16.51.64, rmt EID: 0.0.0.0, protocol: 1, src port: 0 , dst port: 0 --> src RLOC: 217.133.0.249, dst RLOC: 217.8.98.33
DEBUG-3: OUTPUT: Encap src: 217.133.0.249 | Encap dst: 217.8.98.33

DEBUG-3: Fordwarded eid 153.16.3.1 to petr
DEBUG-3: INPUT (4341): Inner src: 153.16.3.1 | Inner dst: 153.16.51.66
-------------------------------------------------------------------------------------------------------------------------------------------


-------------------------------------------------------------------------------------------------------------------------------------------
                IPv6
-------------------------------------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------------------------------------------------
client's tcpdump

16:33:10.763514 IP6 2610:d0:217a::2 > 2610:d0:1103::1: ICMP6, echo request, seq 1, length 1308 16:33:11.770118 IP6 2610:d0:217a::2 > 2610:d0:1103::1: ICMP6, echo request, seq 2, length 1308

-------------------------------------------------------------------------------------------------------------------------------------------
router's tcpdump

16:33:10.586302 IP6 2610:d0:217a::2 > 2610:d0:1103::1: ICMP6, echo request, seq 1, length 1308 16:33:10.727117 IP6 2610:d0:1103::1 > 2610:d0:217a::2: ICMP6, echo reply, seq 1, length 1308 16:33:10.727234 IP6 ::127 > 2610:d0:1103::1: ICMP6, packet too big, mtu 1280, length 1240 16:33:11.592876 IP6 2610:d0:217a::2 > 2610:d0:1103::1: ICMP6, echo request, seq 2, length 1308 16:33:11.727112 IP6 2610:d0:1103::1 > 2610:d0:217a::2: ICMP6, echo reply, seq 2, length 1308 16:33:11.727230 IP6 ::127 > 2610:d0:1103::1: ICMP6, packet too big, mtu 1280, length 1240

-------------------------------------------------------------------------------------------------------------------------------------------
router's lispd debug

DEBUG-3: Received packet in the tun buffer
DEBUG-3: OUTPUT: Orig src: 2610:d0:217a::2 | Orig dst: 2610:d0:1103::1

DEBUG-3: select_src_rmt_locators_from_balancing_locators_vec: src EID: 2610:d0:217a::, rmt EID: 0.0.0.0, protocol: 58, src port: 0 , dst port: 0 --> src RLOC: 217.133.0.249, dst RLOC: 217.8.98.33
DEBUG-3: OUTPUT: Encap src: 217.133.0.249 | Encap dst: 217.8.98.33

DEBUG-3: Fordwarded eid 2610:d0:1103::1 to petr
DEBUG-3: INPUT (4341): Inner src: 2610:d0:1103::1 | Inner dst: 2610:d0:217a::2
DEBUG-3: Received packet in the tun buffer
DEBUG-3: OUTPUT: Orig src: ::127 | Orig dst: 2610:d0:1103::1

DEBUG-3: The entry ::127 is not a local EID
DEBUG-2: fordward_native: No output interface for afi 10
DEBUG-3: Received packet in the tun buffer
DEBUG-3: OUTPUT: Orig src: 2610:d0:217a::2 | Orig dst: 2610:d0:1103::1

DEBUG-3: select_src_rmt_locators_from_balancing_locators_vec: src EID: 2610:d0:217a::, rmt EID: 0.0.0.0, protocol: 58, src port: 0 , dst port: 0 --> src RLOC: 217.133.0.249, dst RLOC: 217.8.98.33
DEBUG-3: OUTPUT: Encap src: 217.133.0.249 | Encap dst: 217.8.98.33

DEBUG-3: Fordwarded eid 2610:d0:1103::1 to petr
DEBUG-3: INPUT (4341): Inner src: 2610:d0:1103::1 | Inner dst: 2610:d0:217a::2
DEBUG-3: Received packet in the tun buffer
DEBUG-3: OUTPUT: Orig src: ::127 | Orig dst: 2610:d0:1103::1

DEBUG-3: The entry ::127 is not a local EID
DEBUG-2: fordward_native: No output interface for afi 10
-------------------------------------------------------------------------------------------------------------------------------------------





From what I can see, the XTR is getting the reply from the other end-point but it considers the reply too big and rejects it.

I cannot understand two things:

(1) Where does that 1280 mtu comes from?
(2) Perhaps I'm reading the log in the wrong way, but it seems that the ICMP6 packet too big is never sent to the other end-point.

Please let me know if you need any other information.

Thanks in advance,

Luca










Details:

- I'm using the latest GIT version of lispmob
- Here are some outputs:

root@rtr-ipv6:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 <http://127.0.0.1/8> scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:e0:c5:45:6e:1f brd ff:ff:ff:ff:ff:ff
inet 153.16.51.65/28 <http://153.16.51.65/28> brd 153.16.51.79 scope global eth0
    inet6 2610:d0:217a::1/48 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::2e0:c5ff:fe45:6e1f/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 00:e0:c5:45:6e:e7 brd ff:ff:ff:ff:ff:ff
4: dummy0: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether be:5d:67:75:ea:34 brd ff:ff:ff:ff:ff:ff
    inet6 fd01::1/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::bc5d:67ff:fe75:ea34/64 scope link
       valid_lft forever preferred_lft forever
5: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc pfifo_fast state UNKNOWN qlen 3
    link/ppp
inet 217.133.0.249 peer 213.205.53.77/32 <http://213.205.53.77/32> scope global ppp0 8: lispTun0: <POINTOPOINT,UP,LOWER_UP> mtu 1440 qdisc pfifo_fast state UNKNOWN qlen 500
    link/none
    inet 127.0.0.127/32 <http://127.0.0.127/32> scope global lispTun0
    inet6 ::127/128 scope global
       valid_lft forever preferred_lft forever

-------------------------------------------------------------------------------------------------------------------------------------------

root@rtr-ipv6:~# ip route
0.0.0.0/1 <http://0.0.0.0/1> dev lispTun0 proto static src 217.133.0.249
default dev ppp0  proto static
128.0.0.0/1 <http://128.0.0.0/1> dev lispTun0 proto static src 217.133.0.249 153.16.51.64/28 <http://153.16.51.64/28> dev eth0 proto kernel scope link src 153.16.51.65
213.205.53.77 dev ppp0  proto kernel  scope link  src 217.133.0.249

-------------------------------------------------------------------------------------------------------------------------------------------

root@rtr-ipv6:~# ip -6 route
::127 dev lispTun0  proto kernel  metric 256
2610:d0:217a::/48 dev eth0  proto kernel  metric 256
::/1 dev lispTun0  proto static  metric 512
fd01::/64 dev dummy0  proto kernel  metric 256
fe80::/64 dev eth0  proto kernel  metric 256
fe80::/64 dev dummy0  proto kernel  metric 256
8000::/1 dev lispTun0  proto static  metric 512



--
Albert López
CCABA System Administrator
Universitat Politècnica de Catalunya
Telf: 93 4017182

Reply via email to