Mac上Multipass创建的Ubuntu 22.04虚拟机无法被Windows端MS RDP访问的问题求助
Mac上Multipass创建的Ubuntu 22.04虚拟机无法被Windows端MS RDP访问的问题求助
嗨,我来帮你搞定这个跨设备RDP连接的问题!先梳理下你的当前情况:
- 环境:Mac 12.7系统,用Multipass创建了名为
primary的Ubuntu 22.04虚拟机 - 本地访问正常:从Mac可以轻松通过Shell和RDP连接到虚拟机,XRDP也已经安装并运行
- 限制条件:只能用Windows自带的MS RDP工具,没法换其他远程连接软件
- 核心问题:同一局域网的Windows机器没法RDP连接到虚拟机,用Mac连接时的IP尝试失败
- 补充细节:虚拟机上
hostname -i返回127.0.1.1,实际分配的IP是192.168.64.2;调整Netplan设置后网络状态从“Wired Unmanaged”变成“Wired Connected”,但还是没法从Windows ping通或RDP连接
问题根源
Multipass默认给虚拟机用的是NAT网络模式,这种模式下虚拟机只能和宿主机(也就是你的Mac)通信,同一局域网的其他设备(比如Windows)没法直接访问到它。你看到的192.168.64.2是NAT网段的IP,只有Mac能识别,Windows是访问不到的。
解决方案:切换到桥接网络模式
把虚拟机改成桥接模式,就能让它获得和Mac、Windows同一网段的IP,这样其他设备就能直接访问了,步骤如下:
查看Mac的网络接口
在Mac终端运行ifconfig,找到你当前在用的网络接口名称:- 如果是Wi-Fi上网,一般是
en0 - 如果是有线网,可能是
en1或其他,找带有inet(公网网段IP,比如192.168.1.x)的那一项
- 如果是Wi-Fi上网,一般是
修改虚拟机的网络配置
先停止虚拟机:multipass stop primary添加桥接网络(把
en0换成你刚才找到的接口名):multipass set primary.network.bridged=en0重新启动虚拟机:
multipass start primary获取虚拟机的桥接IP
在Mac终端运行:multipass info primary输出里会显示桥接模式下的新IP(比如
192.168.1.100,和你的Windows在同一网段)验证连通性并尝试RDP
- 先从Windows终端ping这个新IP,如果能ping通,说明网络通了
- 打开Windows的MS RDP,输入这个桥接IP,就能正常连接了
额外检查项
如果还是连不上,看看这两个点:
- 防火墙端口开放:在Ubuntu虚拟机里运行以下命令,确保RDP默认的3389端口开放:
sudo ufw allow 3389/tcp sudo ufw reload - XRDP配置:确认XRDP服务在正常运行,在Ubuntu里运行
systemctl status xrdp,显示active (running)就没问题
备注:内容来源于stack exchange,提问作者bhanu
相关产品推荐
相关产品推荐

