Bug 1368761

Summary: [NetworkManager] - 'nmcli' Bond slaves remain with BOOTPRORTO=dhcp although we configured them with disabled method
Product: Red Hat Enterprise Linux 7 Reporter: Michael Burman <mburman>
Component: NetworkManagerAssignee: Thomas Haller <thaller>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: high Docs Contact:
Priority: high    
Version: 7.2CC: aloughla, atragler, bgalvani, fgiudici, lrintel, rkhan, thaller, vbenes
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: NetworkManager-1.4.0-3 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-03 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: 1304509    

Description Michael Burman 2016-08-21 08:01:47 UTC
Description of problem:
[NetworkManager] - 'nmcli' Bond slaves remain with BOOTPRORTO=dhcp although we configured them with disabled method. 

When using nmcli tool and configuring bond with slaves, the ifcfg files of the bond remain with BOOTPRORTO=dhcp, although we configured it to be disabled.

For example:

nmcli connection add type bond con-name bond1 ifname bond1 mode active-backup; \
nmcli con mod id bond1 ipv4.addresses 10.35.y.x/24 ipv4.gateway 10.35.y.254 ipv4.method manual; \
nmcli connection modify id enp6s0 connection.slave-type bond connection.master bond1 connection.autoconnect yes ipv4.method disabled; \
nmcli connection modify id enp4s0 connection.slave-type bond connection.master bond1 connection.autoconnect yes ipv4.method disabled; \
nmcli connection up id bond1; \
nmcli connection up id enp4s0; \
nmcli connection up id enp6s0

- ifcfg files after the nmcli configurations:

[root@red-vds4 ~]# cat /etc/sysconfig/network-scripts/ifcfg-bond1 
DEVICE=bond1
TYPE=Bond
BONDING_MASTER=yes
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=bond1
UUID=b71d9db8-a2f6-4f82-ab87-e61a1b3bc7c8
ONBOOT=yes
BONDING_OPTS=mode=active-backup
IPADDR=10.35.128.10
PREFIX=24
GATEWAY=10.35.128.254
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
[root@red-vds4 ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp4s0 
# Generated by dracut initrd
NAME="enp4s0"
DEVICE="enp4s0"
ONBOOT=yes
NETBOOT=yes
UUID="72076bff-c506-453c-b3b2-546cd4673223"
IPV6INIT=yes
BOOTPROTO=dhcp
TYPE=Ethernet
MASTER=bond1
SLAVE=yes
[root@red-vds4 ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp6s0 
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp6s0
UUID=97b85155-a07f-4fe2-ab40-99535d3d26fd
DEVICE=enp6s0
ONBOOT=yes
MASTER=bond1
SLAVE=yes


Version-Release number of selected component (if applicable):
NetworkManager-1.0.6-30.el7_2.x86_64
kernel - 3.10.0-327.28.2.el7.x86_64

How reproducible:
100

Steps to Reproduce:
1. configure bond from 2 slaves using nmcli. Set the slaves with 'disabled' ipv4.method

Actual results:
The ifcfg files of the slaves contain BOOTPRORTO=dhcp

Expected results:
bootproto should be disabled. BOOTPROTO=none

Comment 2 Aniss Loughlam 2016-08-22 19:25:57 UTC
same result BOOTPRORTO=dhcp is confirmed with:
uname -r
3.10.0-327.el7.x86_64
NetworkManager -V
1.0.6-27.el7

Comment 3 Thomas Haller 2016-08-23 11:42:42 UTC
note that slave connections never have any IPv4/IPv6 settings, thus NetworkManager will ignore the BOOTPROTO=dhcp setting.


does this cause any problem with initscripts?

Comment 4 Thomas Haller 2016-08-23 12:12:57 UTC
please review: th/ifcfg-writer-clear-ip-for-slave-rh1368761

Comment 5 Beniamino Galvani 2016-08-26 07:21:29 UTC
LGTM

Comment 6 Francesco Giudici 2016-08-26 09:20:46 UTC
+1

Comment 8 Thomas Haller 2016-08-26 13:49:12 UTC
commited to dist-git

Comment 10 Vladimir Benes 2016-09-01 09:00:04 UTC
When ethernet is enslaved into bond BOOTPROTO=dhcp is removed.

Comment 12 errata-xmlrpc 2016-11-03 19:28:54 UTC
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, 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://rhn.redhat.com/errata/RHSA-2016-2581.html