Web代理如何工作?

考虑一下我的组织中存在代理的情况,我需要在我的IE中input代理详细信息。 如果我从浏览器中删除这些细节,我将无法再访问互联网。 所以我认为所有的互联网stream量都通过已经为组织设置的代理。 正确??

现在我真正的问题是,当我以编程方式尝试访问互联网(使用Java),我可以select指定代理=是或否。如果我选​​择代理=是,我需要给用户名和密码,如果我select代理=否,它build立了一个直接的连接,仍然让我访问互联网。 请参考下面的Java API文档

http://download.oracle.com/javase/6/docs/technotes/guides/net/proxies.html并searchstring“代表直接连接,或没有代理”。

我想知道这是什么直接连接? 它是如何build立的? 外部世界(互联网)stream量不是通过组织中的代理服务器吗?

这取决于你的组织。

如果您的浏览器(Internet Explorer,在您的情况下)可以与代理一起工作,并且在没有代理的情况下无法正常工作,则可能是这样

  • 所有直接出站连接都被阻塞(最安全)
  • 只有某些直接的传出连接被阻止(更灵活,更安全)

您可以通过尝试与networking上的服务器build立不同的连接来testing。 尝试HTTP到google.com:80; 尝试FTP到一个开放的FTP服务器; 尝试IRC到IRC服务器,尝试设置自己的名称服务器(Google有很好的DNS服务器); 尝试连接到您的家庭机器。

如果您的Java应用程序能够直接连接,那么可能不是所有的通信都被阻塞。 也许只有某些端口(80,HTTP; 21,FTP; …)上的服务器通信被阻止。

编辑:阅读清单

你想了解更多关于连接,互联网和代理吗?

  • 了解OSI模型并查看TCP / IP模型 。
  • 检查HTTP / 1.1的RFC; HTTP / 1.0 ; FTP ; IRC和SMTP 。
  • 尝试使用TELNET连接到HTTP / FTP / IRC / SMTP服务器。
  • 编写小程序来连接这些服务器。
  • 安装Wireshark等数据包监视器 ,查看通过的通信量。 检查HTTP / FTP / IRCstream量,看看它是如何工作的。
  • 安装Linux / BSD并设置networking服务器和/或代理服务器或安装LAMP / WAMP。