telnet 到本地主机和环回设备 IP 有效,但 LAN ip 无效(Xen + Ubuntu)

telnet 到本地主机和环回设备 IP 有效,但 LAN ip 无效(Xen + Ubuntu)

我已经按照以下说明设置了 Xen + Ubuntuhttps://help.ubuntu.com/community/XenPropose。我现在准备安装 HVM 来宾操作系统 (Ubuntu Desktop 12.04)。启动 HVM 来宾操作系统后

xen create ubuntu-hvm.cfg

我现在需要连接到它。我正在使用 VNC 查看器连接到 Windows 机器上的 HVM 来宾操作系统。但是,我无法连接:

unable to connect to host: Connection refused (10061)

在 Xen+Ubuntu 机器 Dom0 上,LAN IP 为 192.168.0.201。作为一个健全性测试,我在 Dom0 控制台上 ping 了以下地址

ping localhost
ping 127.0.0.1
ping 192.168.0.201

所有 ping 操作均成功。然后我尝试通过端口 5900 telnet。

telnet localhost 5900
telnet 127.0.0.1 5900
telnet 192.168.0.201 5900

最后 telnet 到 LAN IP 不起作用:

telnet: Unable to connect to remote host: Connection refused

我还检查以确保端口 5900 已打开。

sudo netstat -tcp --listening --programs

我得到以下信息。

Proto Recv-Q Send-Q Local_Address        Foreign_Address State  PID/Program_name
tcp   0      0      localhost:5900       *:*             LISTEN 2097/qemu-dm
tcp   0      0      192.168.122.1:domain *:*             LISTEN 5653/dnsmasq
tcp   0      0      *:ssh                *:*             LISTEN 1198/sshd
tcp   0      0      [::]:ssh             [::]:*          LISTEN 1198/sshd

在我的 Windows 机器上,可以 ping 到 192.168.0.201,但 telnet 192.168.0.201 5900 不起作用。

任何帮助表示赞赏。

答案1

问题是 vnc 服务器正在监听(默认)本地主机,而不是您的外部 IP 地址。重要的是要了解服务可以侦听特定 IP 地址并且只能通过该地址访问。在您的情况下,VNC 服务仅侦听 127.0.0.1,并且只能通过 localhost 访问。由于 VNC 未加密,因此允许远程 VNC 而不进行任何类型的加密是一个坏主意。

您可以通过 ssh 建立 VNC 隧道。只需使用 putty 并从本地计算机转发端口,例如在 SSH - 隧道下添加以下参数:

Local port: 5900
Destination: 127.0.0.1:5900

不要忘记单击添加。之后通过 ssh 连接到您的 Ubuntu 系统,并尝试在您的 Windows 计算机上连接到本地主机。这将通过 ssh 将所有数据包转发到本地计算机上的端口 5900 到您的 ubuntu 盒子。

如果您不想设置 ssh,您可以修改 vnc 进程在所有接口上监听的 cfg 文件。

根据https://help.ubuntu.com/community/Xen您可以编辑该行/etc/xen/xend-config.sxp并将其更改为.请注意,所有未配置的 vnc 连接都可以通过所有 IP 地址访问。(vnc-listen '127.0.0.1')(vnc-listen '0.0.0.0')

您也可以只编辑ubuntu-hvm.cfg并添加vnclisten '0.0.0.0'到配置文件 - 根据http://docs.oracle.com/cd/E11081_01/doc/doc.21/e10898/troubleshoot.htm#insertedID3

答案2

您也可以连接到控制台,终止 dom0 上的 vnc 进程,然后执行以下操作:

xl console <domid>

这在 xcp-xapi 工具堆栈下也适用,并且具有正确执行的完整路径。 (在 12.04 ubuntu /usr/lib/xen-4.1/bin/xl console 中)

除非进行图形安装,否则不必使用 vnc。

相关内容