Greetings;
I've noticed recently after doing a package update on the iproute packages I can no longer configure my tunnel interface tunl0. Mainly I'm trying to reset the ttl to 64 for traceroute to properly work. Everything I've searched comes up empty. Here's what I see:
root@gw:/usr/local/bin# iptunnel show tunl0: ip/ip remote any local any ttl inherit nopmtudisc root@gw:/usr/local/bin# ifconfig tunl0 tunl0 Link encap:IPIP Tunnel HWaddr inet addr:44.88.0.1 Mask:255.255.255.255 UP RUNNING NOARP MULTICAST MTU:0 Metric:1
ttl is stuck on inherit and MTU autoconfigs to 0. This I know is set by nopmtudisc however if I try to adjust things:
root@gw:/usr/local/bin# ip tunnel change tunl0 ttl 64 ttl != 0 and noptmudisc are incompatible root@gw:/usr/local/bin# ip tunnel change pmtudisc mode ipip add tunnel tunl0 failed: No such file or directory
Why would it try to ADD? the command is CHANGE. Has anyone else suffered this before and if so what was the fix? Thanks in advance.
/sbin/ifconfig tunl0 44.135.85.151 txqueuelen 1000 up gives here a mtu of 1480 (and a mask of 255.0.0.0)
(and ttl inherit nopmtudisc)
So I'm wondering how you get mtu 0 there.
Are you using an other command line to start your tunnel interface?
Bob
On 13-12-29 06:59 PM, Brian Rogers wrote:
(Please trim inclusions from previous messages) _______________________________________________ Greetings;
I've noticed recently after doing a package update on the iproute packages I can no longer configure my tunnel interface tunl0. Mainly I'm trying to reset the ttl to 64 for traceroute to properly work. Everything I've searched comes up empty. Here's what I see:
root@gw:/usr/local/bin# iptunnel show tunl0: ip/ip remote any local any ttl inherit nopmtudisc root@gw:/usr/local/bin# ifconfig tunl0 tunl0 Link encap:IPIP Tunnel HWaddr inet addr:44.88.0.1 Mask:255.255.255.255 UP RUNNING NOARP MULTICAST MTU:0 Metric:1
ttl is stuck on inherit and MTU autoconfigs to 0. This I know is set by nopmtudisc however if I try to adjust things:
root@gw:/usr/local/bin# ip tunnel change tunl0 ttl 64 ttl != 0 and noptmudisc are incompatible root@gw:/usr/local/bin# ip tunnel change pmtudisc mode ipip add tunnel tunl0 failed: No such file or directory
Why would it try to ADD? the command is CHANGE. Has anyone else suffered this before and if so what was the fix? Thanks in advance.
On Mon, 2013-12-30 at 15:03 -0500, Bob Tenty wrote:
/sbin/ifconfig tunl0 44.135.85.151 txqueuelen 1000 up gives here a mtu of 1480 (and a mask of 255.0.0.0)
Have you done a full update of wheezy on your pi? I suspect it may have something to do with the libc update. I know Ubuntu and Mint's libc breaks apps, I hope pi isn't doing the same with Raspbian.
(and ttl inherit nopmtudisc) So I'm wondering how you get mtu 0 there.
mtu 0 is auto discover. This is forced in the updated wheezy. I don't know if it's the same with jessie or not.
Are you using an other command line to start your tunnel interface?
Nope. This is a new forced config with raspbian from what I've seen. You can still change MTU but you can't change ttl. If you haven't updated... DONT!
Sorry you are using rip44d I guess and I don't so I can't comment as I have to read that script.
Is interface mtu 0 not discovery off? (as the path mtu was set to nopmtudisc)
Maybe setting the interface mtu to a fixed value will solve your problem.
Setting the ttl to a fixed value did switch path mtu discovery on originally but maybe this new behaviour with interface mtu 0 is causing the problem you have?
Bob
On 13-12-30 03:22 PM, Brian Rogers wrote:
(Please trim inclusions from previous messages) _______________________________________________ On Mon, 2013-12-30 at 15:03 -0500, Bob Tenty wrote:
/sbin/ifconfig tunl0 44.135.85.151 txqueuelen 1000 up gives here a mtu of 1480 (and a mask of 255.0.0.0)
Have you done a full update of wheezy on your pi? I suspect it may have something to do with the libc update. I know Ubuntu and Mint's libc breaks apps, I hope pi isn't doing the same with Raspbian.
(and ttl inherit nopmtudisc) So I'm wondering how you get mtu 0 there.
mtu 0 is auto discover. This is forced in the updated wheezy. I don't know if it's the same with jessie or not.
Are you using an other command line to start your tunnel interface?
Nope. This is a new forced config with raspbian from what I've seen. You can still change MTU but you can't change ttl. If you haven't updated... DONT!
On Mon, 2013-12-30 at 16:41 -0500, Bob Tenty spake:
Is interface mtu 0 not discovery off? (as the path mtu was set to nopmtudisc)
This is part of the bug.
Maybe setting the interface mtu to a fixed value will solve your problem.
Setting the ttl to a fixed value did switch path mtu discovery on originally but maybe this new behaviour with interface mtu 0 is causing the problem you have?
If you have a Pi, please run the full wheezy update/upgrade and you'll experience what I and others who've emailed me offlist have seen. You can't "ifconfig <dev> mtu 0", it would be illogical and wouldn't let you do such anyway. The issue isn't so much with MTU anyway it's with ttl. Ip tunnel will NOT allow you to set a ttl to an interface named tunl0 but it will tunl1 or any other tunnel interface.
This does not prevent routing, it only prevents proper traceroutes. Even leaving MTU = 0, routing still works. It autosenses MTU required and adjusts per link request. TTL however is another story and you can NOT adjust it anymore. Prior to the update I could w/o issue.
To all Raspberry Pi users,
I found myself exactly at the same point as Brian N1URO, but "I came from a bit different direction".
After upgrading kernel from 3.6.11+ to 3.10.25+ I lost all possible connectivity based on tunl0 interface, and experienced very strange responses to pings. I spare my quite long research "journey"...
At last I realized that! MTU:0 directed me to check ax25 startup scripts. I had such line:
ifconfig tunl0 44.165.2.2 netmask 255.255.255.240 multicast arp up
First glance and observation: I DO NOT HAVE MTU defined!!! In fact it was not defined anywhere else before or after this line.
Changed line to: ifconfig tunl0 44.165.2.2 netmask 255.255.255.240 mtu 1500 multicast arp up
From now on, EVERYTHING works PERFECTLY!
Sorry for inclusion from previous message, but it seems necessary at this point.
Best regards. Tom - sp2lob
On 30/12/13 00:59, Brian Rogers wrote:
Greetings;
I've noticed recently after doing a package update on the iproute packages I can no longer configure my tunnel interface tunl0. Mainly I'm trying to reset the ttl to 64 for traceroute to properly work. Everything I've searched comes up empty. Here's what I see:
root@gw:/usr/local/bin# iptunnel show tunl0: ip/ip remote any local any ttl inherit nopmtudisc root@gw:/usr/local/bin# ifconfig tunl0 tunl0 Link encap:IPIP Tunnel HWaddr inet addr:44.88.0.1 Mask:255.255.255.255 UP RUNNING NOARP MULTICAST MTU:0 Metric:1
ttl is stuck on inherit and MTU autoconfigs to 0. This I know is set by nopmtudisc however if I try to adjust things:
root@gw:/usr/local/bin# ip tunnel change tunl0 ttl 64 ttl != 0 and noptmudisc are incompatible root@gw:/usr/local/bin# ip tunnel change pmtudisc mode ipip add tunnel tunl0 failed: No such file or directory
Why would it try to ADD? the command is CHANGE. Has anyone else suffered this before and if so what was the fix? Thanks in advance.
Changed line to: ifconfig tunl0 44.165.2.2 netmask 255.255.255.240 mtu 1500 multicast arp up
That's incorrect. You're forgetting to include -20 bytes for the additional ip overhead. It should be 1480 not 1500 my friend :)