配置双网卡的主要目的如下:
实现冗余:通过双网卡配置,可以在一条物理线路发生故障时,自动切换到另一条线路,确保网络连接的连续性。
负载均衡:双网卡共享一个IP地址,并通过两条物理线路连接到交换机,平时双网卡同时工作,帮助分担网络流量,提升网络性能。
这种配置适用于关键性节点服务器、高网络IO服务器以及网络共享存储服务器等。
Linux中的bonding驱动模块提供了一种方法,可以将多个网络接口组合成一个逻辑上的“bonded”接口。bonded接口的工作方式取决于驱动的模式,不同的模式提供了热备份或负载均衡等不同的服务。此外,驱动还会监控链路的可用性。大多数目前发布的Linux内核都以模块方式包含了bonding驱动,同时ifenslave工具(主要配置工具)也都已经安装好。
以下是几种常见的bonding模式:
以下是CentOS中配置双网卡绑定以实现负载均衡的具体步骤:
bind0 IP地址:192.168.10.54
首先关闭两张网卡:
[root@uplooking ~]# ifdown ens33 [root@uplooking ~]# ifdown ens38
接着新建网卡配置文件:
[root@uplooking /etc/sysconfig/network-scripts]# vim ifcfg-bond0
ifcfg-bond0配置文件内容如下:
TYPE=Ethernet BOOTPROTO=static NAME=bond0 DEVICE=bond0 IPADDR="192.168.10.54" NETMASK=255.255.255.0 GATEWAY=192.168.10.2 ONBOOT=yes BONDING_OPTS="miimon=100 mode=6" ##bonding 参数直接在网卡配置文件中指派,并且开机可以自动生效 ## mode=1 1为储备模式, 推荐为 6 ,不会浪费资源。
ifcfg-ens33配置文件内容如下:
TYPE=Ethernet BOOTPROTO=none NAME=ens33 DEVICE=ens33 ONBOOT=yes MASTER=bond0 SLAVE=yes
ifcfg-ens38配置文件内容如下:
TYPE=Ethernet BOOTPROTO=none NAME=ens38 DEVICE=ens38 ONBOOT=yes MASTER=bond0 SLAVE=yes
修改/etc/modprobe.d/dist.conf文件,添加以下内容:
alias bond0 bonding
这表示系统在启动时加载bonding模块,对外虚拟网络接口设备为bond0。miimon=100表示系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线。mode=1表示绑定模式为1。primary=eth0表示系统首先使用eth0作为bond0接口与外界信息的传输接口。
修改配置文件/etc/rc.local,添加以下内容:
modprobe bonding miimon=100 mode=1
重启网络:
systemctl restart network
观察验证:
[root@uplooking ~]# ifconfig
查看bond0的状态:
ip addr 或者 ifconfig
状态信息验证:
cat /proc/net/bonding/bond0
该文件可以显示双网卡配置信息,包括ens33和ens38的启用状态。通过查阅该文件,可以获取bond0网卡的工作状态信息,并通过断开不同网卡,观察该文件的信息变化。
[root@server-18 ~]# watch -n 1 "cat /proc/net/bonding/bond0" Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: adaptive load balancing Primary Slave: None Currently Active Slave: ens37 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: ens33 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 3 Permanent HW addr: 00:0c:29:e6:3b:9d Slave queue ID: 0 Slave Interface: ens38 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 3 Permanent HW addr: 00:0c:29:e6:3b:a7
验证负载均衡的效果:
http-02 ping 192.168.10.54
arp -a 查询arp表:发现192.168.10.54在00:0C:29:58:4C:31 (ens33)网卡上
http-03 ping 192.168.10.54
arp -a 查询arp表:发现192.168.10.54在00:0C:29:58:4C:3B (ens33)网卡上
取消bond0网卡的方法:
ifdown bond0 ##此时网络断开
移除ifcfg-bond0网卡的配置文件,建议不要直接删除,而是移到别的位置,备份起来。
root@server-18 /etc/sysconfig/network-scripts# mv ifcfg-bond0 /root
echo -bond0 > /sys/class/net/bonding_masters ## 移除系统中的bonding状态。
修改ens33和ens38网卡配置,解除与bond0网卡的从属关系。
BOOTPROTO=static MASTER=bond0 去掉 SLAVE=yes 去掉 加上自己网卡的原先配置。
systemctl restart network
ifconfig再次观察
下一篇:Linux对大容量磁盘分区→
以上就是linux中配置双网卡实现双网卡绑定,负载均衡的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号