Linux中如何释放DHCP获取的IP地址并重新获取
问题描述
由于之前的一个Linux系统的开发环境使用了DCHP动态分配IP,后来又新增了一个虚拟机也是动态获取IP,当原来的开发环境关机后,打开虚拟机时,虚拟机占用了原来开发环境的IP地址,但由于开发环境远程登录的ssh认证都配置好了不想换IP又配置一遍,所以想将原来的ip地址重新指定给开发环境。
经过多方资料查询和试验,终于成功解决了我的问题。
DHCP如何分配IP地址的?
DHCP服务器优先分配尚未出租的最小的IP地址,以后DHCP客户机每次重新登录网络时,就不需要再发送DHCP discover发现信息,而是直接发送包含前一次所分配的ip地址的DHCP请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ack确认信息。
如果此IP地址无法再分配给原来的客户机时,则DHCP给客户机回答一个nack的否认信息。DHCP客户机收到nack否认信息后,它就必须重新发送DHCP Discover信息来请求新的IP地址。
DHCP服务器向客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址,如果客户机要延长其IP租约,则必须更新其IP租约。DHCP客户机启动时和IP租约期限过一半时,客户机都会自动向DHCP服务器发送更新其ip租约的信息。
解决过程
- 启动虚拟机,在虚拟机中释放占用的IP地址,命令如下。
dhclient -r #释放现有的IP地址
- 启动原来的开发环境,确认已经获取了原来的IP地址
- 启动虚拟机,在虚拟机中释放现有ip
- 在虚拟机中,重新获取IP地址,命令如下:
dhclient #获取新ip
此时,虚拟会获取到一个新的IP地址,以后只要设计租约续期,就不会占用之前的开发环境的IP地址了。
更新于:1个月前赞一波!2
相关文章
- wx.chooseAddress() 获取用户收货地址
- IP、域名查询
- linux shell的几种截取字符串的方法
- Linux中date命令如何格式化输出需要的时间格式
- PHP获取客户端真实IP地址
- 使用Docker Wine Qemu KVM在Linux运行Windows应用
- Debian Linux国内常用镜像源
- CentOS7安装unzip解压工具命令使用方法
- Linux使用Docker部署.NET6网站图文教程
- Linux中通过命令连接指定WiFi
- Vue cli4 图片地址引入的几种方式
- 什么是宝塔Linux
- Linux 删除文件或目录 rm 命令
- 怎样在Linux系统 Ubuntu18.04 中安装微信
- C#中获取本机IP地址、HostName 和DNS名称
- C# WebSocket Client在linux连接失败
- .NET部署到Linux和Windows哪个性能更高?
- CentOS 7 Linux系统中添加新用户并给其授权
- Linux命令大全
- Linux RPM包安装指南
文章评论
全部评论