wget、curl HTTP 地址失败,HTTPS 工作,ping 工作

wget、curl HTTP 地址失败,HTTPS 工作,ping 工作

我正在运行 Ubuntu Server 14.04.2,我无法再与外部 http 地址通信。我可以ping google.com,我可以wget https://google.com,但我不能wget http://google.com

 $ wget http://google.com
     --2015-11-18 11:01:57--  http://google.com/
     Resolving google.com (google.com)... 74.125.224.99, 74.125.224.100, 74.125.224.98, ...
     Connecting to google.com (google.com)|74.125.224.99|:80... failed: Connection refused.
     Connecting to google.com (google.com)|74.125.224.100|:80...

运行较新的 Ubuntu Server 14.04.3 的同一网络上的虚拟机没有此问题,并且可以成功 wget http 或 https 地址。

该问题导致composer update错误,packagist 给出了以下响应:

[Composer\Downloader\TransportException]
The "http://packagist.org/p/provider-[idstring].json" file could not be downloaded: failed to open stream: Connection timed out

此网络没有代理。

我能想到的两台机器之间唯一真正的区别是,有问题的机器有一个静态 IP,而另一台机器使用 DHCP。

在执行 wget 到 google 的过程中,我监控了从两台机器通过网络防火墙的数据包,发现防火墙没有阻止任何东西。

谢谢阅读。

更新 我将静态 IP 更改为另一个静态 IP,它成功了。我能够在另一个 IP 上安装 traceroute,并在更改回来后运行它:

sudo traceroute -T -p 80 google.com

给我 30 行星星。

答案1

找到问题了。我们上周更改了公共 IP,防火墙中有一个服务对象分配了旧 IP,因此流量可能正常出去,只是回不来了。我将对象的 IP 更新为新的外部 IP,一切又开始正常了。

相关内容