linux拔掉网线ip仍然在,openwrt 实现网线的拔插能够释放IP和重新分配IP地址
工作遇到一个需求就是:当拔出网线时,释放掉IP;再次插上网线时,重新分配IP地址。
这个可以分成两部分来做:
1、获取拔插网线的状态
2、释放IP和重新分配IP
一、获取网线的拔插状态:
方法一:用swconfig命令去获取网线的拔插状态
swconfig命令形式:
swconfig dev [port |vlan ] (help|set |get |load |show)
若不知道dev设备名,则先用swconfig list查看一下
例如:
root@:/# swconfig list
Found: switch0 - QCA DESS #可以看到设备名为switch0
以我的板子为例,
在终端敲下:swconfig dev switch0 port 4 get link | awk '{print $2}' | cut -d":" -f2
就可以获取网线的状态,一般为“up”或者"down",即;连接和断开
方法二:利用热拔插事件去检测网卡的拔插状态
二、释放IP
释放IP,就是删除掉IP,
一种方法是利用ifconfig命令,
另外一种是ip命令的删除方式,
还有一种是命令:dhclient -r
三、重新分配IP
这里提供几种方法去获取IP
方法1:
重启network服务
service network restart或者/etc/init.d/network restart
方法2:
单独启动和关闭某个网卡
ifconfig eth0 down #eth0是网卡名字
ifconfig eth0 up
方法3:
使用ifup命令
例如我的板子:ifup lan命令就可以更新IP
ifup lan #lan是设备名
方法4:
利用dhcp服务获取IP
命令:dhclient
方法5:
命令:udhcpc -i br-lan #br-lan是网卡名,用ifconfig可以查看网卡名
这个是单独更新指定的网卡IP,
例如你要更新的网卡是eth0,则命令是:udhcpc -i eth0
那么把上面合起来就能满足拔出网线,是否IP;插入网线,重新分配IP的功能了!
代码如下:
while true; do
status=`swconfig dev switch0 port 4 get link | awk '{print $2}' | cut -d":" -f2` #这个是获取当前网线的拔插状态,UP就是插着网线,down就是拔出网线
if [ "$status" = "up" ]; then
echo "link up" >/dev/console #连上网线时,打印出信息"link up"
udhcpc -i br-lan #插上网线,更新br-lan的IP地址
else
echo "link down" >/dev/console#拔出网线时,打印出信息"link down"
ifconfig br-lan 0.0.0.0 #拔出网线,重置br-lan的IP地址
fi
sleep 2
done
linux拔掉网线ip仍然在,openwrt 实现网线的拔插能够释放IP和重新分配IP地址相关推荐
- linux网线插拔后ip地址丢失,网线拔掉检测,嵌入式网线直连开发板断电网线拔掉之后,上电仍能自动设置static静态ip地址...
网线拔掉检测,嵌入式网线直连开发板断电网线拔掉之后,上电仍能自动设置静态ip地址 1.首先设置永久固定静态ip地址 luther@gliethttp:~$ sudo vim /etc/network/ ...
- Linux网络知识详解以及demo(Centos6、7)——OSI、TCP、UDP、IP、子网掩码/划分、网关、路由、广播、虚拟网络、网卡、交换机、DNS、ARP
ip地址:网络通讯标识信息 子网掩码:在局域网中可以有多少个主机 网关:从一个局域网到另一个局域网的必经之路 网络号:主机位全为0 广播地址:主机位全为1 子网掩码:网络位全为1,主机位全为0 虚拟软 ...
- linux网卡下有两个system,systemd-networkd 作为网络管理服务,导致dhcp给所有网卡分配同样的IP...
我们虚拟机之前的网卡配置是交给 init的 networking 服务来管理的, 具体配置不同系统系统可能不一样. 比如 Debian/Ubuntu系列操作系统配置在 /etc/network/int ...
- Linux下为网卡分配IP的工具dhclient
一. 工具说明--来自man dhclient 二.自动为网卡分配IP的配置 其中,enp0s2是中的0和2是怎么来的? 可见网卡位于pci的bus0dev2. 如果01-netcfg.yaml中配置 ...
- 用网线给服务器装系统,只用网线从零开始安装系统
只用一根网线,没有光驱,软驱和U盘,如何从零安装系统? 这里的安装不是指ghost 那一类克隆方式的安装,而是从原始光盘镜像一步步安装,不喜欢ghost 方式,别人做好的不放心,自己做呢-- 既然已经 ...
- 开发板给电脑自动分配IP?手把手教部署零配置网络实现电脑与开发板直连
关注.星标嵌入式客栈,精彩及时送达 [导读] 在做一个ZYNQ项目时,需要实现嵌入式Linux与Windows电脑直连.可能会有盆友会遇到类似的需求,所以整理分享一下. 问题描述 基于ZYNQ芯片设计 ...
- 网络基础3-1(细谈IP协议头, 网络层,子网划分,路由选择,数据链路层,以太网帧格式,MAC地址,再谈ARP协议)
IP协议 IP协议头格式 4位版本号(version): 指定IP协议的版本, 对于IPv4来说, 就是4 4位头部长度(header length): IP头部的长度是多少个.32bit, 也就是 ...
- 使用MultiPowerOnOffTool工具 测试拔插网线对路由器的影响
使用MultiPowerOnOffTool工具 测试拔插网线对路由器的影响: 链接:https://pan.baidu.com/s/1Y1wxa4RnmAB4t3zKvSoY_g 提取码:xxxx 1 ...
- 华为eNSP 配置DHCP自动分配IP地址
目录 一.DHCP Global 全局配置地址池 (一)修改与客户端相连的接口 (二)配置DHCP地址池 (三)自动获取IP 二.高级DHCP配置 三.DHCP interface 基于接口的DHC ...
- 路由器自动ip服务器无响应,路由器无法自动分配IP地址原因及解决方法
在现在生活中,路由器担当了很多要的作用,兼职较多服务器功能,这样的规划确实方便了管理和维护,但也为网络的安全.稳定运行埋下了隐患,一旦网络发生故障,对整个局域网的影响几乎是毁灭性的,本篇介绍如何解决路 ...
最新文章
- 分组表管理之保存分组表数据
- java期末考试试卷及答案文库_JAVA期末考试试卷及答案
- JVM的架构和执行过程
- ESX虚拟机文件列表详解
- HSI颜色空间及其应用
- linux ps查看进程命令
- Windows phone listbox动态添加列表项
- golang刷Leetcode系列 --- 加1
- hp-ux mysql_HP-UX 安装MySQL
- golang mysql连接池原理_redis mysql 连接池 之 golang 实现
- php fpm子进程数配置,php-fpm进程管理方式以及子进程数量配置原则详解
- 解决iSlider的一些问题(滑动组件)
- AST语法结构树初学者完整教程
- 构建postfix邮件服务器(五)extmail和extman的安装,实现web使用和管理邮件系统...
- 让css旋转字体图标
- 2022年网络安全行业发展趋势
- CSS——网易云音乐之登录页面的实现
- ME525 刷机历险记
- ShinyApp中的表格:第三天笔记
- 常见编码格式(中文编码)
热门文章
- 001-前端课程介绍
- (转)Qt添加windows开机自启动
- 行为金融(八):羊群行为
- vue 中 axios的post请求,415错误
- ART加载OAT文件的过程分析
- VSCode运行Java报错No delegateCommandHandler for vscode.java.resolveMainMethod
- windows设置定时自动关闭应用
- trackpoint_为什么TrackPoint键盘是ThinkPad爱好者的好礼物
- 08 SSM整合案例【企业权限管理系统】:04.AdminLTE的基本介绍
- 小程序image组件自适应宽高比