centos 7 双网卡建网桥脚本实现
2017-09-19 08:57
253 查看
#!/bin/bash interface1=`ls /sys/class/net|grep en|awk 'NR==1{print}'` interface2=`ls /sys/class/net|grep en|awk 'NR==2{print}'` interface_file1="/etc/sysconfig/network-scripts/ifcfg-$interface1" interface_file2="/etc/sysconfig/network-scripts/ifcfg-$interface2" br0_file="/etc/sysconfig/network-scripts/ifcfg-br0" echo $interface_file1 echo $interface_file2 echo br0_file while getopts "i:g:" opt; do case $opt in i) ip=$OPTARG ;; g) gateway=$OPTARG ;; \?) ;; esac done echo $ip echo $gateway function set_bridge(){ #写网卡配置文件 cat > "$br0_file" <<EOF TYPE=Bridge BOOTPROTO=static DEVICE=br0 ONBOOT=yes DNS1=114.114.114.114 IPADDR=$ip PREFIX=24 NETMASK=255.255.255.0 GATEWAY=$gateway EOF cat > "$interface_file1" <<EOF TYPE=Ethernet BOOTPROTO=static NAME=$interface1 DEVICE=$interface1 ONBOOT=yes IPADDR=0.0.0.0 PREFIX=24 BRIDGE=br0 EOF cat > "$interface_file2" <<EOF TYPE=Ethernet BOOTPROTO=static NAME=$interface2 DEVICE=$interface2 ONBOOT=yes IPADDR=0.0.0.0 PREFIX=24 BRIDGE=br0 EOF systemctl restart network #检查ip地址是否设置成功 res=`ip addr show br0 |grep -c "$ip"` if [ "$res" -eq 0 ];then echo "ip地址设置失败" >&2 return 254 fi #检查默认路由是不是gateway res=`ip route |grep -c "default\s*via\s*$gateway\s*dev\s*br0"` if [ "$res" -eq 0 ];then echo "网关设置失败" >&2 return 253 fi return 0 } set_bridge
执行格式:
./set_bridge.sh -i 192.168.4.72 -g 192.168.4.1
结果:
[root@localhost ~]# ifconfig
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.4.72 netmask 255.255.255.0 broadcast 192.168.4.255
inet6 fe80::20e:c6ff:fec5:e66f prefixlen 64 scopeid 0x20<link>
ether 00:0e:c6:c5:e6:6f txqueuelen 0 (Ethernet)
RX packets 949676 bytes 188597922 (179.8 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 317931 bytes 71904040 (68.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp0s20u5: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 00:0e:c6:c5:e6:6f txqueuelen 1000 (Ethernet)
RX packets 1072283 bytes 200438143 (191.1 MiB)
RX errors 0 dropped 114 overruns 0 frame 0
TX packets 317930 bytes 74447998 (70.9 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp3s0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether d0:17:c2:8c:47:7d txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 196 bytes 29677 (28.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 196 bytes 29677 (28.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
相关文章推荐
- CentOS 7.2 team实现网卡聚合链路(双网卡绑定)脚本及验证
- ubuntu 双网卡建网桥脚本实现
- CentOS 7.2 bond实现网卡聚合链路(双网卡绑定)脚本及验证(适合云平台)
- CentOS 7.2 bond实现网卡聚合链路(双网卡绑定)脚本及验证(适合云平台)
- CentOS 7.2 bond实现网卡聚合链路(双网卡绑定)脚本及验证(适合云平台)
- 关于 centos 7系统,iptables透明网桥实现【转载请注明】
- 脚本实现centos7修改二块网卡名称并配置ip信息
- shell脚本实现对网卡流量监控
- shell awk实现实时监控网卡流量脚本(常见应用二)
- CentOS 6.5 安装无线网卡驱动实现无线上网
- Shell脚本实现温和方式重启Centos系统
- CentOS中使用Shell脚本实现每天自动备份网站文件和数据库并上传到FTP中(转)
- Centos 双网卡绑定实现负载均衡和故障转移 推荐
- shell awk实现实时监控网卡流量脚本(常见应用二)
- 多台centos虚拟机通过双网卡实现相互ping通和集群联网
- 一个网卡配置多个ip配置实现,centos7系统
- virtualbox 安装centos系统,设置双网卡实现虚拟机上网及主宿互访
- shell awk实现实时监控网卡流量脚本(常见应用二)
- VirtualBox中使用双网卡实现CentOS既能上网(校园网)也能使用SSHclient
- RHEL 7/CentOS 7/Fedora 28 重命名网卡名称[附可行性脚本]