网卡别名与bonding

网络接口配置-bonding

  • Bonding简介

Bonding 就是将多块网卡绑定同一IP地址对外提供服务,可以实现高 可用或者负载均衡。然,直接给两块网卡设置同一IP地址 是不可能的。通过bonding,虚拟一块网卡对外提供连接, 物理网卡的被修改为相同的MAC地址。

  • Bonding模式

    • Mode 0 (balance-rr) 轮转(Round-robin)策略:从头到尾顺序的在每一个slave 接口上面发送数据包。本模式提供负载均衡和容错的能力

    • Mode 1 (active-backup) 活动-备份(主备)策略:在绑定中,只有一个slave被激活。 当且仅当活动的slave接口失败时才会激活其他slave。为了 避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上 可见

    • Mode 3 (broadcast) 广播策略:在所有的slave接口上传送所有的报文。本模式提供 容错能力。

  • 网络配置文件简介

    • IP、MASK、GW、DNS相关配置文件: /etc/sysconfig/network-scripts/ifcfg-IFACE

    • 路由相关的配置文件: /etc/sysconfig/network-scripts/route-IFACE

    • /etc/sysconfig/network-scripts/ifcfg-IFACE: 说明参考/usr/share/doc/initscripts-9.49.30/sysconfig.txt

  • 配置文件编写规则

    • DEVICE:此配置文件应用到的设备

    • HWADDR:对应的设备的MAC地址

    • BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp

    • NM_CONTROLLED:NM是NetworkManager的简写, 此网卡是否接受NM控制;建议CentOS6为“no”

    • ONBOOT:在系统引导时是否激活此设备

    • TYPE:接口类型;常见有的Ethernet, Bridge

    • UUID:设备的惟一标识

    • IPADDR:指明IP地址

    • NETMASK:子网掩码

    • GATEWAY: 默认网关

    • DNS1:第一个DNS服务器指向

    • DNS2:第二个DNS服务器指向

    • USERCTL:普通用户是否可控制此设备

    • PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许 dhcp server分配的dns服务器指向信息直接覆盖至 /etc/resolv.conf文件中

  • 多网卡bond,mode1的具体实现步骤

    • 创建bonding设备的配置文件

    • 编写两块网卡的配置文件

1创建bond0配置文件

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

DEVICE=bond0 –物理设备名字

IPADDR=192.168.1.2 –IP地址

NETMASK=255.255.255.0 –子网掩码

GATEWAY=192.168.1.1 –网关

DNS=8.8.8.8 –DNS

ONBOOT=yes –随机启动

2修改被绑定的eth0和eth1的配置文件

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=“eth0”

USERCTL=no

ONBOOT=yes

MASTER=bond0

SLAVE=yes

eth1的配置文件与之相同,只是device的值改为eth1即可。

blob.png

blob.png

当我关闭掉一个网络时发现丢了一个包,另一块网卡立马接管网络。

blob.png

Bonding配置

miimon 是用来进行链路监测的。如果miimon=100,那么系统每100ms 监测一次链路连接状态,如果有一条线路不通 就转入另一条线路

• 查看bond0状态:/proc/net/bonding/bond

• 关于bonding的详细配置请参照

/usr/share/doc/kernel-docversion/Documentation/networking/bonding.txt

一网卡多地址的实现

网卡别名

  • 对虚拟主机有用

  • 将多个IP地址绑定到一个NIC上 eth0:1 eth0:2 eth0:3

  • ifconfig命令:

    • ifconfig eth0:0 192.168.1.100/24 up

  • ip命令:

    • ip addr add 172.16.1.2/16 dev eth0

    • ip addr add 172.16.1.1/16 dev eth0 label eth0:0

    • ip addr del 172.16.1.1/16 dev eth0 label eth0:0

    • ip addr flush dev eth0 label eth0:0

设备别名

  • 为每个设备别名生成独立的接口配置文件

  • 步骤

    • 关闭NetworkManager服务

    • ifcfg-ethX:xxx

    • 必须使用静态联网

    • 配置文件内容

      • DEVICE=eth0:0

      • IPADDR=10.10.10.10

      • NETMASK=255.0.0.0

      • ONPARENT=yes

  • 注意:需要重启网络服务

  • 参考/usr/share/doc/initscripts-*/sysconfig.txt

具体实现

  • 这是我的网络配置文件

blob.png

  • 我们需要复制至少一份跟它相同的文件并改名在原名后加上:n

blob.png

  • 然后修改配置文件名

blob.png

  • 三个都修改完毕后重启网络服务就完成啦

原创文章,作者:502795641,如若转载,请注明出处:http://www.178linux.com/43472

(0)
502795641502795641
上一篇 2016-09-05 08:48
下一篇 2016-09-05 08:48

相关推荐

  • 了解 linux

    计算机组成     CPU  ——> central processing unit, 运算器&控制器             主要工作管理和运算;   &…

    Linux干货 2016-09-17
  • 02day-Linux基础入门及简单的命令了解

    Linux哲学思想: 1、一切皆文件;          把几乎所有资源,包括硬件设备都组织为文件格式; 2、由众多单一目的小程序组成;一个程序只实现一个功能,而且要做好;          组合小程…

    Linux干货 2016-06-29
  • 如何用SHELL写好网络爬虫

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://nolinux.blog.51cto.com/4824967/1550976        上周,老大压下来任务,让写一个网络爬虫,负责爬某一个行业网站的数据信息。由于本人只会 sh…

    Linux干货 2016-08-15
  • rsyslog将日志记录于MySQL中

    数据库服务器:CentOS7 192.168.119.159   日志:CentOS6 192.168.119.129     准备mysql数据库 和 用户账户 [root@localhost ~]# yum install mariadb-server   [root@localhost ~]# systemctl…

    2018-02-05
  • haproxy实验

    实验1: 部署discuz 1、  不做会话绑定 基于roundrobin —————————10.1.72.40|30————————&#821…

    Linux干货 2016-12-05