Bootstrap FreeKB - Network Manager (nmcli) - Add Secondary IP Addresses using the nmcli modify command
Network Manager (nmcli) - Add Secondary IP Addresses using the nmcli modify command


apt-get, dnf or yum can be used to install the NetworkManager package which includes nmcli.

dnf install NetworkManager

 

And then start and enable NetworkManager.

systemctl start NetworkManager
systemctl enable NetworkManager

 

The nmcli connection show command can be used to list your network interfaces.

~]# nmcli connection show
NAME  UUID                                  TYPE      DEVICE 
eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0

 

Specifying a connection will show the settings for the connection.

]# nmcli connection show eth0 | grep -i ipv4
ipv4.method:                            manual
ipv4.dns:                               10.11.12.13,10.11.12.14
ipv4.dns-search:                        example.com
ipv4.dns-options:                       timeout:2
ipv4.dns-priority:                      0
ipv4.addresses:                         10.11.12.15/22
ipv4.gateway:                           10.0.0.1
ipv4.routes:                            --
ipv4.route-metric:                      -1
ipv4.route-table:                       0 (unspec)
ipv4.routing-rules:                     --
ipv4.replace-local-rule:                -1 (default)
ipv4.ignore-auto-routes:                no
ipv4.ignore-auto-dns:                   no
ipv4.dhcp-client-id:                    --
ipv4.dhcp-iaid:                         --
ipv4.dhcp-timeout:                      0 (default)
ipv4.dhcp-send-hostname:                yes
ipv4.dhcp-hostname:                     --
ipv4.dhcp-fqdn:                         --
ipv4.dhcp-hostname-flags:               0x0 (none)
ipv4.never-default:                     no
ipv4.may-fail:                          yes
ipv4.required-timeout:                  -1 (default)
ipv4.dad-timeout:                       -1 (default)
ipv4.dhcp-vendor-class-identifier:      --
ipv4.link-local:                        0 (default)
ipv4.dhcp-reject-servers:               --
ipv4.auto-route-ext-gw:                 -1 (default)

 

Likewise, the ip address command should show the IP address bound to the interface.

~]# ip address | grep inet
    inet 10.11.12.15/22 brd 10.1.2.3 scope global noprefixroute eth0

 

The nmcli connection modify <interface name> command can be used to add one or more secondary IP addresses to the interface.

nmcli connection modify eth0 +ipv4.addresses 10.11.12.16/22

 

Now, the nmcli connection show command should show the secondary IP addresses that were added.

]# nmcli connection show eth0 | grep -i ipv4.addresses
ipv4.addresses:                         10.11.12.15/22, 10.11.12.16/22

 

But the ip address command should not yet include the secondary IP addresses.

~]# ip address show eth0 | grep inet
    inet 10.11.12.15/22 brd 10.1.2.3 scope global noprefixroute eth0

 

The nmcli device reapply <interface name> command must be used for this change to take effect on the interface.

]# nmcli device reapply eth0
Connection successfully reapplied to device 'eth0'.

 

But the ip address command should not yet include the secondary IP addresses.

~]# ip address | grep inet
    inet 10.11.12.15/22 brd 10.1.2.3 scope global noprefixroute eth0
    inet 10.11.12.16/22 brd 10.1.2.3 scope global secondary noprefixroute eth0



Did you find this article helpful?

If so, consider buying me a coffee over at Buy Me A Coffee



Comments


Add a Comment


Please enter 8acbee in the box below so that we can be sure you are a human.