Bug 642596 - network manager does not assign a default gateway on certain dhcp server(s)
Summary: network manager does not assign a default gateway on certain dhcp server(s)
Keywords:
Status: CLOSED DUPLICATE of bug 639935
Alias: None
Product: Fedora
Classification: Fedora
Component: NetworkManager
Version: 14
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Dan Williams
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 661628 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-10-13 12:22 UTC by cornel panceac
Modified: 2011-02-26 09:25 UTC (History)
14 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2011-02-25 07:03:47 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
log file (1.01 KB, text/plain)
2010-10-21 06:30 UTC, cornel panceac
no flags Details
part of /var/log/messages containing NetworkManager (8.21 KB, text/plain)
2010-10-21 07:28 UTC, Antal KICSI
no flags Details
part of /var/log/messages when connecting ethernet cable (F14) (4.43 KB, application/octet-stream)
2010-10-23 16:33 UTC, Sébastien Wilmet
no flags Details
part of /var/log/messages when connecting ethernet cable (F13) (5.11 KB, application/octet-stream)
2010-10-23 16:59 UTC, Sébastien Wilmet
no flags Details

Description cornel panceac 2010-10-13 12:22:06 UTC
Description of problem:
while setting a dhcp wired connection, nm does not set a default gateway

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

$ rpm -q NetworkManager
NetworkManager-0.8.1-8.git20100831.fc14.i686

How reproducible:
always

Steps to Reproduce:
1. conect the client-pc to the router's lan interface.
2.
3.
  
Actual results:
there's no default gateway


Expected results:
default gateway shows up in route -n


Additional info:
running dhclient by hand sets the gateway correctly

more info:
https://admin.fedoraproject.org/mailman/listinfo/test
11 Oct 09:18    cornel panceac    *    how to debug NetworkManager ?

Comment 1 Antal KICSI 2010-10-20 16:25:16 UTC
I have the same problem with desktop-i386-20101019.17.iso from http://alt.fedoraproject.org/pub/alt/nightly-composes/desktop/

NetvorkManager version : 

# rpm -q NetworkManager
NetworkManager-0.8.1-9.git20100831.fc14.i686

Comment 2 Antal KICSI 2010-10-20 20:22:00 UTC
The above problem is not present with Fedora-14-Beta.iso. NetworkManager gets all the information from the dhcp server (including default gw) with exactly the same hardware. Seems to be a regression in NetworkManager.

NetworkManager version for Fedora-14-Beta :

$ rpm -q NetworkManager
NetworkManager-0.8.1-6.git20100831.fc14.i686

Comment 3 Dan Williams 2010-10-20 22:40:05 UTC
Nothing has changed in NM's DHCP handling code since then actually.  Instead, lets make sure the DHCP server is actually replying with a gateway address.  Look in /var/log/messages for bits that look like this:

NetworkManager[1314]: <info> (usb0): DHCPv4 state changed bound -> renew
NetworkManager[1314]: <info>   address 25.160.77.171
NetworkManager[1314]: <info>   prefix 29 (255.255.255.248)
NetworkManager[1314]: <info>   gateway 25.160.77.169
NetworkManager[1314]: <info>   nameserver '66.94.25.120'
NetworkManager[1314]: <info>   nameserver '66.94.9.120'

if there is no "gateway" item there, then your DHCP server didn't pass one back to NM.  There are some things we can do to work around this, but lets see if this is actually the problem first.  Thanks!

Comment 4 cornel panceac 2010-10-21 06:30:36 UTC
Created attachment 454732 [details]
log file

excerpt from /var/log/messages, _without_ any dhclient*.conf in /etc/dhcp

Comment 5 Antal KICSI 2010-10-21 07:28:45 UTC
Created attachment 454737 [details]
part of /var/log/messages containing NetworkManager

part of /var/log/messages containing NetworkManager

I do not see any lines with gateway

Comment 6 Sébastien Wilmet 2010-10-23 16:33:43 UTC
Created attachment 455263 [details]
part of /var/log/messages when connecting ethernet cable (F14)

Comment 7 Sébastien Wilmet 2010-10-23 16:59:58 UTC
Created attachment 455267 [details]
part of /var/log/messages when connecting ethernet cable (F13)

With F13 there is no problem, we see in the log the line "gateway".

Comment 8 Antal KICSI 2010-11-02 17:51:39 UTC
Unfortunately the problem persists with Fedora 14 Final.

Comment 9 Fred New 2010-11-06 22:27:28 UTC
I can confirm this problem.  I just used preupgrade to upgrade from Fedora 13 to Fedora 14.  Perhaps the upgrade configured something wrong, but my /var/log/messages contains both the Fedora 13 messages and the Fedora 14 messages.  When I trim out the first boot and the last boot from /var/log/messages, I can see that Fedora 13 had a "<info> gateway" line while the Fedora 14 doesn't.

Comment 10 Fred New 2010-11-06 22:54:36 UTC
Just out of curiosity, I downgraded my dhclient to the Fedora 13 version.  Now my gateway gets configured automatically at boot time, the way it's supposed to.  Perhaps this is a dhcp (dhclient) problem and not a NetworkManager problem.

What works for me:
dhclient-4.1.1-26.P1.fc13.i686
NetworkManager-0.8.1-9.git20100831.fc14.i686

Comment 11 cornel panceac 2010-11-07 04:11:53 UTC
the only problem is that if you disable nm ad run dhclient eth0, it just works, in the same fc14 where nm fails. maybe it's in the way dhclient is called from nm, in fc14. anyway, dan williams should know better :)

also, considering all this facts, i believe we can discard the idea that the dhcp server itself do not provide the gateway info.

_maybe_ the dhclient in f13 behaves different that the one in f14, but the call in nm remained the same, hence leading to issues.

Comment 12 Antal KICSI 2010-11-07 20:36:44 UTC
I do not know if this helps, but here are my statistics:

Fedora 13 - I have default route
================================
dhclient-4.1.1-23.P1.fc13.i686
NetworkManager-0.8.1-6.git20100831.fc13.i686
NetworkManager-gnome-0.8.1-6.git20100831.fc13.i686

Fedora 14 Beta LiveCD  - I have default route
=============================================
dhclient-4.2.0-1.fc14.i686
NetworkManager-0.8.1-6.git20100831.fc14.i686
NetworkManager-gnome-0.8.1-6.git20100831.fc14.i686

Fedora 14 LiveCD - I do not have default route
==============================================
dhclient-4.2.0-6.fc14.i686
NetworkManager-0.8.1-9.git20100831.fc14.i686
NetworkManager-gnome-0.8.1-9.git20100831.fc14.i686

Fedora 14 updated - I still do not have default route
==============================================
dhclient-4.2.0-12.fc14.i686
NetworkManager-0.8.1-9.git20100831.fc14.i686
NetworkManager-gnome-0.8.1-9.git20100831.fc14.i686

Comment 13 Fred New 2010-11-16 13:04:23 UTC
This problem has appeared on my second home computer, now that I have installed F14 on it.  Newer hardware than my first computer, but still quite old.  As the bug title implies, this could be related to the DHCP server (an ADSL modem in my case), but it should work between Fedora versions.

Comment 14 Antal KICSI 2010-11-17 18:18:06 UTC
No change with 

dhclient-4.2.0-14.P1.fc14.i686
NetworkManager-0.8.1-10.git20100831.fc14.i686
NetworkManager-gnome-0.8.1-10.git20100831.fc14.i686

My DHCP server is also an ADSL modem ( SpeedTouch 5x6 software ver. 6.1.0.5 ). It works fine with Fedora 13 and Windows Xp.

Comment 15 Antal KICSI 2010-11-22 22:05:25 UTC
I found this on the net :

https://bugzilla.novell.com/show_bug.cgi?id=625770

and

https://bugzilla.novell.com/show_bug.cgi?id=623409

Look like a similar problem and has a resolved status. Is this for any help?

Thank you!

Comment 16 Stijn Hoop 2010-11-24 19:52:49 UTC
Running into the same problem here. Laptop pre-upgraded from F13 to F14, problem appeared afterwards. I can verify that F13 did include a 'gateway' line in the NetworkManager output in /var/log/messages, while F14 does not.

Comment 17 Ross McKerchar 2010-12-11 13:15:26 UTC
Confirm also got this problem. Stock install of FC14 (also see issue when booting of livecd). Networkmanager configured wireless connection doesn't set default gateway.

Seems like I'm getting a gateway from the router:

[root@demerzal ~]# tcpdump -vvv -s 1500 -i wlan0 port 67
13:04:09.794592 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328)
    0.0.0.0.bootpc > 255.255.255.255.bootps: [udp sum ok] BOOTP/DHCP, Request from 00:xx:xx:xx:xx:xx (oui Unknown), length 300, xid 0x93bc5e63, Flags [none] (0x0000)
          Client-Ethernet-Address 00:xx:xx:xx:xx:xx (oui Unknown)
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Request
            Requested-IP Option 50, length 4: 192.168.1.69
            Parameter-Request Option 55, length 13:
              Subnet-Mask, BR, Time-Zone, Classless-Static-Route
              Domain-Name, Domain-Name-Server, Hostname, YD
              YS, NTP, MTU, Option 119
              Default-Gateway
            END Option 255, length 0
            PAD Option 0, length 0, occurs 35
13:04:09.803536 IP (tos 0x0, ttl 64, id 3415, offset 0, flags [none], proto UDP (17), length 309)
    192.168.1.254.bootps > 192.168.1.69.bootpc: [udp sum ok] BOOTP/DHCP, Reply, length 281, xid 0x93bc5e63, Flags [none] (0x0000)
          Your-IP 192.168.1.69
          Gateway-IP 192.168.1.254
          Client-Ethernet-Address 00:xx:xx:xx:xx:xx (oui Unknown)
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: ACK
            Server-ID Option 54, length 4: 192.168.1.254
            Lease-Time Option 51, length 4: 86400
            Subnet-Mask Option 1, length 4: 255.255.255.0
            Domain-Name Option 15, length 3: "lan"
            Domain-Name-Server Option 6, length 4: 192.168.1.254
            Classless-Static-Route Option 121, length 5: (default:192.168.1.254)
            END Option 255, length 0
            PAD Option 0, length 0

But no info about dhcp gateway in /var/log/messages:

Dec 11 12:26:35 demerzal NetworkManager[1148]: <info>   address 192.168.1.69
Dec 11 12:26:35 demerzal NetworkManager[1148]: <info>   prefix 24 (255.255.255.0)
Dec 11 12:26:35 demerzal NetworkManager[1148]: <info>   nameserver '192.168.1.254'
Dec 11 12:26:35 demerzal NetworkManager[1148]: <info>   domain name 'lan'

And no default route until I manually run dhclient.

[root@demerzal ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     2      0        0 wlan0

[root@demerzal ~]# dhclient

[root@demerzal ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 wlan0
0.0.0.0         192.168.1.254   0.0.0.0         UG    0      0        0 wlan0

[root@demerzal ~]# rpm -qa | grep -i NetworkManager
NetworkManager-0.8.1-9.git20100831.fc14.i686
NetworkManager-gnome-0.8.1-9.git20100831.fc14.i686
NetworkManager-vpnc-0.8.1-1.fc14.i686
NetworkManager-openconnect-0.8.1-1.fc14.i686
NetworkManager-openvpn-0.8.1-1.fc14.i686
NetworkManager-pptp-0.8.1-1.fc14.i686
NetworkManager-glib-0.8.1-9.git20100831.fc14.i686

Interestingly, also using a SpeedTouch dsl modem/wap/router thing.
			
Product Name:	SpeedTouch 585
Software Release:	5.4.0.11

Have ran older versions of fedora, other distros and other OSes, never seen the problem except on FC14.

-ross

Comment 18 Jiri Popelka 2010-12-14 16:11:41 UTC
(In reply to comment #12)
> Fedora 14 Beta LiveCD  - I have default route
> =============================================
> dhclient-4.2.0-1.fc14.i686
> 
> Fedora 14 LiveCD - I do not have default route
> ==============================================
> dhclient-4.2.0-6.fc14.i686

The problem is most likely related to the RFC3442 (The Classless Static Route Option) support added in dhclient-4.2.0-4.fc14.

(In reply to comment #17)
> Seems like I'm getting a gateway from the router:
> 
> [root@demerzal ~]# tcpdump -vvv -s 1500 -i wlan0 port 67
>  <...>
>             Parameter-Request Option 55, length 13:
>               Subnet-Mask, BR, Time-Zone, Classless-Static-Route
>               Domain-Name, Domain-Name-Server, Hostname, YD
>               YS, NTP, MTU, Option 119
>               Default-Gateway
This is a DHCPREQUEST message sent from client to router.
You can see that client requests both Classless-Static-Route option and Default-Gateway (this one is called 'Router' option in RFCs) option from router.
This is correct.
RFC3442 (Classless Static Route option) says:
 *  DHCP clients that support this option and that send a DHCP Parameter
 *  Request List option MUST request both this option and the Router
 *  option in the DHCP Parameter Request List.

>   <...>
>     192.168.1.254.bootps > 192.168.1.69.bootpc: [udp sum ok] BOOTP/DHCP, Reply,
> length 281, xid 0x93bc5e63, Flags [none] (0x0000)
>           Your-IP 192.168.1.69
>           Gateway-IP 192.168.1.254
>           Client-Ethernet-Address 00:xx:xx:xx:xx:xx (oui Unknown)
>           Vendor-rfc1048 Extensions
>             Magic Cookie 0x63825363
>             DHCP-Message Option 53, length 1: ACK
>             Server-ID Option 54, length 4: 192.168.1.254
>             Lease-Time Option 51, length 4: 86400
>             Subnet-Mask Option 1, length 4: 255.255.255.0
>             Domain-Name Option 15, length 3: "lan"
>             Domain-Name-Server Option 6, length 4: 192.168.1.254
>             Classless-Static-Route Option 121, length 5:
> (default:192.168.1.254)
This is the DHCPACK (answer) message from modem/router. You can see that the
Classless-Static-Route option is there and contains default gateway, but the (standalone) Default-Gateway (also called Router) option is missing. This is also correct, because
RFC3442 says:
 *  When a DHCP client requests the Classless Static Routes option and
 *  also requests either or both of the Router option and the Static
 *  Routes option, and the DHCP server is sending Classless Static Routes
 *  options to that client, the server SHOULD NOT include the Router or
 *  Static Routes options.

So the problem is that NM in F14 doesn't know how to use the default gateway from Classless-Static-Route option.
This is already fixed (see bug #639935, comment #4) in git repo (ver 0.8.2) but should be probably backported to ver 0.8.1 in F14.

Comment 20 Miguel Angel Perez 2010-12-17 23:56:29 UTC
*** Bug 661628 has been marked as a duplicate of this bug. ***

Comment 21 Miguel Angel Perez 2010-12-18 00:11:30 UTC
I also have this issue, even I have the SpeedTouch too!
I hope that fix gets backported soon.

Comment 22 lejeczek 2011-01-26 10:11:34 UTC
There is definitely a problem with f13,
NM is in charge of network,

it ignores - Ignore automatically obtained routes - in other words it obtains and sets these routes, even though method in IPv4 is - Automatic (DHCP) address only.

ver 0.8.1, rel 10.git20100831.fc13

Comment 23 JJ Keijser 2011-01-30 12:45:58 UTC
(In reply to comment #10)
> Just out of curiosity, I downgraded my dhclient to the Fedora 13 version.  Now
> my gateway gets configured automatically at boot time, the way it's supposed
> to.  Perhaps this is a dhcp (dhclient) problem and not a NetworkManager
> problem.
> 
> What works for me:
> dhclient-4.1.1-26.P1.fc13.i686
> NetworkManager-0.8.1-9.git20100831.fc14.i686

same thing here:
speedtouch 5x6 v6.1.0.5 f/w with FC14 does not work
FC13 (all patches applied upto today) does work

Downgrading the 'dhclient' RPM in FC14 to the FC13 one (i.e. 4.2.0 > 4.1.1) made things work again.

If a patch is available for this issue I can test it quite quickly.

Comment 24 Fred New 2011-02-01 08:19:06 UTC
This problem disappeared in my two F14 systems with the latest dhclient update, dhclient-4.2.0-18.P2.fc14.i686 (or something else in the yum update).  Can anyone else confirm this?

Comment 25 JJ Keijser 2011-02-01 10:12:31 UTC
the dhclient update was published on Jan 20th. My comment #23  was from Jan 30th so my guess is that the update was included on my laptop (I had run 'yum update' several times already).
I will test it again tomorrow (when I am near the speedtouch 5x6 again), just to make sure, but I'm afraid I can NOT confirm that this bug has been resolved.

Comment 26 Miguel Angel Perez 2011-02-01 10:40:19 UTC
My system is up to date and I've suffered from this bug today, so I guess that is not fixed, at least for me.

Comment 27 Fred New 2011-02-01 12:37:17 UTC
Hmm, I was sure I had this bug.  I commented out the "route add ..." statement in rc.local and I got a default gateway after reboot...

Comment 28 Antal KICSI 2011-02-01 21:45:30 UTC
The latest dhclient update, dhclient-4.2.0-18.P2.fc14.i686 does not resolv the problem with my Speedtouch5x6's dhcp server.

But if I understand correctly the comment #18 the problem is in NetworkManager and not in dhclient.
In dhclient was added support for Classless-Static-Route since dhclient-4.2.0-4.fc14 - and NetworkManager does not know how to use the default gateway from Classless-Static-Route option.

Comment 29 Jon Marston 2011-02-08 21:13:14 UTC
I can confirm that I have this issue on F14 final aswell:

[root@jon-pc ~]# cat /etc/redhat-release
Fedora release 14 (Laughlin)
[root@jon-pc ~]# rpm -q dhclient
dhclient-4.2.0-19.P2.fc14.x86_64

Once booted, running 'dhclient eth0' sets the correct gateway.

Comment 30 Dan Williams 2011-02-25 07:03:47 UTC
The update in the duplicate bug has support for Fedora's dhclient classless static route format.  Please give that a try.

*** This bug has been marked as a duplicate of bug 639935 ***

Comment 31 Antal KICSI 2011-02-26 09:25:06 UTC
The NetworkManager-0.8.3.996-1.fc14 from the updates-testing repository solves my problem with the Speedtouch5x6's dhcp server. (dhclient updated to dhclient-4.2.0-19.P2.fc14).

Thank You!


Note You need to log in before you can comment on or make changes to this bug.