ubuntu 双网卡建网桥脚本实现
#!/bin/bash
interface1=`ls /sys/class/net|grep en|awk 'NR==1{print}'`
interface2=`ls /sys/class/net|grep en|awk 'NR==2{print}'`
interfaces_file="/etc/network/interfaces"
while getopts "i:g:b:" opt; do
case $opt in
i)
ip=$OPTARG
;;
g)
gateway=$OPTARG
;;
b)
broadcast=$OPTARG
;;
\?)
;;
esac
done
echo $ip
echo $gateway
echo $broadcast
function set_bridge(){
#写网卡配置文件
cat > "$interfaces_file" <<EOF
auto lo br0
iface lo inet loopback
auto $interface1
iface $interface1 inet manual
auto $interface2
iface $interface2 inet manual
iface br0 inet static
bridge_ports $interface1 $interface2
address $ip
broadcast $broadcast
netmask 255.255.255.0
gateway $gateway
EOF
sudo /etc/init.d/networking restart
#检查ip地址是否设置成功
res=`ip addr show br0 |grep -c "$ip"`
if [ "$res" -eq ];then
echo "ip地址设置失败" >&
return
fi
#检查默认路由是不是gateway
res=`ip route |grep -c "default\s*via\s*$gateway\s*dev\s*br0"`
if [ "$res" -eq ];then
echo "网关设置失败" >&
return
fi
return
}
set_bridge
执行格式:
./set_bridge.sh -i 192.168.4.147 -g 192.168.4.1 -b 192.168.4.255
结果:
weifeng@weifeng-ThinkPad-E470:~$ ifconfig
br0 Link encap:以太网 硬件地址 00:0e:c6:d2:24:89
inet 地址:192.168.4.147 广播:192.168.4.255 掩码:255.255.255.0
inet6 地址: fe80::20e:c6ff:fed2:2489/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1
接收数据包:455 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:93 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:46287 (46.2 KB) 发送字节:12383 (12.3 KB)
enp4s0 Link encap:以太网 硬件地址 c8:5b:76:96:54:8d
UP BROADCAST MULTICAST MTU:1500 跃点数:1
接收数据包:2991 错误:0 丢弃:1 过载:0 帧数:0
发送数据包:106 错误:0 丢弃:47 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:361624 (361.6 KB) 发送字节:14387 (14.3 KB)
enx000ec6d22489 Link encap:以太网 硬件地址 00:0e:c6:d2:24:89
UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1
接收数据包:186715 错误:0 丢弃:41 过载:0 帧数:0
发送数据包:5115 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:20149201 (20.1 MB) 发送字节:533581 (533.5 KB)
ubuntu 双网卡建网桥脚本实现的更多相关文章
- centos 7 双网卡建网桥脚本实现
#!/bin/bash interface1=`ls /sys/class/net|grep en|awk 'NR==1{print}'` interface2=`ls /sys/class/net| ...
- ubuntu双网卡准备配置
近日有个需求,交换机有两台,做了堆叠,服务器双网卡,每个分别连到一台交换机上.这样就需要将服务器的网卡做成主备模式,以增加安全性,使得当其中一个交换机不通的时候网卡能够自动切换. 整体配置不难,网上也 ...
- Ubuntu双网卡不双待攻略
特别不喜欢基于Windows的工作环境,这对一个Unix/Linux程序员来说,可以说是一种信仰.要不是电子邮件客户端被牢牢绑定在可恶的Outlook 2013上(因为加密邮件要求, 想使用Thund ...
- Ubuntu双网卡设置内外网上网的问题
UBUNTU16.04系统,双网卡:eth0, eth1.分贝设置成Public IP, 和局域网IP, 这样这台计算机就可以访问局域网内的各个IP, 同时还可以在全球各地被访问,使用ssh or r ...
- Ubuntu 双网卡设置
闲话不多说,直接正题 因为chinanet信号不强,所以买了个usb无线网卡,平常又要做开发,要连着开发板,不知怎么回事,一旦自带无线网卡连上内网的无线路由,就不能访问外网了. 网上搜了好久,终于查到 ...
- ubuntu双网卡bonding配置(转)
1.安装软件 apt-get install ifenslave 2.修改配置文件 /etc/network/interfaces auto lo iface lo inet loopback ifa ...
- ubuntu双网卡配置,实现内网外网同时访问!
我们假定内网IP为:10.35.0.58,内网网关为:10.35.0.254:外网IP为222.76.250.4,外网网关为:222.76.250.1.其中局域名网需要连接:10.35.0.X,10. ...
- ubuntu双网卡绑定配置
1,安装bonding需要的软件 sudo apt-get install ifenslave 2,在/etc/modules中加入: bonding mode= miimon= 3,在/etc/ne ...
- Ubuntu 双网卡route
ip route flush table sz ip route add default via 183.2.218.254 dev eth0 src 183.2.218.4 table sz ip ...
随机推荐
- 查看三种MySQL字符集的方法
查看MySQL字符集的命令是我们经常会使用到的,下文就介绍了其中的三种查看MySQL字符集的命令,供您参考学习. 作者:佚名来源:互联网|2010-10-09 11:36 移动端 收藏 分享 CTO训 ...
- PHP正则式PCRE
PHP正则式PCRE的总结差不多就下边这些了.参考 PCRE与perl的差异 . 锚(^.$.\A.\Z/\z):^.$在多行模式下是非紧固的,在单行模式下是紧固的:而\A.\Z / \z在任何模 ...
- struts2 从一个action跳转到另一个action的struts.xml文件的配置
解释: 想要用<result>跳转到另一个action,原来的配置代码是: <action name="insertDept" class="strut ...
- 导入Mybatis_Spring项目遇到的问题
1. 问题: jdk版本不匹配 解决方法:首先 到项目空间的 .setting文件中找到 org.eclipse.wst.common.project.facet.core.xml 修改参 ...
- Java的栈和队列
package com.ipmotor.sm.db;import java.util.LinkedList;import java.util.Queue;import java.util.Stack; ...
- Unix/Linux命令:FTP
在Unix/Linux系统中,ftp命令用来实现客户机和远程主机之的文件传输. 语法:ftp [-Apinegvtd] [hostname] 参数:-p : 传输文件模式为被动模式-i : 关闭交互模 ...
- C#编译成以管理员身份运行程序
转载自:http://www.cnblogs.com/babycool/p/3569183.html 在使用winform程序获取调用cmd命令提示符时,如果是win7以上的操作系统,会需要必须以管理 ...
- SQLServer分页查询模板
SELECT TOP 10 * FROM ( SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM ERPTelFile ) A WHE ...
- 关于ls命令的实例
生活映射程序---------科技创造生活 ls 是Linux的常用命令之一直接使用 ls 命令的话只会列出对应的文件名ls -l 命令会显示文件和目录,包括文件类型,大小,修改日期和时间,权限信息等 ...
- python_print和input
什么是输入? --用户从键盘.鼠标或其他终端 输入 的数据 -- input("提示信息") --python 2.7 rqw_input("提示信息") 如何 ...