Linux網路的高階控制(鏈路聚合及網橋)
一、鏈路聚合
鏈路聚合(Link Aggregation),是指將多個物理埠捆綁在一起,成為一個邏輯埠,以實現出/入流量在各成員埠中的負荷分擔。
1.環境:兩塊網絡卡的虛擬機器,則是兩個獨立的網路介面,將幾個介面連線起來,以就叫鏈路聚合 2.鏈路聚合作用:1)提高穩定性 ;2)提高網路頻寬(有兩個千兆網絡卡,要1500兆) 3.鏈路聚合方式:1)bond ;2)team 二、bond--->最多連兩塊網絡卡。功能比team少 1)工作方式0,平衡輪詢模式:兩塊網絡卡輪流接收資料包 2)工作方式1,主備式:一個網絡卡工作另一網絡卡備用-----> 速率不變,穩定性提高 3)工作方式3,廣播容錯(帶廣播功能的輪換):所有資料包都通過介面廣播 1.命令方式聚合步驟 a)關機狀態加兩塊網絡卡 b)開機清除網絡卡初始配置 c)新增bond鏈路 ----->此時是虛擬介面,網路ping不通 nmcli connection add con-name bond0 ifname bond0 type bond mode active-backup ip4 172.25.254.xx/24 d)給bond鏈路插入兩塊真實網絡卡 ----->網通 nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0 ###master指定介面bond0 nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0 ###bond-slave實現網絡卡陣列服務測試:
2.文字方式聚合 a) vim /etc/sysconfig/network-scripts/ifcfg-bond0 ###新增鏈路 DEVICE=bond0 ##裝置為bond0 ONBOOT=yes BOOTPROTO=none IPADDR=172.25.254.xx PREFIX=24 TYPE=Bond ##鏈路型別為bond介面 BONDING_OPTS=mode=active-backup ##介面工作模式為主動備份式 BONDING_MASTER=yes b) vim /etc/sysconfig/network-scripts/ifcfg-eth0 ###插入真實網絡卡0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=none MASTER=bond0 ###為誰服務 SLAVE=yes ##master主;slave輔助 c) vim /etc/sysconfig/network-scripts/ifcfg-eth1 ##插入真實網絡卡1 DEVICE=eth1 ONBOOT=yes BOOTPROTO=none MASTER=bond0 SLAVE=yes d) systemctl restart network ###啟動底層服務 systemctl restart NetworkManager ###重啟上層控制服務
3.刪除bond介面
nmcli connection delete bond0 ##刪除bond0介面
nmcli connection delete eth0 ##刪除eth0網絡卡介面
nmcli connection delete eth1 ##刪除eth1網絡卡介面
三、team ------>最多可連8塊網絡卡 1.聚合方式四種: a)broadcast 廣播容錯模式:所有資料包都通過介面廣播 b)roundrobin 平衡輪詢模式:多塊網絡卡輪流接收資料包 c)activebackup 主動備份模式:只有一塊網絡卡工作,當工作中的網絡卡出現問題,其他網絡卡頂替其工作 d)loadbalance 負載均衡模式:該模式判斷不同網絡卡的負載,給負載最少的網絡卡傳送資料包 2.命令方式聚合步驟: a)關機狀態加兩塊網絡卡 b)開機清除網絡卡初始配置 c)新增team鏈路----->此時是虛擬介面,網路ping不通 nmcli connection add con-name team0 ifname team0 type team config '{"runner":{"name":"activebackup"}}' ip4 172.25.254.xx/24 d)給bond鏈路插入真實網絡卡--->網通 nmcli connection add con-name eth0 ifname eth0 type team-slave master team0 nmcli connection add con-name eth1 ifname eth1 type team-slave master team0測試:
3.文字方式 a) vim /etc/sysconfig/network-scripts/ifcfg-team0 DEVICE=team0 ONBOOT=yes BOOTPROTO=none IPADDR=172.25.254.xx PREFIX=24 TEAM_CONFIG='{"runner":{"name":"activebackup"}}' ###虛擬介面配置 TYPE=Team ###鏈路型別 b) vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=none DEVICETYPE=TeamPort ###型別=team介面 TEAM_MASTER=team0 ###為誰服務 c)vim /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 ONBOOT=yes BOOTPROTO=none DEVICETYPE=TeamPort TEAM_MASTER=team0 d) systemctl restart network ###啟動底層服務 systemctl restart NetworkManager ###重啟上層控制服務
4. 刪除team介面
nmcli connection delete team0 ##刪除team0介面
nmcli connection delete eth0 ##刪除eth0網絡卡介面
nmcli connection delete eth1 ##刪除eth1網絡卡介面
四、配置網路橋接 網路橋接用網路橋實現共享上網。主機和客戶機,除了利用軟體外,還可以用系統自帶的網路橋建立連線 虛擬機器通過網路橋可以實現對真機真實網絡卡的控制 環境(無網橋): ##無網橋狀況,虛擬機器介面資料需真機的核心做NAT後才可從真實接口出來 關閉所有虛擬機器; 備份: cp /etc/sysconfig/network-scripts/ifcfg-br0 /mnt cp /etc/sysconfig/network-scripts/ifcfg-enp0s25 /mnt 刪除除了Bridge中virbr0、virbr1外的所有網路:nm-connection-editor reboot後nm-connection-editor配置網路
刪除後: 1.永久配置網橋 1)vim /etc/sysconfig/network-scripts/ifcfg-enp0s25 ###真實網絡卡配置檔案 DEVICE=enp0s25 ###真實網絡卡 ONBOOT=yes BOOTPROTO=none BRIDGE=br0 ###在真實網絡卡上開啟一個br0介面;共享真實網絡卡的控制權(輸入、輸出) 2)vim /etc/sysconfig/network-scripts/ifcfg-br0 ###網橋配置檔案 TYPE=Bridge ###網橋 DEVICE=br0 BOOTPROTO=none IPADDR=172.25.254.xx PREFIX=24 ONBOOT=yes 3)systemctl restart network systemctl restart NetworkManager.service 4)brctl show ###檢視網橋 注:比較有無網橋安裝虛擬機器,發現有網橋狀態,建立虛擬機器網路速度更快。因為有網橋就不用經過NAT轉換,讀取速度更快 2.臨時配置網橋(虛擬機器) 1)建立網橋介面 brctl addbr br0 ###此時網ping不通;brctl show檢視有網橋,無網絡卡 2)設定網橋IP ifconfig br0 172.25.254.xx/24 ###自己主機通,其他主機不通 3)橋接物理網絡卡 brctl addif br0 eth0 ###將br0插到eth0裝置;其他主機也通
刪除臨時配置: 1)刪除橋接介面的網絡卡資訊 brctl delif br0 eth0 ##將br0從eth0裝置取下 2)關閉橋接介面 ifconfig br0 down ##停止橋接介面工作後才能刪除 3)刪除網橋介面 brctl delbr br0