面對(duì)某些客戶做視頻、網(wǎng)站類業(yè)務(wù)場景,一部分機(jī)器會(huì)因?yàn)榱髁窟^大,導(dǎo)致單個(gè)網(wǎng)卡流量打滿,所以需要配置多個(gè)網(wǎng)卡,每個(gè)網(wǎng)卡配置一個(gè)公網(wǎng)IP地址,一般來說,eth0配置一個(gè)公網(wǎng)IP,eth1配置一個(gè)公網(wǎng)IP+一個(gè)內(nèi)網(wǎng)IP。
(資料圖)
聲明:由于業(yè)務(wù)需要綁定雙網(wǎng)卡的同時(shí),第一塊網(wǎng)卡還存在ipv6地址,故此centos8系統(tǒng)可以使用nmcli 命令行形式進(jìn)行配置;centos6和7因版本bug不兼容,使用配置文件形式進(jìn)行處理。
網(wǎng)絡(luò)拓?fù)鋱D:一、centos8系統(tǒng)01查看連接的網(wǎng)卡信息nmcli con showenp1s0f0 xxx ethernet enp1s0f0 enp1s0f1 xxx ethernet enp1s0f1
nmcli network #查看networkmanager是否接入網(wǎng)絡(luò)配置,如返回結(jié)果為enabled則表示接入nmcli n #縮寫接入networkmanager命令nmcli n on 取消接入nmcli n off顯示networkmanager狀態(tài)nmcli g s #這里直接用縮寫比較方便查看當(dāng)前網(wǎng)卡連接狀態(tài)(簡單來說就是你配置了幾塊在運(yùn)行的網(wǎng)卡)nmcli con show刪除網(wǎng)卡nmcli con del xxx(網(wǎng)卡名稱或uuid)添加網(wǎng)卡nmcli connection add ifname 網(wǎng)卡名 autoconnect yes type ethernet ipv4.addresses ip地址/子網(wǎng)掩碼 ipv4.gateway 網(wǎng)關(guān)重啟網(wǎng)絡(luò)配置文件nmcli con reload重啟網(wǎng)卡nmcli con up 網(wǎng)卡名修改網(wǎng)卡配置信息:# 修改指定網(wǎng)卡的ip地址和子網(wǎng)掩碼nmcli connection modify 網(wǎng)卡名 ipv4.addresses ip地址/子網(wǎng)掩碼# 修改指定網(wǎng)卡的ip地址和子網(wǎng)掩碼以及網(wǎng)關(guān)nmcli connection modify 網(wǎng)卡名 ipv4.addresses ip地址/子網(wǎng)掩碼 ipv4.gateway 網(wǎng)關(guān)# 修改指定網(wǎng)卡的ip地址和子網(wǎng)掩碼、網(wǎng)關(guān)以及DNSnmcli connection modify 網(wǎng)卡名 ipv4.addresses ip地址/子網(wǎng)掩碼 ipv4.gateway 網(wǎng)關(guān) ipv4.dns dns地址# 添加第二個(gè)ipnmcli connection modify eth1 +ipv4.addresses ip地址/子網(wǎng)掩碼# 刪除第二個(gè)ipnmcli connection modify eth1 -ipv4.addresses ip地址/子網(wǎng)掩碼# 添加第二個(gè)DNSnmcli connection modify eth1 +ipv4.dns dns地址# 刪除第二個(gè)DNSnmcli connection modify eth1 +ipv4.dns dns地址# 修改為靜態(tài)配置,默認(rèn)是 autonmcli c m eth1 ipv4.method manual# 將 IPv6 禁用nmcli c m ens22 ipv6.method disabled# 開機(jī)啟動(dòng)nmcli c m ens22 connection.autoconnect yes
02刪除所有配置
(注意,此處會(huì)斷網(wǎng),所以操作的時(shí)候?qū)蓚€(gè)網(wǎng)卡分別操作,或者在遠(yuǎn)程控制臺(tái)操作)
nmcli con del xxx #第一塊網(wǎng)卡nmcli con del xxx #第二塊網(wǎng)卡
注意:確認(rèn)在云上的oss外網(wǎng)地址綁定的是第幾塊網(wǎng)卡,如果是第一塊網(wǎng)卡,建議先刪除第二塊網(wǎng)卡,等到第二塊網(wǎng)卡綁定成功后,遠(yuǎn)程可以登陸,在對(duì)一塊網(wǎng)卡進(jìn)行刪除操作
03新創(chuàng)建兩個(gè)網(wǎng)卡,其中網(wǎng)卡2包含兩個(gè)ip(ipv4)
nmcli con add type ethernet con-name xxx ifname xxx ipv4.method manual ipv4.address 198.xxx/24 ipv4.gateway 198.xxx ipv4.dns 1.1.1.1nmcli con add type ethernet con-name xxx ifname xxx ipv4.method manual ipv4.addresses 51.xxx/27,192.xxx/24 ipv4.dns 8.8.8.8
注意:這里ifname前后的網(wǎng)卡名稱并不一樣,不要寫錯(cuò)了,要根據(jù)實(shí)際情況通過命令ip a查看具體網(wǎng)卡信息在操作
04對(duì)網(wǎng)卡2分別增加路由表以及對(duì)應(yīng)策略路由(+ 是新增加配置,-是減少配置,無符號(hào)這是替代)
nmcli con modify 網(wǎng)卡名 +ipv4.routes "192.168.0.0/16 192.168.xxx.1,0.0.0.0/0 網(wǎng)卡2ip地址 table=100 src=xxx"nmcli con modify 網(wǎng)卡名 +ipv4.routing-rules "priority 100 from 51.xxx/27 table 100"
注意:這里的table 100 指的是(table_id) 路由表,如果不指定就會(huì)加入到默認(rèn)路由表中
05加載配置nmcli con reload
06重新激活對(duì)應(yīng)的網(wǎng)卡
nmcli con up 網(wǎng)卡1名稱nmcli con up 網(wǎng)卡2名稱
07查看默認(rèn)路由信息
ip route show192.168.0.0/16 via 192.168.xxx.1 dev xxx proto static metric 104
08查看路由表100的路由信息
ip route show table 100default via 51.xxx dev 網(wǎng)卡2名稱 proto static src 網(wǎng)卡2ip地址 metric 104 51.xxx dev 網(wǎng)卡2名稱 proto static scope link src 網(wǎng)卡2ip地址 metric 104
09查看策略路由信息
ip rule show100: from 51.xxx/27 lookup 100
10配置第一塊網(wǎng)卡 ipv6地址
[root@xxx network-scripts]# cat ifcfg-ethxxTYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=noneIPADDR=198.xxxPREFIX=24GATEWAY=198.xxxDNS1=1.1.1.1DEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=xxxUUID=xxxDEVICE=xxxONBOOT=yesNS1=2001:xxxIPV6ADDR=xxx/64IPV6INIT=yesIPV6_DEFAULTGW=2001:xxx:00ff
11重啟網(wǎng)卡1
nmcli con reloadnmcli con up 網(wǎng)卡1名稱
12測試ipv6 地址是否生效
[root@xxx network-scripts]# ping6 2001:xxx:00ffPING 2001:xxx:00ff(2001:xxx:ff) 56 data bytes64 bytes from 2001:xxx:ff: icmp_seq=1 ttl=64 time=0.577 ms64 bytes from 2001:xxx:ff: icmp_seq=2 ttl=64 time=0.534 ms64 bytes from 2001:xxx:ff: icmp_seq=3 ttl=64 time=0.747 ms^C--- 2001:xxx:00ff ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time 2070msrtt min/avg/max/mdev = 0.534/0.619/0.747/0.094 ms
二、centos6和7系統(tǒng)
內(nèi)?IP: 192.168.xxx
內(nèi)??關(guān): 192.168.xxx.1
公?ip: 15.xxx
公???: 255.255.255.192
公??關(guān): 15.xxx
01配置eth1多ip,公網(wǎng)+內(nèi)網(wǎng) ip地址(ipv4)cat /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1BOOTPROTO=staticIPADDR=192.168.xxxIPADDR1=15.xxxNETMASK=255.255.255.0NETMASK1=255.255.255.192ONBOOT=yes
02配置路由(ipv4)
cat /etc/sysconfig/network-scripts/route-eth1 default via 15.xxx dev eth1 src 15.xxx table wan1 192.168.0.0/16 via 192.168.xxx.1
03配置路由策略(ipv4)
cat /etc/sysconfig/network-scripts/rule-eth1 from 15.xxx table wan1 pref 100
04eth0網(wǎng)卡增加IPv6配置
[root@xxx network-scripts]# cat ifcfg-eth0# Created by cloud-init on instance boot automatically, do not edit.#BOOTPROTO=staticDEVICE=eth0HWADDR=0C:xxx:44ONBOOT=yesSTARTMODE=autoTYPE=EthernetUSERCTL=noPROXY_METHOD=noneBROWSER_ONLY=noDEFROUTE=yesIPV4_FAILURE_FATAL=noNAME=eth0UUID=xxxIPADDR=145.xxxNETMASK=255.255.255.0GATEWAY=145.xxxDNS1=1.1.1.1NS1=2001:41d0:xxx::1IPV6ADDR=2001:xxx::/64IPV6INIT=yes#IPV6_DEFAULTGW=2001:xxxx:00ff #注釋掉ipv6網(wǎng)關(guān)
05配置eth0 ipv6路由
[root@xxx network-scripts]# cat route6-eth0 2001:xxxx:00ff dev eth0default via 2001:xxxx:00ff
06關(guān)閉NetworkManager,重啟network
因centos6和7的系統(tǒng)和centos8系統(tǒng)使用nmcli 命令配置默認(rèn)網(wǎng)關(guān)0.0.0.0/0 地址有bug,不支持/0掩碼,故關(guān)閉NetworkManager,使用network
systemctl stop NetworkManagersystemctl disable NetworkManagersystemctl restart network
07測試網(wǎng)卡配置是否生效
[root@xxx network-scripts]# ping6 2001:xxx:00ff PING 2001:xxx:00ff (2001:xxx:00ff ) 56 data bytes64 bytes from 2001:xxx:00ff: icmp_seq=1 ttl=64 time=0.904 ms64 bytes from 2001:xxx:00ff: icmp_seq=2 ttl=64 time=1.24 ms64 bytes from 2001:xxx:00ff: icmp_seq=3 ttl=64 time=0.670 ms^C--- 2001:xxx:00ff ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time 2001msrtt min/avg/max/mdev = 0.670/0.940/1.246/0.236 ms使用測試工具測試IPV6地址是否有效 :https://ipw.cn/ipv6ping/
三、總結(jié)
多公網(wǎng)IP的優(yōu)勢主要包括:
提高了網(wǎng)絡(luò)安全性:多公網(wǎng)IP可以將不同的網(wǎng)絡(luò)設(shè)備分別使用不同的公網(wǎng)IP,從而增強(qiáng)了網(wǎng)絡(luò)安全性,也防止了黑客攻擊和網(wǎng)絡(luò)入侵。
保障了業(yè)務(wù)連續(xù)性:尤其是在做網(wǎng)站或者視頻類的業(yè)務(wù)場景,多公網(wǎng)IP極大的避免了當(dāng)某個(gè)IP出現(xiàn)故障時(shí),可以使用備用的公網(wǎng)IP,保障業(yè)務(wù)的連續(xù)性。
提高網(wǎng)絡(luò)質(zhì)量:多公網(wǎng)IP可以更充分的分配網(wǎng)絡(luò)流量,從而減少網(wǎng)絡(luò)擁堵,提高用戶的觀看體驗(yàn)。
便于管理:可根據(jù)不同的業(yè)務(wù)需求進(jìn)行資源的分配和管理,比如視頻業(yè)務(wù)用IP1,音頻類業(yè)務(wù)用IP2,后續(xù)也方便運(yùn)維開發(fā)等人員進(jìn)行監(jiān)控和維護(hù)。
標(biāo)簽: