linux高級網絡管理
Linux中有3大高級的網絡管理工具:bond、team和bridge。其中bond就是將多塊網卡綁定同一IP地址對外提供服務,可以實現高可用或者負載均衡,,提供更好的性能和擴展性。當然,直接給兩塊網卡設置同一IP地址是不可能的。通過bonding,虛擬一塊網卡對外提供連接,物理網卡被修改為相同的MAC地址。team網絡組是將多個網卡聚合在一起方法,從而實現冗錯和提高吞吐量,它不同於舊版中bonding技術,提供更好的性能和擴展性,team由內核驅動和teamd守護進程實現。bridge網橋就是把一臺機器上的若幹個網絡接口“連接”起來。其結果是,其中一個網口收到的報文會被復制給其他網口並發送出去。以使得網口之間的報文能夠互相轉發。網橋就是這樣一個設備,它有若幹個網口,並且這些網口是橋接起來的。與網橋相連的主機就能通過交換機的報文轉發而互相通信。接下來小編會一一介紹它們每個的用法。
一、bond 網絡接口
1、bond 的三種工作模式
Mode 0 (balance-rr)
輪轉(Round-robin)策略:從頭到尾順序的在每一個slave接口上面發送數據包。本模式提供負載均衡和容錯的能力。
Mode 1 (active-backup)
活動-備份(主備)策略:只有一個slave被激活,當且僅當活動的slave接口失敗時才會激活其他slave。為了避免交換機發生混亂此時綁定的MAC地址只有一個外部端口上可見。
Mode 3 (broadcast)
廣播策略:在所有的slave接口上傳送所有的報文,提供容錯能力。
註意:active-backup、balance-tlb
2、利用nmcli管理bond
a. 添加bonding接口
nmcli connection add type bond con-name mrjbond0 ifname mrjbond0 mode active-backup
b.添加從屬接口
nmcli connection add type bond-slave ifname eth0 master mrjbond0
c.要啟動綁定,首先啟動從屬接口,再啟動綁定
nmcli connection up bond-slave-eth0
nmcli connection up mrjbond0
3、主動備份的配置示例
a.建立綁定接口 bond0 配置文件 :
/etc/sysconfig/network-scripts/ifcfg-mrjbond0
– BOOTPROTO="none"
– IPADDR="10.1.1.250"
– PREFIX=”24”
– ONBOOT="yes"
– BONDING_OPTS=”mode=1 miimon=50”
b.建立 Slave 接口 eth0 配置文件 :
/etc/sysconfig/network-scripts/ifcfg-mrjbond0
– DEVICE="eth0" ####硬件網卡名
– BOOTPROTO="none"
– ONBOOT="yes"
– MASTER="mrjbond0"
– SLAVE="yes“
c.配置系統加載 binding 模塊 :
/etc/modprobe.d/bonding.conf
– alias mrjbond0 bonding
ifenslave mrjbond0 eth0
systemctl stop NetworkManager
systemctl restart network
查看 bonding 狀態
cat /proc/net/bonding/mrjbond0
二、team 網絡組
1、team的種類
broadcast 廣播容錯
roundrobin 輪詢
activebackup 主備
loadbalance 負載均衡
2、通過nmcli設定team
a. 創建網絡接口組team
nmcli connection add type team con-name mrjteam0 ifname mrjteam0 config ‘{"runner":{"name":"activebackup"}}‘
b. 創建port接口
nmcli connection add type team-slave ifname eth0 master mrjteam0
d. 啟動接口
nmcli connection up team-slave-eth0
nmcli connection up mrjteam0
3、測試能否拼通
[[email protected] network-scripts]#ping 192.168.206.148
PING 192.168.206.148 (192.168.206.148) 56(84) bytes of data.
64 bytes from 192.168.206.148: icmp_seq=1 ttl=64 time=0.045 ms
64 bytes from 192.168.206.148: icmp_seq=2 ttl=64 time=0.055 ms
64 bytes from 192.168.206.148: icmp_seq=3 ttl=64 time=0.054 ms
64 bytes from 192.168.206.148: icmp_seq=4 ttl=64 time=0.121 ms
三、bridge 網橋
1、網絡橋接管理的命令
brctl ### 橋接管理命令
– show ### 顯示
– addbr ### 添加網橋
– delbr ### 刪除網橋
– addif ### 添加網橋連接
– delif ### 刪除網橋連接
2、網絡橋接的配置
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 ###設備名,可能不同
ONBOOT=yes
BOOTPROTO=none
BRIDGE=mrjbr0 ###重點,必須說明
vim /etc/sysconfig/network-scripts/ifcfg-mrjbr0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
TYPE=Bridge ###重點,必須說明
IPADDR=192.168.206.148
3、通過nmcli來設定bridge
a. 創建軟件網橋
nmcli connection add type bridge con-name mrjbr0 ifname mrjbr0
nmcli connection modify mrjbr0 ipv4.addresses 192.168.2.66 ipv4.method manual
nmcli connection add type bridge-slave ifname eth0 master mrjbr0
b. 啟動
nmcli connection up bridge-slave-eth0
nmcli connection up mrjbr0
c. 刪除網橋
brctl delbr br0
d. 刪除網橋中的網卡
brctl delif eth0
最後,大家要特別註意文中標註的紅色字體,小編在做第一次實驗時就整錯了哦!
linux高級網絡管理