linux 7 bond0,Linux Shell脚本 CentOS 7 配置bond0

系统环境:CentOS 7.4

将两块网卡eth0, eth1绑定成一块网卡bond0实现网口负载平衡和容错能力

bond0信息如下

bond0的IP地址:192.168.100.100/24

bond0的网关:192.168.100.1

bond0的主DNS:202.106.0.20

bond0的从DNS:8.8.8.8

#!/bin/bash

# by: ZDF

#

Bond_IP_ADDR=192.168.100.100

Bond_NET_PREFIX=24

Bond_GAT_EWAY=192.168.100.1

Bond_DNS_1=202.106.0.20

Bond_DNS_2=8.8.8.8

Bond_Level=0

NetDevice_1=eth0

NetDevice_2=eth1

find /etc/sysconfig/network-scripts -iname ifcfg-* -not \( -iname "ifcfg-lo" -o -iname "*.bak" \) -exec mv {} {}.bak \;

if [ $? -ne 0 ];then

exit 3

fi

touch /etc/sysconfig/network-scripts/ifcfg-bond$Bond_Level

cat > /etc/sysconfig/network-scripts/ifcfg-bond$Bond_Level <

NAME=bond$Bond_Level

DEVICE=bond$Bond_Level

ONBOOT=yes

TYPE=Ethernet

BOOTPROTO=static

IPADDR=$Bond_IP_ADDR

PREFIX=$Bond_NET_PREFIX

GATEWAY=$Bond_GAT_EWAY

DNS1=$Bond_DNS_1

DNS2=$Bond_DNS_2

TYPE=Bond

BONDING_MASTER=yes

USERCTL=no

BONDING_OPTS=“miimon=100 mode=$Bond_Level”

EOF

touch /etc/sysconfig/network-scripts/ifcfg-$NetDevice_1

cat > /etc/sysconfig/network-scripts/ifcfg-$NetDevice_1 <

NAME=$NetDevice_1

DEVICE=$NetDevice_1

ONBOOT=yes

BOOTPROTO=none

TYPE=Ethernet

MASTER=bond$Bond_Level

SLAVE=yes

USERCTL=no

EOF

touch /etc/sysconfig/network-scripts/ifcfg-$NetDevice_2

cat > /etc/sysconfig/network-scripts/ifcfg-$NetDevice_2 <

NAME=$NetDevice_2

DEVICE=$NetDevice_2

ONBOOT=yes

BOOTPROTO=none

TYPE=Ethernet

MASTER=bond$Bond_Level

SLAVE=yes

USERCTL=no

EOF

ifdown $NetDevice_1

ifup $NetDevice_1

ifdown $NetDevice_2

ifup $NetDevice_2

ifup bond$Bond_Level

systemctl restart network.service

echo

echo -e "\033[32;1m$(cat /sys/class/net/bonding_masters)\033[m"

cat /proc/net/bonding/bond$Bond_Level

CentOS 7 中,网卡聚合(Bonding 或 Bonding 模式)通常用于提高网络性能和可靠性,通过将两个或更多的物理网卡连接起来作为一个逻辑接口。以下是一个基本的 bond0 模式配置步骤: 1. **安装必备软件**: 首先,你需要安装 `linux-headers` 和 `bonding-modes` 软件包,可以使用命令: ``` sudo yum install kernel-y ``` 2. **创建Bond接口**: 在 `/etc/sysconfig/network-scripts/` 目录下创建一个新的 `ifcfg-bond0` 文件,并设置其内容: ```bash DEVICE=bond0 TYPE=ebd MASTER=none SLAVE=eth0 eth1 (替换为你想要聚合的实际网卡名) ONBOOT=yes BONDING_MODE=0 (选择活动加权负载均衡或静态模式,0表示活动加权负载均衡) ``` 这里假设你想让 eth0 和 eth1 参与聚合。 3. **启用并启动Bond接口**: ``` sudo ifdown bond0 sudo vi /etc/modprobe.d/bonding.conf (添加 'options bonding mode=0') sudo modprobe bonding sudo ifup bond0 ``` 4. **配置IP地址和其他网络细节**: 在 `ifcfg-bond0` 文件中,你可以为 bond0 设置一个 IP 地址和子网掩码,以及其他网络相关的配置项。 5. **验证配置**: 使用 `ip addr` 或 `ethtool` 命令检查 bond0 是否已正确配置,并确认所有成员网卡的状态。 注意:具体的配置可能会因服务器的具体需求而略有差异,例如,如果你需要更高级的功能如链路监视、智能负载均衡等,可能需要修改 `BONDING_OPTS` 变量或者使用其他 bond 模式(如 802.3ad LACP)。在操作前建议备份原有网络配置文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值