我在运行Windows XP的笔记本电脑上安装了Xming X Window Server,以连接到某些UNIX开发服务器。

当我直接连接到办公室中的公司网络时,它可以正常工作。但是,当我通过VPN远程连接到网络时,它不起作用。

当我远程连接时启动Xming时,不会显示任何终端Windows。

我认为这可能与DISPLAY环境变量有关,该环境变量在连接笔记本电脑时未正确设置为笔记本电脑的IP地址。

我注意到,当我在远程连接时执行ipconfig时,我的笔记本电脑有两个IP地址,一个是从公司网络分配给它的,另一个是我从我的“本地网络”上为其设置的本地IP地址。调制解调器/路由器。

我需要在Xming中进行一些配置更改以支持通过VPN使用它吗?

最佳答案

可能是X身份验证,绑定(bind)到接口(interface)的X服务器或DISPLAY变量。我自己不使用Xming,但有一些一般现象需要检查。您可以手动验证DISPLAY变量正确的一项测试是:

  • 启动您的VPN。运行ipconfig以确保您拥有提到的两个IP地址(您的本地IP和您的VPN IP)。
  • 启动Xming。运行“netstat -n”以查看其如何绑定(bind)到接口(interface)。您应该看到显示localIP:6000或VPNIP:6000的内容。可能不是6000,但是很有可能会是这样。如果没有VPNIP:6000,则可能仅绑定(bind)到您的localIP甚至127.0.0.1。那可能无法在VPN上工作。检查是否存在一些Xming设置以使其绑定(bind)到其他或所有接口(interface)。
  • 如果看到VPNIP:6000或类似的内容,请记下它说的内容,然后将远程Shell插入UNIX主机(希望是ssh之类的东西,如果不需要获得文本终端的话,则不是这样)。
  • 在UNIX终端上,键入'echo $ DISPLAY'。如果没有显示任何内容,请尝试使用'export DISPLAY = VPNIP:0.0',其中VPNIP是您的VPN IP地址,而0.0是您在步骤3中看到的端口减去6000并以.0结尾(即6000 = 0.0,6010 = 10.0)。
  • 在UNIX主机上运行“xclock”或“xterm”之类的内容以查看其是否运行。该错误信息应该是有用的。它会告诉您它要么无法连接到主机(连接问题),要么身份验证失败(您需要在主机和本地计算机上协调Xauth或在本地计算机上协调Xhost)。

  • 如果您有本地保护的网络并且要通过VPN,则打开Xhost(所有主机都带有+或类似名称)并不算太坏。希望这将使您开始跟踪问题。当它通过VPN或简单的ssh连接工作时,通常有用的另一个选项是ssh隧道或ssh上的X11转发。通过将UNIX主机上的端口重定向到X服务器盒上的本地端口,可以模拟到本地盒上的X服务器的连接。对于本地6010端口,您的显示通常类似于localhost:10.0。

    X设置起来可能很麻烦,但是一旦掌握了它,通常效果很好。

    关于unix - 通过VPN使用Xming X Window Server,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4519/

    10-15 18:18