網絡是主機之間交互的必備條件。聯網就是將主機互聯來形成網絡,使得網絡中的主機得以交換信息。
現在網絡上廣泛應用的網站棧就是TCP/IP協議棧,它給每個節點都分配了一個用作標識的唯一的IP地址。而這里面又被劃分成了很多的層次,每個層次之間都有不同的作用。通過這些參數就可以實現主機之間的精確傳輸數據。
TCP服務是一個高可靠的數據傳輸協議,它是工作在傳輸層面的全雙工連接協議,它具有錯誤檢查機制,具有確認機制,當數據傳輸失敗后它可以使數據恢復、重傳。當然這些都是面對網絡鏈路的層面。如果是面對物理層面的硬件損壞,這些就起不了太大的作用了。
所以在這里就來介紹一種單網址的多網卡綁定機制,他就叫做bonding。它就是將多塊網卡綁定同一IP 地址對外提供服務,可以實現高可用或者負載均衡。當然,直接給兩塊網卡設置同一IP 地址是不可能的。通過bonding ,虛擬一塊網卡對外提供連接,物理網卡的被修改為相同的MAC 地址。
Bonding具有多種工作模式。我們把它分成了mode0-6,今天就來搭配一個mode0(round-robin輪轉模式)。它是從頭到尾順序的在每一個slave接口上面發送數據包。本模式提供負載均衡和容錯的能力。
第一步:編寫bond的配置文件,這個文件都放置在/etc/sysconfig/network-scripts/這個目錄里。
直接用命令編寫這個目錄# vim /etc/sysconfig/network-scripts/ifcfg-bond0
這一步我們只是確定了bond的模式和配置了這個服務的IP地址
第二步就需要我們來給bond配置網卡設備了,先確定好兩塊網卡設備的名稱
編寫第一塊網卡 # vim /etc/sysconfig/network-scripts/ifcfg-eth0
編寫第二塊網卡# vim /etc/sysconfig/network-scripts/ifcfg-eth1
第三步:如果是在圖形界面系統里,一定記得要關閉圖形化下的網絡管理服務
# service NetworkManager stop
第四步:重啟網絡服務
# service network restart
到這里這個服務已經搭建完成 。
下面就來看看這個服務的原理。它是將兩個網卡的MAC地址虛擬成同一個地址,從而實現MAC地址欺騙來完成這個工作的。
所以當這兩個網卡之中的一個出現故障時,另一塊網卡就會開始工作。重而來實現數據傳輸的高可靠性。
我們來看看這兩塊網卡的工作情況是怎樣的
當然,這樣的模式不容易給你看出差別。下面再來介紹另一種模式。mode3(broadcast)廣播模式,它是將同樣的數據通過兩塊網卡都轉發進來,也就是同樣的數據他會接收兩次。
來看看mode3的配置方式
它與mode0的配置方法相同,只需要更改配置文件中的模式選項就可以了,其他步驟相同
# vim /etc/sysconfig/network-scripts/ifcfg-bond0
其他步驟同mode0
配置完成后我們就來看看他的數據傳輸模式吧
這種模式下每個數據包它都會接收兩遍,所以在bond模式下大大提高了數據的傳輸高可靠性。通過物理和鏈路的兩種模式的保證,網絡數據的傳輸就得到了保證
原創文章,作者:gong,如若轉載,請注明出處:http://www.www58058.com/85065