Linux 如何设置浮动IP地址
很多时候我们需要手动为Linux 服务器配置地址或者是浮动地址,下面介绍ip、ifconfig 两个命令分别如何添加和删除IP地址。
ip命令添加和删除浮动ip#
ip addr add 192.168.10.202/26 dev enp4s0f0 //添加ip或vip
ip addr del 192.168.10.202/26 dev enp4s0f0 //删除ip或vip
ifconfig命令添加和删除浮动ip#
几种命令大同小异
ifconfig enp4s0f0:0 192.168.10.202
ifconfig enp4s0f0:0 192.168.10.202/26
ifconfig enp4s0f0:0 192.168.10.202 netmask 255.255.255.192
ifconfig enp4s0f0:0 192.168.10.202 netmask 255.255.255.192 broadcast 192.168.10.255
注:在不指定子网掩码时默认的子网掩码可能比实际需要的小,而使得路由表出现问题,导致网络不通。
添加多个浮动ip#
ifconfig enp4s0f0:0 192.168.10.202 netmask 255.255.255.192 up
ifconfig enp4s0f0:1 192.168.10.203 netmask 255.255.255.192 up
后面的up可以不写
ifconfig删除浮动ip#
ifconfig enp4s0f0 del 192.168.10.202
配置和删除IPv6地址#
方法一(重启后依然生效)#
nmcli conn up 'ens192' ipv6.addresses 2409:8028:08F1:1204::198/64 ipv6.method manual
以上适用于用NetworkManager管理的网络的系统
方法二(临时)#
ifconfig enp4s0f0 inet6 add 2409:8028:08F1:1204::198/64
ifconfig enp4s0f0 inet6 del 2409:8028:08F1:1204::198/64
或
ifconfig enp4s0f0 add 2409:8028:08F1:1204::198/64
ifconfig enp4s0f0 del 2409:8028:08F1:1204::198/64
方法三(临时)#
ip -6 addr add 2409:8028:08F1:1204::198/64 dev enp4s0f0
ip -6 addr del 2409:8028:08F1:1204::198/64 dev enp4s0f0
配置默认路由(临时)#
配置完ipv6地址还需要指定网关,通过明天添加的网关重启会失效。
route add -A inet6 default gw 2409:8028:8F1:1204::1 dev enp4s0f0
修改网卡配置文件#
将ipv6地址写入到网卡配置文件,确保重启依然有效
cat /etc/sysconfig/network-scripts/ifconfig-enp4s0f0
IPV6ADDR=2409:8028:08F1:1204::198/64
修改IPV6默认路由配置文件#
将ipv6默认路由写入路由配置文件,确保重启后依然有效
cat /etc/sysconfig/network-scripts/route6-enp4s0f0
::/0 via 2409:8028:8F1:1204::1 dev enp4s0f0
通过配置文件实现一个网卡多ip地址#
复制ifcfg-enp4s0f0改名为ifcfg-enp4s0f0:0
[root@host ]#cd /etc/sysconfig/network-scripts/
[root@host ]#cp ifcfg-enp4s0f0 ifcfg-enp4s0f0:0
编辑ifcfg-enp4s0f0:0#
[root@host network-scripts]# vim ifcfg-enp4s0f0:0
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPADDR=192.168.10.202
PREFIX=26
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp4s0f0:0
UUID=7377e626-f02f-42f9-9909-c5c6918bc364
DEVICE=enp4s0f0:0
ONBOOT=yes
启动网卡enp4s0f0:0#
[root@host network-scripts]# ifup enp4s0f0:0
RTNETLINK answers: File exists
上面这个提示应该是在启动网卡时会自动添加路由,但路由已经存在造成的,不影响。
[root@host network-scripts]# ip a
2: enp4s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether a0:b3:cc:e5:8b:1a brd ff:ff:ff:ff:ff:ff
inet 192.168.10.201/26 brd 192.168.10.255 scope global enp4s0f0
valid_lft forever preferred_lft forever
inet 192.168.10.202/26 brd 192.168.10.255 scope global secondary enp4s0f0:0
valid_lft forever preferred_lft forever
inet6 fe80::a2b3:ccff:fee5:8b1a/64 scope link
valid_lft forever preferred_lft forever
要删除192.168.10.202这个地址只需要执行:
ifdown enp4s0f0:0
永远年轻,永远热泪盈眶