Bug 574629

Summary: dhclient sets MTU to 576 for bridge device
Product: [Fedora] Fedora Reporter: Joe Conway <mail>
Component: dhcpAssignee: Jiri Popelka <jpopelka>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: low    
Version: 12CC: jpopelka, warlord
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: dhcp-4.1.1-13.fc12 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-04-22 22:34:22 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Joe Conway 2010-03-18 01:31:17 UTC
Description of problem:

Update of dhclient from dhclient-4.1.0p1-12.fc12.x86_64 to dhclient-4.1.1-9.fc12.x86_64 causes the default MTU of a bridge device to be set to 576 rather than 1500 as it was previously. This in turn prevents virtual machines that are connected to the bridge device from functioning properly (e.g. web pages will not load, although simple ping will work fine -- workaround is to force MTU in virtual machines to 576 also).

Version-Release number of selected component (if applicable):

dhclient-4.1.1-9.fc12.x86_64

How reproducible:
100%

Steps to Reproduce:
1. Set up bridged networking with the following scripts:

ifcfg.br0
--------------
DEVICE=br0
TYPE=Bridge
BOOTPROTO=dhcp
ONBOOT=yes
DELAY=0

ifcfg-eth0
--------------
DEVICE=eth0
TYPE=Ethernet
HWADDR=xx:xx:xx:xx:xx:xx
ONBOOT=yes
BRIDGE=br0

2. verify you have dhclient-4.1.1-9.fc12.x86_64
3. ensure NetworkManager is stopped
4. /etc/init.d/network restart
5. check with ifconfig, see br0 MTU=576
6. yum downgrade dhclient dhclient-4.1.0p1-12.fc12.x86_64
7. /etc/init.d/network restart
8. check with ifconfig, see br0 MTU=1500
  
Actual results:

br0 MTU is 576 upon start up or network restart

Expected results:

br0 MTU is 1500 upon start up or network restart

Additional info:

Comment 1 Jiri Popelka 2010-03-18 13:02:17 UTC
Hi Joe,
thanks for the report.

this is caused by fixing Bug #566873.
dhclient-4.1.1-9.fc12 now requests interface-mtu (specifies the MTU to use on this interface) option from server by default.
Server sends only options which it has configured to send and which the client requests.

It means that your dhcp server is configured to send interface-mtu option (with value 576). You discovered it with dhclient-4.1.1-9.fc12, because from this version the client is prepared to accept it.

If you don't want your client to request interface-mtu, you have to over-ride the list of default requested options.
It means put the following line into /etc/dhcp/dhclient.conf:

request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, host-name, nis-domain, nis-servers, ntp-servers;

I'm not sure how to proceed this bug.
I was looking into Debian (testing) and found that the default dhclient is also requesting interface-mtu. The only difference is that in Fedora we do it in dhclient code (we don't have default dhclient.conf) and in Debian it is done via 'request' statement in default dhclient.conf

Comment 2 Derek Atkins 2010-03-18 13:13:37 UTC
Perhaps Fedora should consider a default dhclient.conf and move the interface-mtu request there so it's easier for people to turn off?

Comment 3 Joe Conway 2010-03-18 16:40:08 UTC
Thanks -- I can confirm the 'request' statement in dhclient.conf fixes the issue for me. I agree with Derek -- I think a default dhclient.conf with a request statement would be a good idea. For example, if that had been the case I would have figured this out much more quickly when I grepped for mtu in /etc.

Comment 4 Jiri Popelka 2010-03-19 14:42:53 UTC
I did a little searching and found this:
http://mathema.tician.de/node/409
and
especially this
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=513616
The patch
http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=5;filename=ignore-below-576.diff;att=1;bug=513616
and explanation seems reasonable to me.

Comment 5 Fedora Update System 2010-03-19 17:37:12 UTC
dhcp-4.1.1-11.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/dhcp-4.1.1-11.fc12

Comment 6 Joe Conway 2010-03-19 17:53:54 UTC
4.1.1-11.fc12 works for me -- thanks!

Comment 7 Fedora Update System 2010-03-23 02:08:42 UTC
dhcp-4.1.1-11.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update dhcp'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/dhcp-4.1.1-11.fc12

Comment 8 Fedora Update System 2010-03-24 23:29:22 UTC
dhcp-4.1.1-12.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update dhcp'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/dhcp-4.1.1-12.fc12

Comment 9 Fedora Update System 2010-03-27 01:01:31 UTC
dhcp-4.1.1-13.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update dhcp'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/dhcp-4.1.1-13.fc12

Comment 10 Fedora Update System 2010-04-22 22:33:53 UTC
dhcp-4.1.1-13.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.