连接到在(有时是虚拟化)Windows 计算机上运行的服务器时出现问题

发布于 2024-10-11 22:00:03 字数 937 浏览 4 评论 0原文

***很抱歉使用 Term Host 和 Term Host。我发现客人有些困惑。我所说的“主机”是指在您所需的端口上侦听传入连接的客户端,“来宾”是指尝试检索您预定义的 Dyndns.org 地址的 IP 的服务器。然后尝试连接。你可能会说这是“倒退”,但对于我的应用场景来说,这是合适的方法。由于我在英国,我提到的公共 IP 以 91 开头。

这里有两个图来解释服务器是否连接到在同一操作系统上运行的客户端。

Ubuntu -

通过 127.0.0.1 连接 Linux = 成功!

通过公共 IP 连接 = 成功!


Windows - 笔记本电脑 TinyXP - 笔记本电脑 Vista -

通过 127.0.0.1 的 VM TInyXP 连接 = 成功!

通过公共 IP 连接 = 失败!


所以问题出在Windows上。我已经尝试过 Twisted 示例,它们再次在本地主机上工作,但不是通过 Windows 上的公共 IP,因此它不可能是我的脚本。它不可能是防火墙,因为两个 TinyXP 安装没有默认防火墙,而 Vista 笔记本电脑确实有默认的防火墙,但在它弹出提示后我解锁了该进程。因此并没有产生任何更好的结果。

为了转发端口,我进入了 Orange Livebox 的配置页面(192.168.1.1)并转发了 TCP 端口 4005。就像我在 Ubuntu 上测试它时所做的那样(而不是使用 4004 端口),所以它也不可能是这样。我尝试使用wireshark(发现很难理解)。我开始捕获所有端口上的数据包,然后启动客户端,然后启动服务器。结果条目在这里 http://pastebin.com/ddytpydz

唉,我对我能做什么没有更多的想法。我使用的扭曲版本是最新版本之一,而 Python 版本是 2.6 有人有一些想法吗?

***Sorry for using the Term Host & Guest I see that has confused things slightly. By Host I mean Client which listens on your desired port for incoming connections and by Guest I mean Server which attempts to retrieve the IP of your pre-defined Dyndns.org address. Then tries a connection. You may say that's 'backwards' but for my applications scenario that's the fitting method. Since I'm in the United Kingdom my public IP I mentioned starts with 91.

Here's two diagrams to explain if the Server connections to the Client running on the same OS.

Ubuntu - Linux

Connection over 127.0.0.1 = SUCCESS!

Connection over public IP = SUCCESS!


Windows - Laptop TinyXP - Laptop Vista - VM TInyXP

Connection over 127.0.0.1 = SUCCESS!

Connection over public IP = FAILED!


So the problem is Windows. I've tried the Twisted examples and again they work over local host but not via public IP on Windows so it can't be my script. It can't be the firewall as the two TinyXP installations don't have the default firewall, whilst the Vista laptop did have the default shipped one however I unblocked the process after it popped up prompting me. and thus did not yield any better results.

To forward the port I went to my Orange Livebox's configuration page (192.168.1.1) and forwarded the TCP port 4005. Just as I did for when I tested it on Ubuntu (Instead using the 4004 port) so it can't be that either. I attempted to use wireshark (Found it hard to understand). I started capturing packets on all ports, then fired up the Client followed by the Server. Resulting entries are here http://pastebin.com/ddytpydz

Alas I have no more ideas on what I can do. The twisted version I'm using is one of the latest whilst the Python version is 2.6 Any one have some ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

许你一世情深 2024-10-18 22:00:03

所以也许Windows对监听有一些限制。据我记得有些 Windows 最多可以打开 5 个端口进行监听。但我记得不太清楚了。

So maybe there is some windows limitations for listenings pors. As far as I remeber some Windows can have max 5 ports open for listening. But I don't remeber exacly.

瞎闹 2024-10-18 22:00:03

听起来像是防火墙问题。我会将端口或 python.exe 添加到批准列表中。

是否有任何 Windows 计算机已加入域?

Sounds like a firewall problem. I would add either the port or python.exe to the approved list.

Are any of the Windows machines joined to a domain?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文