网卡别名和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.178linux.com/42944

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

相关推荐

  • tomcat-session server实现

    要求:tomcat cluster将会话保存至memcached中 1、利用nginx反代 2、两台tomcat服务器 3、两台memcache服务器 拓扑:      架构前配置:      1、反代服务器:nginx     &nbsp…

    2017-07-03
  • Linux文件的权限与解析

    一,文件的基本权限: 通常,你使用ls -l 命令,就会看到这样的行:   让我们解析一下这些字段代表的意思: -rw-r–r–. 1 root root 1018 Nov 6 2016 usb_modeswitch.conf 文件类型权限  硬链接数 文件所有者 文件所属组 文件容量  文件最后被修改时…

    2017-07-30
  • 第一次测试

    1.第一层  video  视频 2.第二层  audio  音频 3.第三层  字幕 查看视频详细信息 ffmpeg -i 视频文件 转码修改视频格式 ffmpeg -i 输入文件   输出文件格式 视频文件中提取音频和视频 提取视频中的音频 ffmpeg -i CP0454900262.ts -…

    Linux干货 2017-02-06
  • Python 课堂笔记

    第二天

    Linux干货 2018-03-21
  • 通过Nginx来安装一个discuz,软件并不是编译安装的

    这次由于时间有限,所以我就没有用编译安装来启动LMP,只有Nginx 是编译安装的 因为是在centos7上面安装的Nginx所以我们这里由于能力有限,暂时不能将其加入开机启动,日后我会进行改进,将其加入开机启动。这里我们给出Nginxd的编译选项及环境   yum groupinstall "Development&…

    Linux干货 2016-10-25

评论列表(1条)

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

    文章结构清晰,思路顺畅,内容饱满,图文并貌,标题可以再优化一下,再接再厉哦。