#!/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 双网卡建网桥脚本实现的更多相关文章

  1. centos 7 双网卡建网桥脚本实现

    #!/bin/bash interface1=`ls /sys/class/net|grep en|awk 'NR==1{print}'` interface2=`ls /sys/class/net| ...

  2. ubuntu双网卡准备配置

    近日有个需求,交换机有两台,做了堆叠,服务器双网卡,每个分别连到一台交换机上.这样就需要将服务器的网卡做成主备模式,以增加安全性,使得当其中一个交换机不通的时候网卡能够自动切换. 整体配置不难,网上也 ...

  3. Ubuntu双网卡不双待攻略

    特别不喜欢基于Windows的工作环境,这对一个Unix/Linux程序员来说,可以说是一种信仰.要不是电子邮件客户端被牢牢绑定在可恶的Outlook 2013上(因为加密邮件要求, 想使用Thund ...

  4. Ubuntu双网卡设置内外网上网的问题

    UBUNTU16.04系统,双网卡:eth0, eth1.分贝设置成Public IP, 和局域网IP, 这样这台计算机就可以访问局域网内的各个IP, 同时还可以在全球各地被访问,使用ssh or r ...

  5. Ubuntu 双网卡设置

    闲话不多说,直接正题 因为chinanet信号不强,所以买了个usb无线网卡,平常又要做开发,要连着开发板,不知怎么回事,一旦自带无线网卡连上内网的无线路由,就不能访问外网了. 网上搜了好久,终于查到 ...

  6. ubuntu双网卡bonding配置(转)

    1.安装软件 apt-get install ifenslave 2.修改配置文件 /etc/network/interfaces auto lo iface lo inet loopback ifa ...

  7. ubuntu双网卡配置,实现内网外网同时访问!

    我们假定内网IP为:10.35.0.58,内网网关为:10.35.0.254:外网IP为222.76.250.4,外网网关为:222.76.250.1.其中局域名网需要连接:10.35.0.X,10. ...

  8. ubuntu双网卡绑定配置

    1,安装bonding需要的软件 sudo apt-get install ifenslave 2,在/etc/modules中加入: bonding mode= miimon= 3,在/etc/ne ...

  9. 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 ...

随机推荐

  1. 阿里云部署SSL证书详解

    http://mp.weixin.qq.com/s/NV7Zad4DVEgzG2GCHYJVLw 查找中间证书 为了确保兼容到所有浏览器,我们必须在阿里云上部署中间证书,如果不部署证书,虽然安装过程可 ...

  2. dedecms列表页有图调用缩略图无图留空的方法

    默认情况下,织梦的文章列表页会调用出当前栏目下的文章列表,并且调用出每个文章的缩略图:如果文章本身就有图,会调用出一张小图,如果没有,则会显示默认的织梦图片.这种处理方式有时候比较影响美观,其实可以修 ...

  3. As a Start - 毫厘之间,宇宙之外

    序 突然想聊聊多重宇宙——多重宇宙,这听上去像是一个科幻概念,但是严肃思考这一个问题时,将会带我们进入一个全新的格局和世界. 对宇宙学家而言,研究多重宇宙并不仅仅是为了猜测平行世界里某一历史事件是否有 ...

  4. web.xml 报错

    1.The markup in the document following the root element must be well-formed. 原因是配置时没有 放在根下 <web-a ...

  5. C语言知识点总结

    本文采用思维导图的方式撰写,更好的表述了各知识点之间的关系,方便大家理解和记忆.这个总结尚未包含C语言数据结构与算法部分,后续会陆续更新出来,文中有漏掉的知识点,还请大家多多指正.

  6. 转:Python之路,Day6 - 面向对象学习

    这篇文章写的不错,转来收了 转自:http://www.cnblogs.com/alex3714/articles/5188179.html   本节内容:   面向对象编程介绍 为什么要用面向对象进 ...

  7. Windows核心编程&线程

    1. 线程上下文:线程内核对象保存线程上一次执行时的CPU寄存器状态 2. 线程上下文切换 3. windows操作系统为抢占式多线程操作系统,系统可以在任何时刻停止一个线程而另行调度另外一个线程.我 ...

  8. maven(项目管理工具系列 maven 总结二)

    ♣maven是什么? ♣maven下载.安装 ♣了解maven仓库 ♣eclipse配置maven ♣创建maven项目 ♣把maven项目转化为web项目 1.maven是什么? Maven是一个项 ...

  9. js内置函数大全及基本使用方法(一)

    一,常规函数 alert函数:显示一个警告对话框,包括一个OK按钮. 语法:alert("hello world"); confirm函数:显示一个确认对话框,包括OK.Cance ...

  10. 刚买个炼狱蝰蛇1800dpi的下完驱动提示没有发现鼠标

    2017-02-19补充:可以下载下面的程序 ,也可以访问 http://cn.razerzone.com/synapse/  下载雷云 也可解决问题 ------------------------ ...