RHEL7以後,網絡方面變化比較大,其原因是網絡服務全部都由NetworkManager管理了,而在6版本里一般都是關閉NetworkManager,主要還是因爲不夠成熟。下面說明下在rhel7和centos7使用nmcli命令管理配置網絡的方法。
rhel7使用ip link代替ifconfig命令,使用teamd處理雙網卡聚合,使用nmcli命令行配置網絡。
nmcli創建的網絡連接是任意的,類型多樣包含bond、bridge、vlan、wifi、bluetooth、ethernet、***等等,名字可以任意取。設備和連接是一對多的關係,但每個設備同一時間只能對應一個啓動的連接。
nmcli的一般用法:
nmcli dev status //查看系統現有網絡設備的連接狀態nmcli conn show //查看已有連接
nmcli conn delete UUID1 UUID2 UUID3 //刪除不需要的連接
nmcli dev connect eno16777736 //連接設備eno16777736,該操作類似於接上網卡網線
nmcli dev disconnect eno16777736 //斷開設備eno16777736,類似於拔掉網線
nmcli conn down eno16777736 //關閉連接eno16777736
nmcli conn up eno16777736 //打開連接eno16777736
nmcli dev show //查看設備詳細信息
創建、命名連接,並做基本配置
nmcli conn add type ethernet con-name ens160 ifname ens160 //創建新連接con-name是ens160,也可以根據個人習慣改爲eth0. nmcli conn mod ens160 ipv4.method manual //配置IP地址獲取方式爲手動 nmcli conn mod ens160 ipv4.addresses "10.x.x.x/24" //配置IP和掩碼 nmcli conn mod ens160 ipv4.gateway "10.x.x.254" //配置網關 nmcli conn mod ens160 ipv4.dns "x.x.x.x" //配置dns nmcli conn mod ens160 connection.autoconnect yes //配置開機自動啓動 nmcli conn up ens160 //啓動網卡
配置網卡bond
1. 創建主接口
nmcli con add type bond con-name bond0 ifname bond0 mode active-backup
2. 給主接口分配ip地址
nmcli con mod bond0 ipv4.addresses '11.16.25.100/24'
nmcli con mod bond0 ipv4.method manual
nmcli con mod bond0 connection.autoconnect yes
3. 創建從接口
nmcli con add type bond-slave ifname eno1 master bond0
nmcli con add type bond-slave ifname eno2 master bond0
4. 開啓主接口和從接口
nmcli con up bond-slave-eno2
nmcli con up bond-slave-eno1
nmcli con up bond0
網卡teaming配置
#nmcli con add type team con-name team0 ifname team0 config '{"runner": {"name": "activebackup"}}'
#nmcli con mod team0 ipv4.addresses '192.168.0.100/24'
#nmcli con mod team0 ipv4.method manual
#nmcli con add type team-slave con-name team0-port1 ifname eno1 master team0
#nmcli con add type team-slave con-name team0-port2 ifname eno2 master team0
#teamdctl team0 state(查看狀態)
linux網卡聚合一般有以下幾種模式
broadcast 傳輸來自所有端口的包
roundrobin 以輪循的方式傳輸所有端口的包
activebakup 這是一個故障遷移程序,監控鏈接更改並選擇活動的端口進行傳輸
loadbalance 監控流量並使用哈希函數以嘗試在選擇傳輸端口的時候達到完美均衡
lacp 實施802.3ad 鏈路聚合協議,可以使用與 loadbalance 運行程序相同的傳輸端口
如果聚合採用的是lacp模式,網絡中使用PXE裝機會出現問題,因爲PXE只會初始化一塊網卡去DHCP申請地址,在這個過程中去修改交換機配置顯然是不合適的,只能選擇動態聚合。注意lacp模式需要接入交換機支持。