Package: dhcp3
Version: 3.1.1-5
Severity: normal
Tags: patch
User: [email protected]
Usertags: origin-ubuntu jaunty ubuntu-patch
Hello!
It seems that at least one provider (Comcast) issues interface-mtu
responses set to 576. This breaks a number of things, and it seems that
the 576 MTU is, in fact, not at all in general use. It is a setting
specific to X.25 and to dialup interfaces seeking lower latency[1].
Those using protocol-breaking low MTUs for dialup are doing so knowing
the trade-offs, have set the MTU manually already, and shouldn't be
affected by dhclient ignoring such values.
I'd like to propose this patch to allow the interface-mtu request for
people that need it (PPPoE @ 1492, etc), without breaking people that
are unlucky enough to be requesting DHCP from crazy broken devices that
like to offer 576 as a sane MTU.
Thanks!
-Kees
[1] http://www.tldp.org/HOWTO/text/Leased-Line
--
Kees Cook @debian.org
diff -u dhcp3-3.1.1/debian/dhclient-script.linux dhcp3-3.1.1/debian/dhclient-script.linux
--- dhcp3-3.1.1/debian/dhclient-script.linux
+++ dhcp3-3.1.1/debian/dhclient-script.linux
@@ -141,7 +141,12 @@
if [ -n "$alias_subnet_mask" ]; then
alias_subnet_arg="netmask $alias_subnet_mask"
fi
-if [ -n "$new_interface_mtu" ] && [ $new_interface_mtu -ge 575 ]; then
+# The 576 MTU is only used for X.25 and dialup connections
+# where the admin wants low latency. Such a low MTU can cause
+# problems with UDP traffic, among other things. As such,
+# disallow MTUs from 576 and below by default, so that broken
+# MTUs are ignored, but higher stuff is allowed (1492, 1500, etc).
+if [ -n "$new_interface_mtu" ] && [ $new_interface_mtu -gt 576 ]; then
mtu_arg="mtu $new_interface_mtu"
fi
if [ -n "$IF_METRIC" ]; then