多IP绑定:

实验目的:

实现如下图网络连接

多网卡 获取ip java 多网卡多ip_配置文件

实现 A, B 在分配不同网段的网络地址的情况下可以互联

 

实验条件有限,在没有交换机的情况下,将主机A ,B,路由器R1处于同一网络。将三台虚拟机的网络适配器设置为仅主机模式,保证处于同一网络。

给两台机器A,B按上图是指网络IP地址:

临时设置网络IP:

  Ifconfig eth1 192.168.37.100/24

多网卡 获取ip java 多网卡多ip_链路_02

给R1设置两个IP做为两个主机的网关:

在添加IP时不能与原网卡名称重复,否则地址将覆盖。

多网卡 获取ip java 多网卡多ip_链路_03

给A机器添加网关:

ip route add default via 192.168.37.200

route add default wg 192.168.37.200

多网卡 获取ip java 多网卡多ip_Linux 多网卡绑定_04

查看主机A与路由器R1连接

多网卡 获取ip java 多网卡多ip_链路_05

连接成功!

主机B设置同上。

多网卡 获取ip java 多网卡多ip_Linux 多网卡绑定_06

主机A,B成功连接。

 

 

多网卡绑定

实验目的:

实现两个网卡共用一个IP地址。

实验准备:

虚拟机A:有两个网卡,并在同一网络。

虚拟机B。

实验内容:

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

工作模式:

      Mode 0 (balance-rr)

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

Mode 1 (active-backup)

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

Mode 3 (broadcast)

广播策略:在所有的slave接口上传送所有的报文,提供容错能力

active-backup、balance-tlb 和 balance-alb 模式不需要交换机的任何特殊配置。其他绑定模式需要配置交换机以便整合链接。如:Cisco 交换机需要在模式 0、2 和 3 中使用EtherChannel,但在模式4中需要 LACP和 EtherChannel

配置:

创建bonding设备的配置文件

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

DEVICE=bond0     设备名称

BOOTPROTO=none  获取IP方式

BONDING_OPTS= “miimon=100 mode=0”  用来进行链路监测系统每100ms 监测一次链路连接状态,如果有一条线路不通就转入另一条线路 

多网卡 获取ip java 多网卡多ip_配置文件_07

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

DEVICE=eth0

BOOTPROTO=none

MASTER=bond0

SLAVE=yes

USERCTL=no

多网卡 获取ip java 多网卡多ip_配置文件_08

配置完成后重新启用服务:

  Service network restart

多网卡 获取ip java 多网卡多ip_IP_09

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

多网卡 获取ip java 多网卡多ip_多网卡 获取ip java_10

此时网卡eth0,网卡eth1共用一个IP地址,且MAC地址相同。

 

多网卡 获取ip java 多网卡多ip_配置文件_11

断开网卡eth1 可以看出在网卡转换时会丢包。

 

多网卡 获取ip java 多网卡多ip_配置文件_12

断开网卡eth0:同样会有丢包。

多网卡 获取ip java 多网卡多ip_IP_13

这时在模式0下网卡没100ms检测一次链路状态,发现一条线路不同就转向另一条线路时需要时间。

 

使用nmcli实现bonding

添加bonding接口

命令:

输入命令回车,ifcfg-bond0文件自动生成。

多网卡 获取ip java 多网卡多ip_链路_14

查看网络设置 bond0直接启用

 

多网卡 获取ip java 多网卡多ip_IP_15

添加从属接口

nmcli connection add type bond-slave ifname eth0 master bond0

nmcli connection add type bond-slave ifname eth1 master bond0

注:如无为从属接口提供连接名,则该名称是接口名称加类型构成

多网卡 获取ip java 多网卡多ip_多网卡 获取ip java_16

要启动绑定,则必须首先启动从属接口

nmcli connection up bond-slave-eth0

nmcli connection up bond-slave-eth1

多网卡 获取ip java 多网卡多ip_配置文件_17

v 启动绑定

nmcli connection up bond0

多网卡 获取ip java 多网卡多ip_多网卡 获取ip java_18

绑定成功!

多网卡 获取ip java 多网卡多ip_Linux 多网卡绑定_19

连接成功!

多网卡 获取ip java 多网卡多ip_配置文件_20

删除绑定:

关闭bond0

多网卡 获取ip java 多网卡多ip_IP_21

删除配置文件

多网卡 获取ip java 多网卡多ip_配置文件_22

重新加载配置文件:nmcli connection reload

多网卡 获取ip java 多网卡多ip_Linux 多网卡绑定_23

删除完成:

多网卡 获取ip java 多网卡多ip_Linux 多网卡绑定_24

 

“大圣,此去欲何?” “踏南天,碎凌霄!” “若一去不回...” “便一去不回!”