Bug 1825666
Summary: | ipv6 nfs mount point does not mount automatically at boot, remote-fs-pre.target starts too early and conflicts with network start up | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 8 | Reporter: | Sangam <sababu> |
Component: | NetworkManager | Assignee: | Beniamino Galvani <bgalvani> |
Status: | CLOSED ERRATA | QA Contact: | Filip Pokryvka <fpokryvk> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | 8.1 | CC: | acardace, atragler, bgalvani, fge, fpokryvk, jeharris, jmaxwell, lrintel, msekleta, rkhan, rmetrich, sukulkar, systemd-maint-list, thaller, till, vbenes |
Target Milestone: | rc | Keywords: | Reopened, Triaged |
Target Release: | 8.0 | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | NetworkManager-1.26.0-1.el8 | Doc Type: | No Doc Update |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2021-11-09 19:28:54 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1935910 |
Description
Sangam
2020-04-19 19:23:06 UTC
Hi, This is "expected": by default NetworkManager-wait-online.service doesn't wait for IPv6 IP addresses, this is described in nm-online(1) manpage: -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< -------- By default NetworkManager waits for IPv4 dynamic addressing to complete but does not wait for the auto IPv6 dynamic addressing. To wait for IPv6 addressing to complete, either (1) change the network connection's IPv6 may-fail setting to no, and/or (2) change the IPv6 addressing method to manual or dhcp, to indicate that IPv6 connectivity is expected. -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< -------- Hence, to wait for IPv6 IP addresses, set IPV6_FAILURE_FATAL=yes in /etc/sysconfig/network-scripts/ifcfg-XXX or use corresponding nmcli property "ipv6.may-fail=no". See also BZ 1706646 on RHEL 7 and KCS https://access.redhat.com/solutions/4879291 Renaud. (In reply to Renaud Métrich from comment #1) > Hi, > > This is "expected": by default NetworkManager-wait-online.service doesn't > wait for IPv6 IP addresses, this is described in nm-online(1) manpage: > > -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< > -------- > By default NetworkManager waits for IPv4 dynamic addressing to complete but > does not wait for the auto IPv6 dynamic addressing. To wait for IPv6 > addressing to complete, either (1) change the network connection's IPv6 > may-fail setting to no, and/or (2) change the IPv6 addressing method to > manual or dhcp, to indicate that IPv6 connectivity is expected. > -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< > -------- > > Hence, to wait for IPv6 IP addresses, set IPV6_FAILURE_FATAL=yes in > /etc/sysconfig/network-scripts/ifcfg-XXX or use corresponding nmcli property > "ipv6.may-fail=no". > > See also BZ 1706646 on RHEL 7 and KCS > https://access.redhat.com/solutions/4879291 > > Renaud. Hello Renaud, Thank you for your inputs, I was able to mount the ipv6 nfs mount point with that option set. I will close this BZ as "NOTABUG". I'm reopening this because systemd manpages / docs must clearly explain this behaviour. In particular, when it affects Mount Points: the admin just won't notice it will fail by default, e.g. when a FQDN is used in the /etc/fstab: my-nfs-server:/exports /my-export nfs defaults 0 0 In the example if a IPv6 IP address is returned by the DNS server for "my-nfs-server", the mount will likely fail. Hence, something is definitely wrong with the current behaviour. I think there is nothing to fix on systemd side. Moving to NM. (In reply to Renaud Métrich from comment #3) > I'm reopening this because systemd manpages / docs must clearly explain this > behaviour. > In particular, when it affects Mount Points: the admin just won't notice it > will fail by default, e.g. when a FQDN is used in the /etc/fstab: > > my-nfs-server:/exports /my-export nfs defaults 0 0 > > In the example if a IPv6 IP address is returned by the DNS server for > "my-nfs-server", the mount will likely fail. > > > Hence, something is definitely wrong with the current behaviour. Hi Renaud, can you please elaborate on what you would improve or explain better in the NetworkManager or systemd documentation? Hi Beniamino, Below is where the issue is: systemd.special(7) states: -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< -------- network-online.target [...] What precisely this requires is left to the implementation of the network managing service. -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< -------- This is already obscure, the admin must understand that on RHEL8, it's NetworkManager and achieved through exectuing NetworkManager-wait-online.service. First I think that a patch should be made in systemd manpage to clear state NetworkManager is the network managing service. Then on the NetworkManager side, we have the following man page referred inside NetworkManager-wait-online.service: "Documentation=man:nm-online(1)" property nm-online(1) states: -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< -------- By default NetworkManager waits for IPv4 dynamic addressing to complete but does not wait for the auto IPv6 dynamic addressing. To wait for IPv6 addressing to complete, either (1) change the network connection's IPv6 may-fail setting to no, and/or (2) change the IPv6 addressing method to manual or dhcp, to indicate that IPv6 connectivity is expected. -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< -------- This is also obscure: 1. we don't explain how to change "network connection's IPv6 may-fail setting to no" 2. we don't explain how to "change the IPv6 addressing method to manual or dhcp" I believe we should clearly state that: 1. is "ipv6.may-fail = no" 2. is "ipv6.method" property Renaud. Hi Renaud, I updated the nm-online documentation in the following way: https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/25583de20ba0df49d9364c580011d4c75c3be8f8 Note that point 2. (changing ipv6.method) is no longer mentioned because I think it's wrong to suggest to switch from IPv6 autoconf to manual addressing to solve a service ordering issue. The right solution is to set ipv6.may-fail=no. What do you think? Hi Beniamino, yes, this makes perfect sense. For some reason this got out of my radar. this is only a fix to the documentation, and it was already done before 1.26.0 release (and thus is already in rhel-8.3) But it slipped through the cracks, so it will be properly targeted for rhel-8.5... Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Moderate: NetworkManager security, bug fix, and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2021:4361 |