ubuntu 15.04 dhcp: option routers and option rfc3442-classless-static-routes

Bug #1465183 reported by Nastya
32
This bug affects 7 people
Affects Status Importance Assigned to Milestone
isc-dhcp (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Hi.
Sorry for my bad english.
Iam using option rfc3442-classless-static-routes in my dhcp-server.

# cat /var/lib/dhcp/dhclient.eth0.leases
lease {
  interface "eth0";
  fixed-address 192.168.120.170;
  option subnet-mask 255.255.255.0;
  option routers 192.168.120.1;
  option dhcp-lease-time 86400;
  option dhcp-message-type 5;
  option domain-name-servers 192.168.120.1;
  option dhcp-server-identifier 192.168.120.1;
  option ntp-servers 192.168.120.1;
  option rfc3442-classless-static-routes 24,10,125,0,192,168,120,110;
  option broadcast-address 192.168.120.255;
  option domain-name "home.xmu";
  renew 1 2015/06/15 05:45:48;
  rebind 1 2015/06/15 17:04:48;
  expire 1 2015/06/15 20:04:48;
}

In other operation system:
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.120.1 0.0.0.0 UG 0 0 0 eth0
10.125.0.0 192.168.120.110 255.255.255.0 UG 0 0 0 eth0
192.168.120.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

In ubuntu 15.04:
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.125.0.0 192.168.120.110 255.255.255.0 UG 0 0 0 eth0
192.168.120.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

No default gateway!!!

# cat /var/lib/dhcp/dhclient.leases
lease {
  interface "eth0";
  fixed-address 192.168.120.169;
  option subnet-mask 255.255.255.0;
  option routers 192.168.120.1;
  option dhcp-lease-time 86400;
  option dhcp-message-type 5;
  option domain-name-servers 192.168.120.1;
  option dhcp-server-identifier 192.168.120.1;
  option ntp-servers 192.168.120.1;
  option rfc3442-classless-static-routes 24,10,125,0,192,168,120,110;
  option broadcast-address 192.168.120.255;
  option domain-name "home.xmu";
  renew 1 2015/06/15 07:41:11;
  rebind 1 2015/06/15 16:57:38;
  expire 1 2015/06/15 19:57:38;
}

If i comment option rfc3442-classless-static-routes in my dhcp-server.
Default gateway works fine:
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.120.1 0.0.0.0 UG 0 0 0 eth0
192.168.120.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

# cat /etc/issue
Ubuntu 15.04 \n \l

# uname -a
Linux wp01 3.19.0-20-generic #20-Ubuntu SMP Fri May 29 10:10:47 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

# aptitude show isc-dhcp-client
Package: isc-dhcp-client
State: installed
Automatically installed: no
Version: 4.3.1-5ubuntu2.2
Priority: important
Section: net
Maintainer: Ubuntu Developers <email address hidden>
Architecture: amd64
Uncompressed Size: 698 k
Depends: libc6 (>= 2.15), libdns-export100, libirs-export91, libisc-export95, debianutils (>= 2.8.2), isc-dhcp-common (= 4.3.1-5ubuntu2.2), iproute2
Suggests: resolvconf, avahi-autoipd, apparmor
Provides: dhcp-client

# aptitude show isc-dhcp-common
Package: isc-dhcp-common
State: installed
Automatically installed: no
Version: 4.3.1-5ubuntu2.2
Priority: important
Section: net
Maintainer: Ubuntu Developers <email address hidden>
Architecture: amd64

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in isc-dhcp (Ubuntu):
status: New → Confirmed
Revision history for this message
Alejandro Mery (amery) wrote :

this bug is horrible. on environments where DHCP is served by a windows server there is no way of passing the default gateway via static routes ("rfc3442-classless-static-routes"). it's MS fault, but the client should be tolerant and notice rfc3442-classless-static-routes doesn't include a default gateway and use "routes" to fill the gap.

Revision history for this message
renard (renard0) wrote :

I can confirm I hit the same bug in a full Linux environment.
- server: 4.2.4-7ubuntu12.3
- client: 4.3.1-5ubuntu4

All clients (+500 hosts) in 4.2.4-7ubuntu12.3 work like a charm.

I cannot understand why this had changed. Any planned date to resolve this issue?

Thanks.

Revision history for this message
Matthieu Herrb (matthieu-herrb) wrote :

In fact its not a bug.
The RFC3442 explicitely says that clients that use the classless-static-route option (121) MUST ignore any router specified in the routers (default gateway) option. (page 5, DHCP Client Behavior)

Revision history for this message
Alexey Lyashkov (alexey.lyashkov) wrote :

In fact, RedHat, Windows, MacOS don't ignore an default routes with classless-static_route option.
What about to add an some tunable to have same behavior in Ubuntu? It should be not a hard

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.