配置secondary ip
本指南将说明如何在RHEL / CentOS 7/8服务器上的网络接口上添加辅助IP地址。有多种方法可以将辅助IP地址添加到RHEL / CentOS网络接口。本指南将讨论手动创建网络配置文件以及使用网络管理器CLI工具nmcli。
nmcli创建Secondary IP
该方法使用nmcli命令行工具添加secondary ip,检查现有的网络连接配置文件。
[root@localhost ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens33 c96bc909-188e-ec64-3a96-6a90982b08ad ethernet ens33
为ens33的connection连接添加secondary IP
nmcli con mod ens33 +ipv4.addresses "192.168.92.90/24"
ip配置被添加到ens33网卡的配置文件中
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
#UUID=211e1890-114d-4cc3-83ec-9f4780b6ea40
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.92.80
PREFIX=24
GATEWAY=192.168.92.2
DNS1=8.8.8.8
DNS2=114.114.114.114
IPADDR1=192.168.92.90
PREFIX1=24
UUID=c96bc909-188e-ec64-3a96-6a90982b08ad
可以看到新增了IPADDR1=192.168.92.90相关配置。
#重启网络,验证IP配置成功:
systemctl restart network
#查看ip已经配置成功
[root@localhost ~]# ip a | grep ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.92.80/24 brd 192.168.92.255 scope global noprefixroute ens33
inet 192.168.92.90/24 brd 192.168.92.255 scope global secondary noprefixroute ens33
删除Secondary IP
nmcli con mod ens33 -ipv4.addresses "192.168.92.90/24"
systemctl restart network
手动添加辅助IP地址
该方法手动创建子接口配置文件,当前网卡配置信息如下:
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:e6:49:d5 brd ff:ff:ff:ff:ff:ff
inet 192.168.92.80/24 brd 192.168.92.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::3367:67ed:8c03:36ce/64 scope link tentative noprefixroute dadfailed
valid_lft forever preferred_lft forever
inet6 fe80::a137:3b16:503b:12e9/64 scope link noprefixroute
valid_lft forever preferred_lft forever
这里将分配辅助IPv4地址的网络接口是ens33。该接口配置文件位于/etc/sysconfig/network-scripts 目录。
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=211e1890-114d-4cc3-83ec-9f4780b6ea40
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.92.80
PREFIX=24
GATEWAY=192.168.92.2
DNS1=8.8.8.8
DNS2=114.114.114.114
创建子接口配置文件
cat > /etc/sysconfig/network-scripts/ifcfg-ens33:1 <<EOF
DEVICE=ens33:1
Type=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=none
IPADDR=192.168.92.90
PREFIX=24
EOF
重启网络确认secondary IP配置成功
systemctl restart network
查看IP信息
[root@localhost ~]# ip a |grep ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.92.80/24 brd 192.168.92.255 scope global noprefixroute ens33
inet 192.168.92.90/24 brd 192.168.92.255 scope global secondary noprefixroute ens33:1
确认从其他节点可以访问该Secondary IP
[root@localhost ~]# ssh 192.168.92.90
[root@localhost ~]# ping 192.168.92.90
删除Secondary IP,直接删除配置文件即可,然后重启网络
systemctl restart network
临时配置Secondary IP
重启网络或主机配置Secondary IP将丢失
# ip addr add 192.168.92.90/24 dev ens33
[root@localhost ~]# ip a | grep ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.92.80/24 brd 192.168.92.255 scope global noprefixroute ens33
inet 192.168.92.90/24 scope global secondary ens33
#删除辅助ip
# ip addr del 192.168.92.90/24 dev ens33