** Description changed:

  Hello,
  
  Looks like setting per route mtu (as described in [1]) is broken in linux 
kernel 3.2 (default kernel from ubuntu 12.04).
  I made script to illustrate this:
  
- root@germany7:~# cat route-mtu 
+ root@germany7:~# cat route-mtu
  #!/bin/bash
  
  uname -a
  ip tuntap add dev test mode tun
  ifconfig test 10.1.1.1/16 mtu 1500
  echo =============================================================
  echo No per route mtu entry
  ping -c1 -Mdo -s2000 10.1.1.2
  echo =============================================================
  echo Per route MTU is set to 800
  ip route add  10.1.1.2 dev test proto static src 10.1.1.1 mtu lock 800
  ip route flush cache
  ping -c1 -Mdo -s2000 10.1.1.2
  ip route del 10.1.1.2 dev test proto static src 10.1.1.1 mtu lock 800
  echo =============================================================
  echo Per route MTU is set to 600
  ip route add  10.1.1.2 dev test proto static src 10.1.1.1 mtu lock 600
  ip route flush cache
  ping -c1 -Mdo -s2000 10.1.1.2
  ip route del 10.1.1.2 dev test proto static src 10.1.1.1 mtu lock 600
  echo =============================================================
  echo No per route mtu entry
  ip route flush cache
  ping -c1 -Mdo -s2000 10.1.1.2
  ip tuntap del dev test mode tun
- 
  
  With kernel 3.2 I get following output:
  Linux germany7 3.2.0-41-generic-pae #66-Ubuntu SMP Thu Apr 25 03:50:20 UTC 
2013 i686 i686 i386 GNU/Linux
  =============================================================
  No per route mtu entry
  PING 10.1.1.2 (10.1.1.2) 2000(2028) bytes of data.
  From 10.1.1.1 icmp_seq=1 Frag needed and DF set (mtu = 1500)
  
  --- 10.1.1.2 ping statistics ---
  0 packets transmitted, 0 received, +1 errors
  
  =============================================================
  Per route MTU is set to 800
  PING 10.1.1.2 (10.1.1.2) 2000(2028) bytes of data.
  From 10.1.1.1 icmp_seq=1 Frag needed and DF set (mtu = 800)
  
  --- 10.1.1.2 ping statistics ---
  0 packets transmitted, 0 received, +1 errors
  
  =============================================================
  Per route MTU is set to 600
  PING 10.1.1.2 (10.1.1.2) 2000(2028) bytes of data.
  From 10.1.1.1 icmp_seq=1 Frag needed and DF set (mtu = 800)
  
  --- 10.1.1.2 ping statistics ---
  0 packets transmitted, 0 received, +1 errors
  
  =============================================================
  No per route mtu entry
  PING 10.1.1.2 (10.1.1.2) 2000(2028) bytes of data.
  From 10.1.1.1 icmp_seq=1 Frag needed and DF set (mtu = 800)
  
  --- 10.1.1.2 ping statistics ---
  0 packets transmitted, 0 received, +1 errors
  
- After once set to 800 MTU is always 800, even if you add different route
- and clean routing cache.
+ After once set to 800, MTU is always 800, even if you add different
+ route and clean routing cache.
  
- 
- It looks like that problem is fixed in ubuntu kernel 3.5. With it everything 
works like expected:
- root@germany7:~# ./route-mtu 
+ It looks like that problem is fixed in ubuntu kernel 3.5. With it, everything 
works like expected:
+ root@germany7:~# ./route-mtu
  Linux germany7 3.5.0-28-generic #48~precise1-Ubuntu SMP Wed Apr 24 21:43:05 
UTC 2013 i686 i686 i386 GNU/Linux
  =============================================================
  No per route mtu entry
  PING 10.1.1.2 (10.1.1.2) 2000(2028) bytes of data.
  From 10.1.1.1 icmp_seq=1 Frag needed and DF set (mtu = 1500)
  
  --- 10.1.1.2 ping statistics ---
  0 packets transmitted, 0 received, +1 errors
  
  =============================================================
  Per route MTU is set to 800
  PING 10.1.1.2 (10.1.1.2) 2000(2028) bytes of data.
  From 10.1.1.1 icmp_seq=1 Frag needed and DF set (mtu = 800)
  
  --- 10.1.1.2 ping statistics ---
  0 packets transmitted, 0 received, +1 errors
  
  =============================================================
  Per route MTU is set to 600
  PING 10.1.1.2 (10.1.1.2) 2000(2028) bytes of data.
  From 10.1.1.1 icmp_seq=1 Frag needed and DF set (mtu = 600)
  
  --- 10.1.1.2 ping statistics ---
  0 packets transmitted, 0 received, +1 errors
  
  =============================================================
  No per route mtu entry
  PING 10.1.1.2 (10.1.1.2) 2000(2028) bytes of data.
  From 10.1.1.1 icmp_seq=1 Frag needed and DF set (mtu = 1500)
  
  --- 10.1.1.2 ping statistics ---
  0 packets transmitted, 0 received, +1 errors
  
- 
- I also tested with kernels 2.6.35 (in lucid) and 3.8 (in precise), results 
are same to 3.5.
+ I also tested with kernels 2.6.35 (in lucid) and 3.8 (in precise),
+ results are same to 3.5.
  
  Is there any chance to get fixes from 3.5/3.8 backported to the default
  precise kernel 3.2?
  
- 
  1. http://lartc.org/howto/lartc.cookbook.mtu-discovery.html

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1177507

Title:
  per route mtu settings are broken in linux kernel 3.2

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1177507/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to