windows-server-2008 – Windows Server 2008 – 连接到127.0.0.1

前端之家收集整理的这篇文章主要介绍了windows-server-2008 – Windows Server 2008 – 连接到127.0.0.1前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在运行 Windows Server 2008 R2,我们有一个应用程序连接(绑定)服务器上的公共IP到127.0.0.1:8334 [连接到监听0.0.0.0:8334的服务]

在Windows 2003中,没有问题.我们可以使用TCP从1.2.3.4 [例如]连接到127.0.0.1:8334就好了.

在Windows 2008中,我们发现来自公共IP的TCP连接,例如1.2.3.4到127.0.0.1:8334失败,甚至.但该服务接受从127.0.0.1到127.0.0.1:8334和127.0.0.1到1.2.3.4:8334的连接.

尝试关闭Windows防火墙,配置其日志记录等(没有显示有用的日志条目),但无济于事.这是新网络堆栈的问题吗?

编辑

1.2.3.4正在尝试连接到同一台机器上的localhost [127.0.0.1]

主机文件是默认的Windows 2008主机文件.

环回检查信息,有趣.试了一下……没有用.交叉检查以验证Id是否正确完成了所有操作 – 我有.

我想知道是否有使用NAT或其他方式转发端口的解决方案 – 如果我将127.0.0.1:port转发到1.2.3.4:port,那会有用吗?鉴于应用程序侦听0.0.0.0:port,它将在1.2.3.4:port上获取连接

HOSTS文件包含localhost 127.0.0.1 – 但是,hosts文件仅用于主机名查找.在这种情况下,我们的应用程序不会查找任何主机名,因为127.0.0.1 IP地址被硬编码到其中(而不是localhost主机名).所以HOSTS文件不会在这里发挥作用.

至于1024以上的端口[想想你可能会参考MaxUserPort问题?]我通过尝试简单连接到端口445来测试它 – 从127.0.0.1开始工作,当我从源IP 1.2.3.4连接时不起作用. 445是标准的Windows服务,所以应该工作!

目前没有在机器上运行NAT或RRAS …想知道是否有办法进行重新路由 – 我猜它不会工作,因为TCP / IP堆栈将在它到达环回接口重新路由之前拒绝该数据包.

路由打印我检查过 – 似乎没问题,公共IP首先路由,然后最终127.0.0.0网络掩码255.255.255.0和127.0.0.1网络掩码255.255.255.255都回送.

编辑
似乎我找到了问题原因的答案.我使用了eventvwr.msc,启用了Winsock日志记录,关闭了其他服务,只是尝试了这个连接测试.我用Google搜索时出现了以十六进制映射到STATUS_INVALID_ADDRESS_COMPONENT的错误.

这让我:
http://social.msdn.microsoft.com/Forums/en-US/wfp/thread/d7cb6138-3f67-4467-a068-8325f56739ba

这证实了这是WFP for Vista / 7 / Server 2008 [windows过滤平台]的设计变更.

[见Anupama Vasanth的回应]

看起来我将不得不走艰难的路线并重写代码[很难,因为这意味着与管理人员打交道!]

感谢您帮我找到/确认问题!

不要忘记,在Windows 2008中,默认情况下防火墙已打开.这可能会阻止任何&甚至在环回接口上的所有流量.此外,如果绑定到0.0.0.0,则表示您接受所有接口上的连接.防火墙仍会阻止这种情况.您可以尝试在测试时关闭防火墙……然后重新打开它.我没有遇到任何与我在127.0.0.1上开发的各种程序有关的问题.

猜你在找的Windows相关文章