服务器与大带宽专家 · 持牌IDC/CDN/ISP服务商
简米科技官网JIANMI TECH
资讯 2026-10-23 简米科技 4,850 字 12 分钟阅读

新建Linux虚拟机后,IP地址怎么配置才能远程连接?Linux虚拟机IP配置步骤详解

导读新建Linux虚拟机后,想远程连接,核心答案是把网卡模式选对、IP地址设为静态、并确保SSH服务已开启,配置IP前的三件准备:网卡模式、系统类型、SSH状态很多朋友装好虚拟机后发现连不上,其实不是IP配置技巧有问题,而是底层环境没理顺,下面按顺序过一遍,确认虚拟机网卡模式:NAT还是桥接VMware和Virtu……

新建Linux虚拟机后,想远程连接,核心答案是把网卡模式选对、IP地址设为静态、并确保SSH服务已开启。


配置IP前的三件准备:网卡模式、系统类型、SSH状态

很多朋友装好虚拟机后发现连不上,其实不是IP配置技巧有问题,而是底层环境没理顺,下面按顺序过一遍。

确认虚拟机网卡模式:NAT还是桥接

VMware和VirtualBox默认给虚拟机两种常见网络模式,选错是远程失败的根源。

  • NAT模式:虚拟机藏在宿主机后面,对外部网络不可见,宿主机能访问虚拟机,外部设备想连虚拟机得先做端口转发。
  • 桥接模式:虚拟机直接接入物理局域网,跟宿主机“平起平坐”,局域网内其他电脑可直接访问。

对于远程连接场景:如果你在公司或家里局域网内,让同事或另一台电脑直接SSH连过来,选桥接模式最省心,如果只是自己宿主机连虚拟机测试,NAT模式配合端口转发也行,但配置步骤多一层。

确认操作系统是否有图形化网络工具

Ubuntu桌面版自带nmtui或GNOME网络设置面板,而Server版或CentOS/Rocky最小化安装通常只有命令行,图形界面管不到的命令行网络,得用nmcli或改配置文件解决。

确认SSH服务已安装并启动

这是最容易忽略的一步,IP配得再对,SSH没启动也是白搭。

# Debian/Ubuntu系
sudo systemctl status ssh
# 如果显示 inactive (dead),启动并设为开机自启
sudo systemctl enable --now ssh
# CentOS/Rocky/RHEL系
sudo systemctl status sshd
sudo systemctl enable --now sshd

状态为active (running)后,再继续后续操作。


Linux虚拟机静态IP设置方法:逐版本实操

行业共识认为,静态IP比DHCP分配更适合长期远程登录,DHCP分配的地址可能随时变,一旦IP漂移,你的Xshell或FinalShell连接配置就全部失效,下面分开说主流发行版怎么配。

Ubuntu 18.04及以上:netplan配置法

Ubuntu从18.04开始用netplan管理网络,配置文件位于/etc/netplan/目录下,通常是00-installer-config.yaml或01-network-manager-all.yaml。

先查看网卡名称:

ip addr show

常见的是ens33、ens160或eth0,记下后编辑配置文件:

sudo nano /etc/netplan/00-installer-config.yaml

桥接模式,静态IP):

network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: false
      addresses:
        - 192.168.1.100/24
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses:
          - 114.114.114.114
          - 8.8.8.8

注意两点:缩进必须用空格,YAML格式不接受Tab;168.1.100换成你局域网内的空闲地址,网关要跟路由器实际网关一致。

应用配置:

sudo netplan apply

验证是否生效:

ip addr show ens33
ping -c 4 www.baidu.com

可以ping通说明网络已通,如果报错,用sudo netplan try先测试配置,超时自动回滚,防止把SSH连接弄断。

CentOS/Rocky/AlmaLinux 8、9系:nmcli工具

这些发行版推荐用nmcli操作,比改配置文件更不容易出错。

# 查看连接名称
nmcli con show
# 修改当前连接为静态配置
sudo nmcli con mod "System eth0" ipv4.method manual \
ipv4.addresses 192.168.1.100/24 \
ipv4.gateway 192.168.1.1 \
ipv4.dns "114.114.114.114 8.8.8.8"
# 重启网络连接(不是systemctl restart network,旧命令已废弃)
sudo nmcli con up "System eth0"

重启后验证:

ip a
ip route

通用应急方案:nmtui交互界面

如果不想记命令,装一下nmtui(NetworkManager文本用户界面),像操作图形界面一样完成配置:

sudo yum install -y NetworkManager-tui   # RHEL系
sudo apt install network-manager         # Ubuntu系
sudo nmtui

选Edit a connection,找到你的网卡,IPv4 CONFIGURATION选Manual,填入地址、网关、DNS,保存后激活,这方法在多数Linux虚拟机场景下都能解决静态IP设置问题。


虚拟机桥接模式IP怎么配置:以真实局域网为例

桥接模式下的配置核心差异在于IP段和宿主机保持一致,比如你宿主机Windows是168.31.200/24,网关是168.31.1,那么虚拟机就得设成168.31.x,而不是NAT模式下的168.xxx.xxx。

先查宿主机网络信息

Windows宿主机上执行ipconfig,确认:

  • IPv4地址段
  • 默认网关
  • DNS服务器

Linux宿主机上执行ip addr和ip route。

设置虚拟机静态IP

按上文Ubuntu或CentOS的方法,把地址填成跟宿主机同一网段,例如宿主机是168.31.200,虚拟机可以设168.31.210,网关填168.31.1。

关键点: VMware里选桥接时,需要指定桥接到哪块物理网卡,如果宿主机有有线网卡和无线网卡,必须选实际连网的那块,否则虚拟机拿到了IP也出不了网,VirtualBox则在全局设置里选桥接网卡名称。

验证外部设备能否访问

配完后,用另一台电脑或手机(连同一个Wi-Fi)测试:

ping 192.168.31.210

能通,说明桥接成功,外部设备可以顺利SSH远程连接。


远程连接不上怎么解决:五个高频坑排查清单

即便是按静态IP设置方法操作,远程连接还是有翻车概率,多数情况下问题出在以下位置。

防火墙拦截了SSH端口

  • Ubuntu:sudo ufw status,如果active,执行sudo ufw allow 22/tcp
  • CentOS/Rocky:sudo firewall-cmd --permanent --add-service=ssh && sudo firewall-cmd --reload

SELinux干扰(RHEL系专属)

getenforce

如果是Enforcing,临时放行SSH:

sudo setsebool -P ssh_sysadm_login on

不建议直接关SELinux,放行必要端口更安全。

SSH配置禁用了密码登录

编辑/etc/ssh/sshd_config,确认:

PasswordAuthentication yes
PermitRootLogin yes   # 如果想用root登录

然后重启SSH服务。

IP冲突导致连不上

虚拟机IP跟局域网其他设备撞了,症状是能ping通但SSH握手慢或直接拒绝,用arp-scan扫一下局域网:

sudo arp-scan --localnet

发现冲突,换一个IP重新设置。

VMware端口转发(NAT模式专用)

如果你坚持用NAT模式,得设置VMware端口转发规则,把宿主机的22026端口映射到虚拟机的22端口,然后用ssh -p 22026 root@宿主机IP连接。


三种网络模式的适用场景对比

模式 外部局域网设备能否直接连接 虚拟机能否访问外网 适用场景 配置复杂度
NAT 不能(需端口转发) 能 纯本机测试 中
桥接 能 能 生产模拟、多机协作 低(网段选对即可)
仅主机 不能 不能 隔离环境调试 低

如果拿不准选哪个,本地开发用NAT,需要跟同事联调或远程部署用桥接,这是运维圈默认的选法。


Linux虚拟机远程连接的其他细节

固定IP地址后,SSH会话断连是常态

改IP时,如果你本身正通过SSH连接,改完必定断线,正确姿势是用宿主机终端或VMware控制台改,改完再通过新IP重连。

笔记本场景:无线切换导致虚拟机失联

用笔记本跑虚拟机的场景下,桥接模式会跟着宿主机Wi-Fi走。宿主机从办公室Wi-Fi切到家里Wi-Fi,网段变了,虚拟机IP就会失联,业内专家指出,这种情况直接把虚拟机关机再开机,重新获取或改IP即可,别硬折腾宿主机网络。

云服务器场景不适用

本文讲解的是本地虚拟机,买的是简米云、酷番云这类云服务器的话,IP配置在控制台操作,不是命令行改配置文件,云服务器重置IP后重启会生效。


关于Linux虚拟机IP配置的常见问题

为什么我设置了静态IP后,虚拟机无法联网了吗?

网关和DNS填写错误是首要原因,先用ip route show default看看默认路由是否指向正确网关,再用cat /etc/resolv.conf确认DNS,如果网关填错,比如实际网关是168.31.1,填成168.1.1,必然上不了外网,另外要确认虚拟机的NAT或桥接是否选对了,如果选的是仅主机模式,虚拟机本身就无法访问外网。

虚拟机重启后IP地址变了,怎么固定下来?

静态IP配置正确的情况下不会变,如果变回去了,多半是配置文件没生效Ubuntu检查netplan apply执行过没有,CentOS检查nmcli con mod改的是不是当前活跃连接;另一种情况是网卡MAC地址变了,虚拟机克隆或快照恢复后MAC跟以前不一样,DHCP分配了新地址,查看网络配置里是否跟当前ip link显示的MAC一致。

SSH连接超时或拒绝连接,跟IP配置有关吗?

SSH连接被拒,需要区分是网络层问题还是ssh服务问题。ping虚拟机能通,说明IP配置和网络路径没问题,问题在SSH服务;ping不通,先检查虚拟机IP和宿主机IP是否在同一网段,再查防火墙规则,Ubuntu 22.04和CentOS 9默认SSH是允许的,但某些精简版系统默认没装SSH服务,需先apt install openssh-server或yum install openssh-server。


整体看下来,Linux虚拟机远程连接的根基在于选对网卡模式、配好静态IP、保证SSH存活这三板斧,桥接模式适合局域网内多设备互联,NAT模式适合本机自测,想一劳永逸就把静态IP写死在配置里,按上面步骤走一遍,大多数远程连接问题会在十分钟内理顺。

分享本文
本文为 简米科技官网 原创,已由运维技术专家审核。转载请注明来源:原文链接
售前咨询 服务热线 售后 邮箱