很多時候我們需要手動為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
