1、虛擬網卡實現一個網卡多個地址(測試環境為虛擬機),此處使用eth1網卡,并且將eth1的IP設置成固定的,其實還可以設置成DHCP自動獲取,這就是Linux強大之處。但是由eth1虛擬出來的兩張網卡不能使用DHCP自動獲取。具體步驟如下(設置的IP看個人喜歡)
[root@localhost network-scripts]# cat ifcfg-eth1 DEVICE=eth1 IPADDR=10.0.0.10 PREFIX=8 [root@localhost network-scripts]# cat ifcfg-eth1:100 DEVICE=eth0:10 IPADDR=192.168.0.100 PREFIX=8 GATEWAY=192.168.0.1 [root@localhost network-scripts]# cat ifcfg-eth1:200 DEVICE=eth0:20 IPADDR=172.16.0.200 PREFIX=16 GATEWAY=172.16.0.1
2、雙網卡的bonding
(1)bongding介紹
將多塊網卡綁定同一IP 地址對外提供服務,可以實現高可用或者負載均衡。當然,直接給兩塊網卡設置同一IP 地址是不可能的。通過bonding ,虛擬一塊網卡對外提供連接,物理網卡的被修改為相同的MAC 地址。
(2)bongding的工作模式
? Mode 0 (balance-rr) 輪轉(Round-robin )策略:從頭到尾順序的在每一個slave接口上面發送數據包。本模式提供負載均衡能力 ? Mode 1 (active-backup) 活動- 備份(主備)策略:在綁定中,只有一個slave 被激活。當且僅當活動的slave 接口失敗時才會激活其他slave 。為了避免交換機發生混亂此時綁定的MAC 地址只有一個外部端口上可見 ? Mode 3 (broadcast) 廣播策略:在所有的slave 接口上傳送所有的報文。本模式提供容錯能力。
(3)Mode1 實驗(虛擬機環境,CentOS 6.8系統)
首先添加兩塊網卡,具體設置如下
[root@localhost network-scripts]# cat ifcfg-eth1 DEVICE=eth1 MASTER=bond0 SLAVE=yes [root@localhost network-scripts]# cat ifcfg-eth2 DEVICE=eth2 MASTER=bond0 SLAVE=yes [root@localhost network-scripts]# cat ifcfg-bond0 (設置bonding名為bond0) DEVICE=bond0 IPADDR=192.168.151.128 PREFIX=24 GATEWAY=192.168.151.2 BONDING_OPTS="miimon=100 mode=1" (模式為 mode1;等待時間為100毫秒) [root@localhost network-scripts]# service NetworkManager stop (此服務請關閉) [root@localhost network-scripts]# service network restart (重啟網絡服務)
設置好以上步驟,使用ifconfig命令查看,可以看到bond0,eth1,eth2的MAC地址都是相同的。
現在請在其他同網段(192.168.151.0、24)的主機上執行 ping 192.168.151.128(如果是windows系統則 ping 192.168.151.128 -t),注意看結果(此處就不截ping圖了)。
從上圖可以看到當前活動的網卡是eth2,eth1是備用的?,F在把eth2網卡斷開連接(直接在虛擬機界面斷開,別系統中用命令斷開),再查看/proc/net/bonding/bond0文件,如果活動的網卡是eth1,則表示實驗成功了(如下圖)。
原創文章,作者:pao,如若轉載,請注明出處:http://www.www58058.com/43246