【发布时间】:2012-10-29 16:19:18
【问题描述】:
这几天一直在研究这个问题。它来来去去...意思是,问题存在 8-10 小时,然后消失 12 小时,然后重新出现 4 小时,然后消失 2 小时等。
这是我的设置:我有一个运行 IIS 7.5 的 Windows 2008 R2 服务器,它托管了大约 60 个网站。每个网站都有自己绑定的 IP 地址。所有站点都在端口 80 上运行,除了一个(我的管理面板)在端口 443 (ssl) 上运行。
我注意到这些网站上周停止工作。我访问了其中一个站点,chrome 给了我“糟糕!Google Chrome 无法连接到 www.mysite.com 尝试重新加载...”。如果我刷新页面 5 或 6 次(有时需要 10 次以上),那么该网站就会出现。我最初的想法是这是一个与网络相关的问题,所以我 RDP 连接到服务器,打开 IIS 并从 IIS 中的浏览链接浏览到一些站点。我直接在服务器上看到了同样的东西。然后我想,也许是因为通过点击IP,它仍然首先到达路由器,这可能是问题的根源,所以我将其中一个站点绑定到环回地址(127.0.0.1)并看到了同样的问题。整个问题的一个不变之处是我在 443 上的站点从未出现过故障,这让我开始认为可能只是端口 80 有问题,所以我将绑定 127.0.0.1 的站点绑定到另一个端口(20005 ) 当我通过点击 127.0.0.1:20005 和它在端口 20005 上的常规 IP 在本地浏览它时,它运行良好。
通过这些“测试”,我发现只有端口 80 有问题。我的下一个想法是,也许是赛门铁克的端点保护(我的病毒软件)阻止了端口 80 上的传入请求,所以我禁用了它......同样的问题。
然后我想可能是我的 Windows 防火墙规则在呕吐。我重新创建了规则以允许端口 80 上的流量通过,同样的问题。然后我完全禁用了防火墙,看看是否有其他东西在防火墙内绊倒了它,同样的问题。
然后我尝试从远程计算机远程登录到端口 80 上的站点之一。它通过了 3 或 4 次,然后 telnet 将无法连接。因此,它所经历的时间是服务器提供网页的时间。它无法连接的时间就是它无法为页面提供服务的时间。
然后我在 IIS 中为其中一个站点添加了“失败的请求跟踪”,看看我是否可以确定它失败时失败的原因。我试图访问该站点几次,但失败了,但没有创建日志。然后我终于通过了,它创建了一个日志。这告诉我,当它失败时,它甚至没有进入 IIS。
然后我尝试运行:
netstat -anp tcp | find ":80"
查看是否有其他东西正在捕获从端口 80 传入的流量。这并没有向我显示任何异常情况。我还下载并运行了 TcpView 并没有看到任何会捕获端口 80 上的流量的东西。然后我停止了 IIS 并再次运行上述两个,当 IIS 停止时,端口 80 上没有任何监听。
然后,我尝试进行一些端口映射,将进入端口 80 的流量映射到高端口,看看这是否至少可以让服务器始终如一地服务页面。我用这个命令来映射端口
netsh interface portproxy add v4tov4 listenport=80 listenaddress=188.55.22.11 connectport=20005 connectaddress=188.55.22.11
这也没有解决问题,它告诉我问题在它到达网络堆栈的那个级别之前就已经发生了(我不知道在哪里??)。
我已经完成了 iisreset,我已经重新启动了服务器,我已经运行了病毒扫描,我已经运行了 Windows 更新,我已经完成了磁盘碎片整理...没有任何东西可以解决这个问题。
我的问题可能与硬件有关吗?网络接口是否会变坏到只允许一个端口上的流量,但允许所有其他流量通过的地步?我可以 FTP 到机器没有任何问题,我可以 RDP 到机器没有任何问题,如上所述,我在 443 上的站点从未出现过问题......它只有端口 80。
我完全不知道要寻找的东西/解决这个问题的方法。欢迎在这一点上提出任何建议。
更新:我将网络接口切换到服务器上的另一个 NIC 并看到同样的问题
TIA
【问题讨论】:
-
您是否有任何 Voip 软件?我注意到许多企业 VoIP 解决方案倾向于与 80 混淆。
-
否定的。除了 http、ftp 和远程桌面之外,机器上运行的唯一其他服务是 DNS。
标签: networking iis-7.5 windows-server-2008-r2 port80