我在 Dell PowerEdge 服务器上安装了 Debian Squeeze。但是,我在配置网络时遇到了一些问题。虽然我可以 ping 通网络内的机器,但我无法在网络外 (google.com) 执行 d0 操作。最奇怪的是,我可以从 Debian 存储库更新软件包并安装它们!
DNS 解析工作正常--已通过 验证host google.com
。
我知道这应该是与网络配置和/或防火墙相关的问题。但是,我无法找出问题所在。我非常感谢任何帮助。
内容/etc/网络/接口
# The loopback network interface
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
#iface eth0 inet dhcp
iface eth0 inet static
address 10.14.85.244
netmask 255.255.0.0
network 10.14.0.0
gateway 10.14.1.2
内容/etc/resolv.conf
domain sit.iitkgp
search sit.iitkgp
nameserver 10.14.0.2
内容/etc/apt/apt.conf
Acquire::http::proxy "http://IP:PORT/"; # Values are actually used here
Acquire::ftp::proxy "ftp://IP:PORT/";
Acquire::https::proxy "https://IP:PORT/";
iptables
# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
航线
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.14.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 10.14.1.2 0.0.0.0 UG 0 0 0 eth0
接近尾声ping strace可以看到类似这样的EAGAIN (Resource temporarily unavailable)
信息。当我 ping 内部 IP 地址(成功)时,不会出现此消息。请放心,这是一台新服务器,并且有足够的磁盘和内存空间可用。
更新
刚刚注意到它tcptraceroute
运行良好:
# tcptraceroute -i eth0 google.com
Selected device eth0, address 10.14.85.244, port 53532 for outgoing packets
Tracing the path to google.com (74.125.236.80) on TCP port 80 (www), 30 hops max
1 10.14.1.2 0.310 ms 0.283 ms 0.281 ms
2 10.151.1.2 0.274 ms 0.253 ms 0.281 ms
3 maa03s05-in-f16.1e100.net (74.125.236.80) [closed] 0.141 ms 0.172 ms 0.227 ms
更新与解决方案
我认为防火墙阻止了 ICMP 消息。另外,相关服务器没有公共 IP 地址。我认为这也与此有关。我可以 ping google.com 的另一台机器有一个公共 IP 地址。
然而,我主要担心的是, 确实apt-get
有效,但lynx
或无效wget
。问题出在代理环境变量上。它们是在.bashrc
文件中设置的,但不是export
-ed。我没有注意到这一点。一旦我导出它们,一切就顺利了。
感谢所有人提供的见解!
答案1
为你——一首俳句。
请参阅您的防火墙。
它阻止了 ICMP。
请让它不要这样做。
或者更明确地说:
Ping 是 ICMP。DNS 是 UDP。下载是 TCP。
您遇到的问题是 ping 不工作,这意味着您的防火墙(或网络上某处的防火墙)可能阻止了 ICMP。
修复该问题,或者让负责的网络管理员修复该问题,然后 ping 就可以正常工作。
答案2
仔细检查您的网关是否与能够 ping 出您的网络外部的机器的设置一致。
常规惯例(大多数情况下)使用给定块中的第一个或最后一个可用 IP 作为网关。因此,10.14.0.1 或 10.14.255.254。您的(尽管它可能是正确的)乍一看确实有点不对劲。
您是否尝试过使用 curl / wget 之类的工具尝试从实际的外部世界获取任何东西?您找到的包可能来自您的原始安装媒体。