In my local Network the IP addresses are assigned by net-dns/dnsmasq-2.31 on an amd64 server. After updating dhcpcd to 3.0.16-r1 i dont get a default gw from the dhcp server, only static routes: [root:/] dhcpcd -k eth0 [root:/] dhcpcd -d eth0 Info, eth0: dhcpcd 3.0.17 starting Info, eth0: hardware address = 00:02:3f:15:91:fa Info, eth0: broadcasting for a lease Debug, eth0: sending DHCP_DISCOVER with xid 0x4a83a5cd Debug, eth0: waiting on select for 20 seconds Debug, eth0: waiting on select for 20 seconds Debug, eth0: waiting on select for 20 seconds Debug, eth0: got a packet with xid 0x4a83a5cd Info, eth0: offered 192.168.1.34 from 192.168.1.253 Debug, eth0: sending DHCP_REQUEST with xid 0x4a83a5cd Debug, eth0: waiting on select for 18 seconds Debug, eth0: got a packet with xid 0x4a83a5cd Info, eth0: leased 192.168.1.34 for 43200 seconds Debug, eth0: renew in 21600 seconds Debug, eth0: rebind in 37800 seconds Info, eth0: adding IP address 192.168.1.34/24 Info, eth0: adding route to 10.8.0.0 (255.255.255.0) via 192.168.1.252 metric 0 Debug, eth0: writing /etc/resolv.conf Debug, eth0: /etc/ntp.conf already configured, skipping Debug, eth0: /etc/ntpd.conf already configured, skipping Debug, eth0: writing /var/lib/dhcpcd/dhcpcd-eth0.info Debug, eth0: forking to background [root:/] route Kernel IP Routentabelle Ziel Router Genmask Flags Metric Ref Use Iface 10.8.0.0 eriwan.systec 255.255.255.0 UG 0 0 0 eth0 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0 loopback * 255.0.0.0 U 0 0 0 lo With dhcpcd-2.0.5-r1 i get the default route: [root:/] dhcpcd -k eth0 [root:/] dhcpcd -d eth0 Info, MAC address = 00:02:3f:15:91:fa Debug, broadcasting DHCP_REQUEST for 192.168.1.34 Debug, timed out waiting for DHCP_ACK response Debug, broadcasting DHCP_DISCOVER Debug, dhcpIPaddrLeaseTime=43200 in DHCP server response. Debug, DHCP_OFFER received from (192.168.1.253) Debug, broadcasting DHCP_REQUEST for 192.168.1.34 Debug, dhcpIPaddrLeaseTime=43200 in DHCP server response. Debug, DHCP_ACK received from (192.168.1.253) Debug, broadcasting ARPOP_REQUEST for 192.168.1.34 Info, verified 192.168.1.34 address is not in use Info, your IP address = 192.168.1.34 Debug, orig hostname = AmerLap [root:/] route -n Kernel IP Routentabelle Ziel Router Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0 Reproducible: Always Steps to Reproduce:
*** This bug has been marked as a duplicate of bug 173931 ***
this is not an duplicate of 173931. there the gateway is unreachable. here it is but dhcpcd is not even trying to set it.
If you feel this is not a duplicate, then please attach a whireshark trace of dhcpcd-3.x and dhcpcd-2.x of the dhcp transaction and then re-open this bug. Thanks
Created attachment 116632 [details] dhcpcd 2.0.5 Wireshark dump
Created attachment 116633 [details] dhcpcd 3.0.16 Wireshark dump
It seems that 3.0.16 does not request any special informations in the DHCP Discover, but 2.0.5 does. And the default answer from dnsmasq does not contain the router entry.
You've set Classless Static Routes on the DHCP server. This overrides any static routes *and* routers provided. You need to include your default route in your CSR option. See RFC3442 - DHCP Client Behaviour If the DHCP server returns both a Classless Static Routes option and a Router option, the DHCP client MUST ignore the Router option. Similarly, if the DHCP server returns both a Classless Static Routes option and a Static Routes option, the DHCP client MUST ignore the Static Routes option.
setting the default route as a classless static route solved the problem. but this seems to be a DHCP Behaviour that no other DHCP client cares about. We have here many Windows xp/98/2000, apple and linux workstations which worked normal with the previous DHCP server settings. but thanks anyway.
(In reply to comment #8) > setting the default route as a classless static route solved the problem. > but this seems to be a DHCP Behaviour that no other DHCP client cares about. We > have here many Windows xp/98/2000, apple and linux workstations which worked > normal with the previous DHCP server settings. > but thanks anyway. Only clients that understand CSR's would behave correctly. Of that list, only windows 2000 and XP should know about CSR's. dhcpcd-3 is the only linux client that knows about CSR's dhclient from FreeBSD also knows and behaves in the same manner as dhcpcd-3, so I would assume that the Microsoft clients don't follow the RFC exactly, which should not come as a suprise.