RE: Need to send the dhclient6 to background in Centos 8



OK,

I will follow the next NM releases. And I will think about all the options you say and the best 
implementation into our environment. I prefer to offer network manager by default in centos 8 and not the 
classical ifcfg interface.

Thank you 

-----Mensaje original-----
De: Thomas Haller [mailto:thaller redhat com] 
Enviado el: miércoles, 9 de octubre de 2019 13:20
Para: Jorge Perez Higuera; networkmanager-list gnome org
Asunto: Re: Need to send the dhclient6 to background in Centos 8

On Wed, 2019-10-09 at 09:13 +0000, Jorge Perez Higuera via networkmanager-list wrote:
I'm not sure if I can attach a log file. Let's try :|

This is the interface configuration file

NAME="Public ens192"
TYPE=Ethernet
DEVICE=ens192
ONBOOT=yes
BOOTPROTO=dhcp
IPV6INIT=yes
IPV6_AUTOCONF=no
IPV6_FAILURE_FATAL=no
DHCPV6C=yes
DHCPV6_DUID=ll


Hi,

thanks for the log.

You see there "pending_action" mentioned. This internally delays startup complete.

Indeed, there is a  bug there. I opened a merge request with a possible fix [1].


I don't see an easy workaround for you. Maybe one of:

- fix your networking environmnet. The router should not indicate to use DHCPv6, when no DHCPv6 server is 
replying.

- if you don't need IPv6, set ipv6.method=disabled

- `systemctl disable NetworkManager-wait-online.service` and write your own script that you order 
`Before=network-online.target` and `After=network.target`. You can implement their whatever policy suits you.

- maybe `systemctl edit NetworkManager-wait-online.service` and set the timeout to something shorter. 30 
seconds is conservatively long already. Of course, then the service will be marked as failed, so maybe also 
configure it to ignore the return value of the `nm-online` tool.


[1] https://gitlab.freedesktop.org/NetworkManager/NetworkManager/merge_requests/304


best,
Thomas


-----Mensaje original-----
De: Thomas Haller [mailto:thaller redhat com] Enviado el: martes, 8 de 
octubre de 2019 21:00
Para: Jorge Perez Higuera; networkmanager-list gnome org
Asunto: Re: Need to send the dhclient6 to background in Centos 8

On Tue, 2019-10-08 at 16:14 +0000, Jorge Perez Higuera via 
networkmanager-list wrote:
So that is not working here. The machine gets the Ipv4 address 
quickly and the dhclient ipv6 process starts getting an ip. 30 
seconds later the NetworkManager-wait-online service waits until it 
fails.
If I create an ipv6 reservation in the dhcp server the machine boots 
good with bot ipv4 and ipv6 addresses

That sounds not correct.

I would enable level=TRACE logging. See [1] for hints about logging 
and rate-limiting of journal.

[1]
https://cgit.freedesktop.org/NetworkManager/NetworkManager/tree/contri
b/fedora/rpm/NetworkManager.conf#n28


Then look at the log for a message like

  <info>  [1570445723.4941] manager: startup complete

NetworkManager-wait-online basically waits for this point.


There are also logging messages earlier, telling you why "startup 
complete" is not yet reached, and why NM waits longer...


A common reason is that you have a bridge/bond/team master that 
autoactivates without slaves. Such a device has no carrier and cannot 
fully activate, delaying "startup complete" indefinitely.


best,
Thomas


The network setup is correct in this environment:
NAME="whatever"
TYPE=Ethernet
DEVICE=<interface>
ONBOOT=yes
BOOTPROTO=dhcp
IPV6INIT=yes
IPV6_AUTOCONF=no
IPV6_FAILURE_FATAL=no  (inverse "may fail" meaning) DHCPV6C=yes 
DHCPV6_DUID=ll


-----Mensaje original-----
De: Thomas Haller [mailto:thaller redhat com] Enviado el: martes, 8 
de octubre de 2019 18:05
Para: Jorge Perez Higuera; networkmanager-list gnome org
Asunto: Re: Need to send the dhclient6 to background in Centos 8

On Tue, 2019-10-08 at 15:10 +0000, Jorge Perez Higuera via 
networkmanager-list wrote:
If the dhcp server does not send an ipv6 lease IP, dhclient ipv6 
process tries to get that ip during 30 seconds. That causes (i can 
see that via systemd-analyze blame) the startup of the 
NetworkManager-wait-online service is delayed, delaying the 
network-online.target I have services depending of this target and 
that delay causes some troubles to me.

Hi,


DHCPv6 is only done if either

- "ipv6.method=dhcp" is configured in the profile

- "ipv6.method=auto" is configured in the profile, and the IPv6 
router in your network sets the managed flag in its router 
advertisements, to indicate to use DHCPv6.


It seems better to fix your configuration and/or networking setup.

Also, if you configure ipv6.may-fail=yes and the device gets a
IPv4
address, then the entire device is considered active (and no longer 
blocks NetworkManager-wait-online). So, if you care about IPv6, you 
maybe want to set ipv6.may-fail=no.


best,
Thomas


-----Mensaje original-----
De: Thomas Haller [mailto:thaller redhat com] Enviado el: martes,
8
de octubre de 2019 14:00
Para: Jorge Perez Higuera; networkmanager-list gnome org
Asunto: Re: Need to send the dhclient6 to background in Centos 8

On Tue, 2019-10-08 at 11:37 +0000, Jorge Perez Higuera via 
networkmanager-list wrote:
Hi all. I need some help
 
I need to send the dhclient ipv6 process to background (I use
dhcp=dhclient)
I know it can be done passing the –nw parameter via dhclient but 
i don’t know how to pass this to dhclient via NetworkManager 
Also in Centos 8 it start in foreground (-d parameter)
 
Is there any way to do this?
Is is posible via internal client?
 
NetworkManager 1.14.0
Centos 8
 
Thank you

Hi,

when NetworkManager uses dhclient as its DHCP plugin, then the 
process is controlled by NetworkManager. In that case, 
NetworkManager will always spawn the process in the background.
That
is regardless whether NetworkManager itself is in the background 
or not). Anyway, the way NetworkManager spawns this process is of 
little concern to the user.

In fact, when using NetworkManager you usually would be not 
concerned with dhclient at all. The process is for the most part 
an implementation detail of how NetworkManager does DHCP.

Which problem are you trying to solve?

best,
Thomas



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