2

我通过代理服务器连接到互联网。我正在使用 Ubuntu 安装并进行了适当的网络设置更改,包括文件 /etc/bash.bashrc 和 /etc/apt/apt.conf 文件。在我进行了这些代理更改之后,我可以从 Internet 上的 Ubuntu 存储库下载。

我想了解和解决的问题是:从终端,我能够 ping 我在我的Intranet上连接的地址。但是,我无法在互联网上 ping 地址!为什么会这样?技术解释将不胜感激。我怎样才能解决这个问题,并像在任何其他直接互联网连接上一样使用 wget、ping 等命令(目前都不工作)?

注意:我已经尝试使用适当的用户名和密码为我的代理服务器导出 http_proxy 变量,如此处所示但 ping 仍然不起作用。

4

2 回答 2

6

使用代理服务器的通常原因是隔离内部机器,并通过中心点强制它们离开,以管理带宽、内容和/或安全问题。采用这种机制的组织通常会直接在外部禁用来自内部机器的路由。

在这种配置中,您并没有真正连接到Internet,只是连接到Intranet,其中包含一个将数据从Internet代理到Intranet的服务器。

wget可以工作,如果你设置http_proxy环境变量,也许添加--proxy-user--proxy-password参数。事实上,它是皇家 PITA。

ping如果您的网络管理员禁用了对更大网络的直接访问,则将无法使用。要开始ping工作,您必须申请豁免,让您的工作站/服务器获得通往 Internet 的直接路由。

技术解释将不胜感激。

您的网络管理员已禁用对 Internet 的直接访问,可能是通过丢弃指向 Intranet 外部的数据包。

于 2013-08-05T15:57:50.497 回答
0

我们知道网络协议有 OSI 7 层模型

应用

介绍

会议

运输

网络

数据链接

身体的

ping 适用于网络级别(级别 3)

socks5、http等代理。

http 适用于应用程序级别(级别 7)

socks5 适用于会话级别(级别 5)

所以代理不适用于 ping,如果你想检查与谷歌的连接,你可以使用

curl -vv google.com

如果您使用 ping,也许 VPN 可以提供帮助!

于 2019-11-19T09:18:11.083 回答