1. 程式人生 > >linux高級網絡管理

linux高級網絡管理

bond bridge team

Linux中有3大高級的網絡管理工具:bondteambridge。其中bond就是將多塊網卡綁定同一IP地址對外提供服務,可以實現高可用或者負載均衡,,提供更好的性能和擴展性。當然,直接給兩塊網卡設置同一IP地址是不可能的。通過bonding,虛擬一塊網卡對外提供連接,物理網卡被修改為相同的MAC地址。team網絡組是將多個網卡聚合在一起方法,從而實現冗錯和提高吞吐量,它不同於舊版中bonding技術,提供更好的性能和擴展性,team由內核驅動和teamd守護進程實現。bridge網橋就是把一臺機器上的若幹個網絡接口“連接”起來。其結果是,其中一個網口收到的報文會被復制給其他網口並發送出去。以使得網口之間的報文能夠互相轉發。網橋就是這樣一個設備,它有若幹個網口,並且這些網口是橋接起來的。與網橋相連的主機就能通過交換機的報文轉發而互相通信。接下來小編會一一介紹它們每個的用法。

一、bond 網絡接口

1bond 的三種工作模式

Mode 0 (balance-rr)

輪轉(Round-robin)策略:從頭到尾順序的在每一個slave接口上面發送數據包。本模式提供負載均衡和容錯的能力。

Mode 1 (active-backup)

活動-備份(主備)策略:只有一個slave被激活,當且僅當活動的slave接口失敗時才會激活其他slave。為了避免交換機發生混亂此時綁定的MAC地址只有一個外部端口上可見。

Mode 3 (broadcast)

廣播策略:在所有的slave接口上傳送所有的報文,提供容錯能力。

註意:active-backupbalance-tlb

balance-alb模式不需要交換機的任何特殊配置。其他綁定模式需要配置交換機以便整合鏈接

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 網絡組

1team的種類

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高級網絡管理