Re: NM changes DHCP address too easily



On Wed, 2016-06-08 at 12:14 +0300, matti kaasinen wrote:
Hi!

I got into same conclusion as as Eli (http://billauer.co.il/blog/2012
/10/dhcp-ip-ntpdate-rtc/) that dhclient notices that time has
advanced over lease "expire" moment after time jump due to ntpdate.
As a consequence it rejects old IP and claims new one. I tried more
elegant way to get this solved so that I first check difference
between local and NTP time. If it is big enough, I switch from dhcp
mode to manual mode using the IP from dhcp lease. Then I run ntpdate
and switch back to dhcp mode. Sound elegant (and complicated), but
really from logs it seems pretty the same as what Eli got. 

This works somehow, IP does not change change. However, Avahi does
not tolerate this quite perfectly. It usually does, but sometimes it
gets confused and does not discuss with avahi-browse/avahi-discover.
This can quite well come from the fact that I need to run dhclient-
enter-hook to keep IPv4LL address.

In fact, wouldn't this issue been fixed in dhclient just by
monitoring lease trials: It should not reject the old lease if there
are no refresh trials before time exceeds the "expire" moment. I hope
you do something like that in NM-dhclient. I also hope that you could
figure out some policy to maitain IPc4LL address when dhcp client
gets lease.


This sounds like dhclient bug
https://bugzilla.redhat.com/show_bug.cgi?id=1093803 

The internal DHCP plugin (from systemd's network library) doesn't have
issue with resetting time.


Thomas





Thanks,
Matti

2016-05-17 10:15 GMT+03:00 matti kaasinen <matti kaasinen gmail com>:
Hi!
Some more information - lease log from board after re-installation
and dhcp server log:
================================
lease {
  interface "eth0";
  fixed-address 111.111.3.15;
  option subnet-mask 255.255.252.0;
  option dhcp-lease-time 7200;
  option routers 111.111.1.2;
  option dhcp-message-type 5;
  option dhcp-server-identifier 111.111.1.2;
  option domain-name-servers 111.111.1.2;
  option broadcast-address 111.111.3.255;
  option domain-name "domain.fi";
  renew 5 2016/03/11 14:46:10;
  rebind 5 2016/03/11 15:41:49;
  expire 5 2016/03/11 15:56:49;
}
lease {
  interface "eth0";
  fixed-address 111.111.3.15;
  option subnet-mask 255.255.252.0;
  option routers 111.111.1.2;
  option dhcp-lease-time 7200;
  option dhcp-message-type 5;
  option domain-name-servers 111.111.1.2;
  option dhcp-server-identifier 111.111.1.2;
  option broadcast-address 111.111.3.255;
  option domain-name "domain.fi";
  renew 5 2016/03/11 14:44:36;
  rebind 5 2016/03/11 15:41:52;
  expire 5 2016/03/11 15:56:52;
}
lease {
  interface "eth0";
  fixed-address 111.111.3.11;
  option subnet-mask 255.255.252.0;
  option routers 111.111.1.2;
  option dhcp-lease-time 7200;
  option dhcp-message-type 5;
  option domain-name-servers 111.111.1.2;
  option dhcp-server-identifier 111.111.1.2;
  option broadcast-address 111.111.3.255;
  option domain-name "domain.fi";
  renew 2 2016/05/17 06:39:51;
  rebind 2 2016/05/17 07:37:25;
  expire 2 2016/05/17 07:52:25;
}
====================
As you can see, board gets two leases pretty rapidly, then it gets
NTP time and new lease with new IP. Is this problem coming from the
fact that when board gets NTP time, it notices that time is over
expiration time and it has to drop its lease. 

I suppose that this is what Connman handles differently. 

Communication log from dhcp server:
===========================
May 17 08:49:33 ubuntu1 dhcpd: DHCPDISCOVER from 84:eb:18:96:a2:14
via eth1
May 17 08:49:34 ubuntu1 dhcpd: DHCPOFFER on 111.111.3.15 to
84:eb:18:96:a2:14 via eth1
May 17 08:49:34 ubuntu1 dhcpd: DHCPREQUEST for 111.111.3.15
(111.111.1.2) from 84:eb:18:96:a2:14 via eth1
May 17 08:49:34 ubuntu1 dhcpd: DHCPACK on 111.111.3.15 to
84:eb:18:96:a2:14 via eth1

May 17 08:49:36 ubuntu1 dhcpd: DHCPREQUEST for 111.111.3.15 from
84:eb:18:96:a2:14 via eth1
May 17 08:49:36 ubuntu1 dhcpd: DHCPACK on 111.111.3.15 to
84:eb:18:96:a2:14 via eth1

May 17 08:52:16 ubuntu1 dhcpd: DHCPDISCOVER from 84:eb:18:96:a2:14
via eth1
May 17 08:52:16 ubuntu1 dhcpd: ICMP Echo reply while lease
111.111.3.15 valid.
May 17 08:52:16 ubuntu1 dhcpd: Abandoning IP address 111.111.3.15:
pinged before offer

May 17 08:52:24 ubuntu1 dhcpd: DHCPDISCOVER from 84:eb:18:96:a2:14
via eth1
May 17 08:52:25 ubuntu1 dhcpd: DHCPOFFER on 111.111.3.11 to
84:eb:18:96:a2:14 via eth1
May 17 08:52:25 ubuntu1 dhcpd: DHCPREQUEST for 111.111.3.11
(111.111.1.2) from 84:eb:18:96:a2:14 via eth1
May 17 08:52:25 ubuntu1 dhcpd: DHCPACK on 111.111.3.11 to
84:eb:18:96:a2:14 via eth1

May 17 09:39:51 ubuntu1 dhcpd: DHCPREQUEST for 111.111.3.11 from
84:eb:18:96:a2:14 via eth1
May 17 09:39:51 ubuntu1 dhcpd: DHCPACK on 111.111.3.11 to
84:eb:18:96:a2:14 via eth1
==========================

I hope someone can sort out what goes wrong / howto fix it.
Thanks,
Matti


2016-04-25 21:33 GMT+03:00 matti kaasinen <matti kaasinen gmail com
:
It is dedicated dhcp server for local area network called dhcpd3.
I don't know how many free leases it has, but it do have very
much free addressing space. I don't beleave server changes addres
for lack of addresses. There are only couple of workstations
(below 10) using dhcp addressing and basically their address
never changes.

2016-04-25 16:58 GMT+03:00 José Queiroz <zekkerj gmail com>:


2016-04-25 2:24 GMT-03:00 matti kaasinen <matti kaasinen gmail 
com>:
dhcpd3


Sorry. I didn't make myself clear.

Which device is your DHCP server? A router (maybe wifi)? A
dedicated/generic router? A server?

How many free leases the DHCP server have, now?


_______________________________________________
networkmanager-list mailing list
networkmanager-list gnome org
https://mail.gnome.org/mailman/listinfo/networkmanager-list




_______________________________________________
networkmanager-list mailing list
networkmanager-list gnome org
https://mail.gnome.org/mailman/listinfo/networkmanager-list

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]