Linux網(wǎng)絡管理之網(wǎng)卡別名及網(wǎng)卡綁定配置-創(chuàng)新互聯(lián)

在日常的運維工作當中,有時候需要在一塊物理網(wǎng)卡上配置多個IP地址,這就是網(wǎng)卡子接口的概念,以及多塊網(wǎng)卡實現(xiàn)網(wǎng)卡的綁定,通俗來講就是多塊網(wǎng)卡使用的一個IP地址,下面我來詳細說明實現(xiàn)的過程。

創(chuàng)新互聯(lián)專注于中大型企業(yè)的成都做網(wǎng)站、網(wǎng)站設計和網(wǎng)站改版、網(wǎng)站營銷服務,追求商業(yè)策劃與數(shù)據(jù)分析、創(chuàng)意藝術與技術開發(fā)的融合,累計客戶數(shù)千家,服務滿意度達97%。幫助廣大客戶順利對接上互聯(lián)網(wǎng)浪潮,準確優(yōu)選出符合自己需要的互聯(lián)網(wǎng)運用,我們將一直專注品牌網(wǎng)站制作和互聯(lián)網(wǎng)程序開發(fā),在前進的路上,與客戶一起成長!

&創(chuàng)建網(wǎng)卡子接口

在CentOS系統(tǒng)當中網(wǎng)絡是由NetworkManager這個服務來管理的,它提供了一個圖形的界面,但此服務不支持物理網(wǎng)卡子接口的設置,所以在配置網(wǎng)卡子接口的時候,我們需要關閉此服務

臨時關閉:service NetworkManager stop

永久關閉:chkconfig NetworkMangager off

如果有時需要臨時創(chuàng)建子接口需要這么操作

[root@server ~]#  ip  addr add 10.1.252.100/16 dev eth0 label eth0:0

注意:一旦重啟網(wǎng)絡服務,將會失效

創(chuàng)建永久的網(wǎng)卡子接口,這時候就需要寫到網(wǎng)卡的配置文件里面去了網(wǎng)卡的配置文件路徑在/etc/sysconfig/network-scripts/目錄下以ifcfg開頭跟設備名的文件,加入我設置的子接口的配置文件叫做eth0:0

vim /etc/sysconfig/network-scripts/ifcfg-eth0:0(如果你每次編輯網(wǎng)卡配置文件,每次這個路徑覺得很長的時候可以定義別名,直接cd切換目錄到這個文件的當前目錄下)

DEVICE=eth0:0  //網(wǎng)卡的子接口名稱

BOOTPROTO=none //使用的協(xié)議這里是靜態(tài)

IPADDR=192.168.1.100  //子接口的IP地址

NETMASK=255.255.255.0 //子接口的子網(wǎng)掩碼

GATEWAY=192.168.1.254  //子接口的網(wǎng)關

DNS1=8.8.8.8      //子接口指定的dns

編輯網(wǎng)卡的配置文件之后需要重啟網(wǎng)絡服務

[root@server network-scripts]# service network restart

[root@server network-scripts]# ifconfig

eth0     Link encap:Ethernet HWaddr00:0C:29:D1:18:FD

         inet addr:10.1.252.100 Bcast:10.1.255.255 Mask:255.255.0.0

         inet6 addr: fe80::20c:29ff:fed1:18fd/64 Scope:Link

         UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

         RX packets:103623 errors:0 dropped:0 overruns:0 frame:0

         TX packets:824 errors:0 dropped:0 overruns:0 carrier:0

         collisions:0 txqueuelen:1000

         RX bytes:7615694 (7.2 MiB) TXbytes:80710 (78.8 KiB)

eth0:0   Link encap:Ethernet HWaddr00:0C:29:D1:18:FD

         inet addr:192.168.1.100 Bcast:0.0.0.0 Mask:255.255.255.0

         UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:

至此網(wǎng)絡子接口就配置完成了

&網(wǎng)卡綁定

在講解如何實現(xiàn)bonding網(wǎng)卡綁定前我先來講講bond的原理以及bond的工作模式,最后將實現(xiàn)網(wǎng)卡綁定的配置

bonding

就是將多塊網(wǎng)卡綁定同一IP地址對外提供服務,可以實現(xiàn)高可用或者負載均衡。當然給兩塊網(wǎng)卡設置同一IP地址是不可能的。通過bonding,虛擬一塊網(wǎng)卡對外提供連接,物理網(wǎng)卡被修改為相同的MAC地址。

正常情況下,網(wǎng)卡只接受目的硬件地址是自身MAC的以太網(wǎng)幀,對于別的數(shù)據(jù)幀都過濾掉,以減輕負擔。但是網(wǎng)卡也支持混雜promisc的模式,接收網(wǎng)絡上的所有幀,tcpdump和bonding就運行在這個模式下,驅動程序中的mac地址,將兩塊網(wǎng)卡的MAC地址改成相同,可以接受特定的mac數(shù)據(jù)幀,然后把相應的數(shù)據(jù)幀傳給bond驅動程序處理。雙網(wǎng)卡工作的時候表現(xiàn)為一個虛擬網(wǎng)卡(bond0),該虛擬網(wǎng)卡也需要驅動,驅動名叫bonding。

bonding的工作模式

mode 0 (balance-rr)

 輪詢(round-robin)策略:從頭到尾順序的在每一個slave接口上面發(fā)送數(shù)據(jù)包。本模式提供負載均衡和容錯的能力,兩塊網(wǎng)卡都工作。但是我們知道如果一個連接或者會話的數(shù)據(jù)包從不同的接口發(fā)出的話,中途再經(jīng)過不同的鏈路,在客戶端很有可能會出現(xiàn)數(shù)據(jù)包無序到達的問題,而無序到達的數(shù)據(jù)包需要重新要求被發(fā)送,這樣網(wǎng)絡的吞吐量就會下降

mode 1 (active-backup)

 主備策略:在綁定中,只有一個slave被激活。當且僅當活動的slvae接口失敗時才會激活其他slave。為了避免交換機發(fā)生混亂時綁定的MAC地址只有一個外部端口上可見。此模式只提供了容錯能力;由此可見此算法的優(yōu)點是可以提供高網(wǎng)絡連接的可用性,但是它的資源利用率較低,只有一個接口處于工作狀態(tài),在有 N 個網(wǎng)絡接口的情況下,資源利用率為1/N。

mode 2 (balance-xor)

   平衡策略:基于指定的傳輸HASH策略傳輸數(shù)據(jù)包。缺省的策略是:(源MAC地址 XOR 目標MAC地址) % slave數(shù)量。其他的傳輸策略可以通過xmit_hash_policy選項指定,此模式提供負載平衡和容錯能力

mode 3(broadcast)

 廣播策略:在所有的slave接口上傳送所有的保溫。本模式提供容錯能力。

mode4 (802.ad)IEEE 802.3ad Dynamic link aggregation(IEEE 802.3ad 動態(tài)鏈接聚合)
特點:創(chuàng)建一個聚合組,它們共享同樣的速率和雙工設定。根據(jù)802.3ad規(guī)范將多個slave工作在同一個激活的聚合體下。
外出流量的slave選舉是基于傳輸hash策略,該策略可以通過xmit_hash_policy選項從缺省的XOR策略改變到其他策略。需要注意的 是,并不是所有的傳輸策略都是802.3ad適應的,尤其考慮到在802.3ad標準43.2.4章節(jié)提及的包亂序問題。不同的實現(xiàn)可能會有不同的適應 性。

說明:如果想做成mode 0的負載均衡,僅僅設置這里options bond0 miimon=100 mode=0是不夠的,與網(wǎng)卡相連的交換機必須做特殊配置(這兩個端口應該采取聚合方式),因為做bonding的這兩塊網(wǎng)卡是使用同一個MAC地址.從原理分析一下(bond運行在mode 0下):
mode 0下bond所綁定的網(wǎng)卡的IP都被修改成相同的mac地址,如果這些網(wǎng)卡都被接在同一個交換機,那么交換機的arp表里這個mac地址對應的端口就有多 個,那么交換機接受到發(fā)往這個mac地址的包應該往哪個端口轉發(fā)呢?正常情況下mac地址是全球唯一的,一個mac地址對應多個端口肯定使交換機迷惑了。所以 mode0下的bond如果連接到交換機,交換機這幾個端口應該采取聚合方式(cisco稱為 ethernetchannel,foundry稱為portgroup),因為交換機做了聚合后,聚合下的幾個端口也被捆綁成一個mac地址.我們的解 決辦法是,兩個網(wǎng)卡接入不同的交換機即可。

mode 5 (balance-tlb)

  適配器傳輸負載均衡:不需要任何特別的switch(交換機)支持的通道bonding。在每個slave上根據(jù)當前的負載(根據(jù)速度計算)分配外出流量。如果正在接受數(shù)據(jù)的slave出故障了,另一個slave接管失敗的slave的MAC地址。

mode 6 (balance alb)

  適配器適應性負載均衡:該模式包含了balance-tlb模式,同時加上針對IPV4流量的接收負載均衡(receive load balance, rlb),而且不需要任何switch(交換機)的支持。接收負載均衡是通過ARP協(xié)商實現(xiàn)的。bonding驅動截獲本機發(fā)送的ARP應答,并把源硬件地址改寫為bond中某個slave的唯一硬件地址,從而使得不同的對端使用不同的硬件地址進行通信。

   網(wǎng)卡綁定mode共有七種(0~6) bond0、bond1、bond2、bond3、bond4、bond5、bond6等7種,其中常用的有三種:
mode=0:平衡負載模式,有自動備援,但需要”Switch”支援及設定。
mode=1:自動備援模式,其中一條線若斷線,其他線路將會自動備援。
mode=6:平衡負載模式,有自動備援,不必”Switch”支援及設定。

這里我給大家配置的mode 1模式,我這里使用的是vmware虛擬機來做的實驗,在做實驗之前需要再添加一塊網(wǎng)卡,這樣linux系統(tǒng)中才會有兩塊網(wǎng)卡

第一步:創(chuàng)建bonding設備的配置文件

   [root@server network-scripts]# vimifcfg-bond0

    DEVICE=bond0

    BOOTPROTO=none

    IPADRR=10.1.252.100

    NETMASK=255.255.0.0

    GATEWAY=10.1.0.1

    DNS1=8.8.8.8

    BONDING_OPTS=” miion=100 mode=1”

第二步:編輯兩塊物理網(wǎng)卡的配置文件

    [root@servernetwork-scripts]# vim ifcfg-eth0

    DEVICE=eth0

    MASTER=bond0

    SLAVE=yes

   [root@servernetwork-scripts]# vim ifcfg-eth2

    DEVICE=eth2

    MASTER=bond0

    SLAVE=yes

注:miimon是用來進行鏈路檢測的。如果miimon=100,那么系統(tǒng)每100毫秒檢測一次鏈路狀態(tài),如果有一條線路不通就轉入另一條線路。

    mode=1表示工作模式為主備模式

    MASTER=bond0 主設備為bond0

第三步:修改modprobe相關設定文件,并加載bonding模塊

1、vim /etc/modprobe.d/bonding.conf在文件最后追加以下內容

alias bond0 bonding

options bonding mode=1 miimon=200

2、加載模塊

modprobe bonding

3、確認模塊是否加載成功

lsmod|grep bonding

4、重啟網(wǎng)絡服務,之后就是查看bond的狀態(tài)及測試

配置完成只需要重啟網(wǎng)絡服務即可,測試使用另一臺主機來ping bond0的IP地址接口,接下來測試bond的狀態(tài),將其中的一塊網(wǎng)卡down掉,看另一塊網(wǎng)卡能不能頂上來,如果能,則表示成功

查看bond的狀態(tài):watch –n 1 cat /proc/net/bonding/bond 動態(tài)觀察bond的狀態(tài)

    Ethernet Channel Bonding Driver: v3.7.1(April 27, 2011)

    Bonding Mode: load balancing (round-robin)

    MII Status: up

    MII Polling Interval (ms): 100

    Up Delay (ms): 0

    Down Delay (ms): 0

    Slave Interface: eth0

    MII Status: up

    Speed: 1000 Mbps

    Duplex: full

    Link Failure Count: 0

    Permanent HW addr: 00:0c:29:d1:18:fd

    Slave queue ID: 0

    Slave Interface: eth2

    MII Status: up

    Speed: 1000 Mbps

    Duplex: full

    Link Failure Count: 0

    Permanent HW addr: 00:0c:29:d1:18:07

    Slave queue ID: 0

當我把eth0網(wǎng)卡down掉,當前活動的網(wǎng)卡就變成了eth2了

   Ethernet Channel Bonding Driver: v3.7.1(April 27, 2011)

    Bonding Mode: load balancing (round-robin)

    MII Status: up

    MII Polling Interval (ms): 100

    Up Delay (ms): 0

    Down Delay (ms): 0

    Slave Interface: eth2

    MII Status: up

    Speed: 1000 Mbps

    Duplex: full

    Link Failure Count: 0

    Permanent HW addr: 00:0c:29:d1:18:fd

    Slave queue ID: 0

    Slave Interface: eth0

    MII Status: down

    Speed: 1000 Mbps

    Duplex: full

    Link Failure Count: 0

    Permanent HW addr: 00:0c:29:d1:18:07

    Slave queue ID: 0

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

網(wǎng)頁標題:Linux網(wǎng)絡管理之網(wǎng)卡別名及網(wǎng)卡綁定配置-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://bm7419.com/article12/ihggc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號、網(wǎng)站內鏈定制網(wǎng)站、服務器托管企業(yè)網(wǎng)站制作、自適應網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設