ssh操作ubuntu16网卡改为网桥时

由于需要让虚拟机容器等桥接到物理网络中来,所以就开始创建br0网桥并把当前的网卡作为接口绑定到这个网桥上。
系统版本是 ubuntu16.04
操作过程中发现改完配置文件 /etc/network/interfices 尝试重启服务 networking,发现会报错。
开始以为是配置文件哪里写错了,各种排查尝试后注意到服务报错的是不能up网卡之类的,此时用ip命令或许会发现 网桥出来了,网卡和网桥上都有ip地址,就是网络出不去断网了。
手动命令执行配置才知道,是网卡处于占用状态,接入网桥失败

同样,网桥恢复到网卡模式时 也会状态占用导致失败。测试明白后得出操作顺序和 重启服务前置工作
此时就要实现不断网完成整个流程,尝试写成脚本执行

#! /bin/bash

# 网卡连接变网桥时 脚本后跟上网卡名字即可
# 网桥变回网卡时 脚本后第一个参数是网桥 第二个是接口网卡
# 网桥上绑定多网卡接口的这里不支持

# 如果有两个传参,从网桥上分离接口网卡,并且down掉网卡
if [[ $2 ]];then
    brctl delif $1 $2
    ifconfig $2 down
fi

# 去掉ip并且down掉当前的设备(网桥或网卡)
ip addr flush dev $1
ifconfig $1 down

# 如果;两个传参,删掉网桥
if [[ $2 ]];then
    brctl delbr $1
fi

systemctl restart networking.service

# 网卡配置文件需要自己手动更改

网卡改网桥时,编辑好interfaces配置文件后 执行者个脚本,跟上 网卡的名字。例:

sudo bash run.sh ens160

此时只有网卡在工作,所以只需要释放掉网卡上的ip 然后down掉网卡 就好了

取消网桥换回网卡模式时,恢复interfaces配置文件内容后执行脚本,跟上 网桥名字和网卡名字。例:

sudo bash run.sh br0 ens160

此时需要把网卡从网桥上剥离,然后释放掉网桥上的ip 然后down 掉网桥和网卡,删除网桥

总结就是 networking服务不会释放网络设备资源,所以当需要的网络设备资源被占用时重启过程就会报错。我们要做的就是帮它释放资源

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值