網卡別名和bonding——讓你的網絡接口更加穩定

網卡配置文件:

1、IP/NETMASK/GW/DNS等屬性的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE

    IFACE:接口名稱

2、路由的相關配置文件(默認無此文件):/etc/sysconfig/network-scripts/route-IFACE

3、配置文件/etc/sysconfig/network-scritps/ifcfg-IFACE通過大量參數來定義接口的屬性

     其可通過vim等配置文本編輯器直接修改,也可以使用專用的命令進行修改

     CentOS6:system-config-network(setup)

     CentOs7:nmtui

         ifcfg-IFACE配置文件的參數

                 DEVICE:此配置文件對應的設備的名稱

                 ONBOOT:在系統引導過程中,是否激活此接口

                 UUID:此設備的唯一標識

                 IPV6INIT:是否初始化IPv6

                 BOOTPROTO:激活此接口時使用什么協議來配置接口屬性,常用的有dhcp、bootp、static、none

                 TYPE:接口類型,常見的有Ethernet,Bridge

                 DNS1:第一DNS服務器指向

                 DNS2:備用DNS服務器指向

                 DOMAIN:DNS搜索域

                 IPADDR:IP地址

                 NETMASK:子網掩碼;CentOS6,7支持使用PREFIX

                 eg: NETMASK=255.255.0.0  <==>  PREFIX=16

                 GATEWAY:默認網關

                 USERCTL:是否允許普通用戶控制此設備

                 PEERDNS:如果BBOTPROTO的值為“dhcp”,是否運行dhcp server分配的dns服務器指向覆蓋本地手動指向的DNS服務器指向,默認為允許

                 HWADDR:設備MAC地址,一般不能修改MAC地址,但把此參數換成MACADDR=XX-XX-XX-XX-XX-XX ;則能修改MAC地址                

                

                 NM_CONTROLLED:是否使用NetworkManager服務來控制接口;建議CentOS6為“no”

        

         注意:需service network restart生效

網卡別名:

網絡接口識別并命名相關的udev配置文件:

    /etc/udev/rules.d/70-persistent-net.rules

        修改上述配置文件,和/etc/sysconfig/network-scripts/ifcfg-IFACE文件,完成對網卡的別名配置


卸載網卡驅動:

    modprobe -r e1000

裝載網卡驅動:

    modprobe e1000


實驗:

netalias3.png

[root@CentOS6 ~]# cat /etc/udev/rules.d/70-persistent-net.rules
......
# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:53:f0:44", ATTR{type}=="1",
KERNEL=="eth*", NAME="eth0"
[root@CentOS6 ~]# vim /etc/udev/rules.d/70-persistent-net.rules

netalias.png

[root@CentOS6 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO=none
TYPE="Ethernet"
HWADDR=00:0c:29:53:f0:44
IPADDR=10.1.143.1
NETMASK=255.255.0.0
GATEWAY=10.1.0.1
DNS=10.1.0.1
[root@CentOS6 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

netalias1.png

[root@CentOS6 ~]# modprobe -r e1000
[root@CentOS6 ~]# modprobe e1000

netalias2.png

給接口配置多個IP地址:

    關閉NetworkManager服務

    為每個設備別名生成獨立的接口配置文件

    接口配置文件名:ifcfg-ethX:xxx

(1)ifconfig IFACE_LABEL IPADDR/NETMASK

    IFCAE_LABEL:eth0,eth0:1,…

    eg:ifconfig eth0:0 192.168.1.100/24 up

(2)為別名添加配置文件:<可復制eth0文件并修改其內容>

    DEVICE=IFACE_LABEL

    BOOTPROTO=static OR none

        網卡別名不支持動態獲取地址;使用static或者none即可

    IPADDR=X.X.X.X

    NETMASK=X.X.X.X

實驗:

[root@CentOS6 ~]# cd /etc/sysconfig/network-scripts/
[root@CentOS6 network-scripts]# cp ifcfg-eth0 ifcfg-eth0:0
[root@CentOS6 network-scripts]# cat ifcfg-eth0:0
DEVICE="eth0"
BOOTPROTO=none
TYPE="Ethernet"
HWADDR=00:0c:29:53:f0:44
IPADDR=10.1.143.1
NETMASK=255.255.0.0
GATEWAY=10.1.0.1
DNS=10.1.0.1
[root@CentOS6 network-scripts]# vim ifcfg-eth0:0

net1.png

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

net3.png


Bonding:

就是將多塊網卡綁定同一IP地址對外提供服務,可以實現高可用或者負載均衡

直接給兩塊網卡設置同一IP地址是不可能的,通過bonding,虛擬一塊網卡對外提供連接,物理網卡的被修改為相同的MAC

工作模式:

     Mode 0 (balance-rr):

         輪轉 (Round-robin) 策略:

                 從頭到尾順序的在每一個slave接口上面發送數據包

                 本模式提供負載均衡和容錯的能力

    

     Mode 1 (active-backup):

         活動-備份 (主備) 策略:

                 在綁定的網卡中,只有一個slave(一塊網卡)被激活。當且僅當活動的slave接口失敗時才會激活其他slave

                 為了避免交換機發生混亂此時綁定的MAC地址只有一個外部端口上可見

                 因為提供了較好的容錯能力,在生產環節中被使用的更多

    

     Mode 3 (broadcast)

         廣播策略:

            在所有的slave接口上傳送所有的報文。本模式提供容錯能力

Bonding配置:

創建bonding設備的配置文件(默認無此文件):

    /etc/sysconfig/network-scripts/ifcfg-bond0

                 DEVICE=bond0(指定bonding設備名)

                 BOOTPROTO=none

                 IPADDR=X.X.X.X

                 NETMASK=X.X.X.X

                 GATEWAY=X.X.X.X

                 DNS=X.X.X.X

                 BONDING_OPTS= “miimon=100 mode=1”

                    miimon:是用來進行鏈路監測的,miimon=100,表示系統每100ms監測一次鏈路連接狀態,如果有一條線路不通就轉入另一條線路

                    mode <0|1|3>:指定bonding模式

                

修改已有網卡配置文件:

    /etc/sysconfig/network-scripts/ifcfg-ethX

                 DEVICE=ethX

                 BOOTPROTO=none

                 MASTER=bond1

                 SLAVE=yes

查看bonding狀態:

         cat /proc/net/bonding/bondX

            X表示bonding模式

實驗:

11.png

[root@CentOS6 network-scripts]# vim ifcfg-bond

12.png

[root@CentOS6 network-scripts]# vim ifcfg-eth0

13.png

[root@CentOS6 network-scripts]# vim ifcfg-eth1

14.png

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

15.png

查看bond0的工作情況,當前工作的網卡是eth0:

網卡別名和bonding——讓你的網絡接口更加穩定

測試是否能夠ping通:

16.png

斷開eth0網卡的連接,測試是否能激活eth1網卡工作:

網卡別名和bonding——讓你的網絡接口更加穩定

再次測試是否能夠ping通:

網卡別名和bonding——讓你的網絡接口更加穩定

以上結果顯示,bond mode 1實驗成功!

原創文章,作者:megedugao,如若轉載,請注明出處:http://www.www58058.com/42944

(0)
megedugaomegedugao
上一篇 2016-09-05
下一篇 2016-09-05

相關推薦

  • ssh 筆記

    ssh

    Linux干貨 2018-01-08
  • LINUX命令歷史

    LINUX命令歷史 LINUX的命令歷史是什么? linux的命令歷史的作用是,記錄執行過的命令。如果你經常使用 Linux 命令行,那么使用 命令歷史可以有效地提升你的效率。history(管理歷史命令)語法:[root@localhost]#history(選項)(參數)選項:n:n為數字,要列出最近的 n 筆命令列表-c(清空所有歷史命令)-d (刪除…

    2017-09-14
  • select循環解析

    前言:   select命令用于創建菜單,在select循環執行時會根據list數組給出選擇菜單,用戶選擇后的結果保存在變量中,然后給出菜單,等待用戶選擇。select是個死循環,如果用戶用戶想跳出選擇循環,需要在循環體中根據條件增加break語句。 格式: select variable in list do 循環體命令 done 示例: 在這個…

    Linux干貨 2016-08-24
  • N26-第七周博客作業

    一、創建一個10G分區,并格式為ext4文件系統; 1、 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl;          A、創建一個10G的磁盤空間 [root@VM_221_40_centos ~]#fdisk /de…

    2017-07-09
  • GNU awk

    文本處理三工具:grep, sed, awk grep, egrep, fgrep:文本過濾工具;pattern sed: 行編輯器 模式空間、保持空間 awk:報告生成器,格式化文本輸出;  AWK: Aho, Weinberger, Kernighan –> New AWK, NAWK  GNU awk, gawk&…

    Linux干貨 2015-12-03
  • Week4 正則表達式及grep命令

    基本正則表達式元字符:             字符匹配:                …

    Linux干貨 2017-02-11

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-05 11:56

    文章結構清晰,思路順暢,內容飽滿,圖文并貌,標題可以再優化一下,再接再厲哦。

欧美性久久久久