ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

解决 VMware 虚拟机挂机后 IP 漂移,SSH 连接频繁断开的问题

2026/8/2 10:35:59 拓冰建站 浏览量
解决 VMware 虚拟机挂机后 IP 漂移,SSH 连接频繁断开的问题 很多用 VMware 运行 Linux 虚拟机的开发者都会遇到一个经典问题白天配置好环境MobaXterm/Xshell 连得好好的挂机一晚上或者电脑休眠唤醒后SSH 直接连接失败进虚拟机一看IP 地址悄悄变了。每次都要重新查 IP、改会话配置非常影响开发效率。本文就带你彻底根治这个问题给虚拟机锁死静态 IP一次配置永久生效。、一、为什么挂机后 IP 会变核心原因只有一个虚拟机默认使用 DHCP 动态获取 IP。DHCP 租期机制VMware 虚拟网络的 DHCP 服务会给每个网卡分配一个有租期的 IP。当虚拟机长时间待机、休眠唤醒、虚拟网卡重启时会重新向 DHCP 申请地址租期到期后大概率分配到新 IP。宿主机电源管理触发网络重置Windows 宿主机进入休眠 / 睡眠时系统会自动关闭 VMware 虚拟网卡VMnet8来节约电量。唤醒后虚拟网卡重启DHCP 重新分配地址间接导致虚拟机 IP 变更。NAT 模式特性绝大多数人使用的 NAT 模式VMnet8默认开启 DHCP 自动分配。如果没有手动绑定 MAC 地址每次网络刷新 IP 都可能漂移。我们可以在命令行用命令查看ip a重点查看ip时末尾有dynamic意味着当前 IP 是DHCP 动态分配。二. 解决方案1. 获取 IP 与子网掩码ip -4 addr show ens33 | grep inet | awk {print $2} # 示例输出192.168.220.144/242. 获取网关地址ip route | grep default | awk {print $3} # 示例输出192.168.220.23. 获取 DNS 地址自动拼接逗号格式cat /etc/resolv.conf | grep nameserver | awk {print $2} | xargs | sed s/ /,/g # 示例输出114.114.114.114,8.8.8.8一键汇总查看所有参数推荐直接运行echo IP/子网: $(ip -4 addr show ens33 | grep inet | awk {print $2}) echo 网关: $(ip route | grep default | awk {print $3}) echo DNS: $(cat /etc/resolv.conf | grep nameserver | awk {print $2} | xargs | sed s/ /,/g)4. 执行静态 IP 配置将上一步查询得到的参数填入下方命令执行nmcli connection modify ens33 \ ipv4.method manual \ ipv4.addresses 【采集到的IP/24】 \ ipv4.gateway 【采集到的网关】 \ ipv4.dns 【采集到的DNS】加载新网络配置重启网卡生效nmcli connection down ens33 nmcli connection up ens335. 结果校验使用ip a命令查看dynamic 消失意味着这个ip变为静态ip