簡體   English   中英

無需代理即可直接連接到Internet

[英]Direct connection to Internet without Proxy

是否可以在不使用代理的情況下直接連接到Internet。

考慮一下我的組織有一個Proxy的情況,我使用Java Proxy類中給出的DIRECT選項。

SocketAddress addr = new
InetSocketAddress("webcache.mydomain.com", 8080);
Proxy proxy = new Proxy(Proxy.Type.DIRECT, addr);

如果您按照文檔說明,它表示DIRECT代表直接連接或缺少代理。

這正是它的行為方式。 當我使用此選項時,我不必提供任何代理詳細信息,我可以從Internet訪問內容。

我有三個問題

  1. 根據我的理解,如果組織有代理,則所有網絡流量都應通過代理進行路由。 沒有人應該能夠直接訪問網絡?
  2. 我還注意到,如果我從IE中刪除代理詳細信息,我無法訪問Web :-( Java如何仍然可以執行此操作?
  3. 如果在任何組織中您都可以使用Proxy和Directly訪問,防火牆如何阻止某些站點? 防火牆如何工作?

提前致謝。

Proxy proxy = new Proxy(Proxy.Type.DIRECT, addr);

不是創建直接(無代理)代理指令的正確方法。 你應該做

Proxy proxy = Proxy.NO_PROXY

Socket類和HttpURLConnection的內部實現檢查proxy == Proxy.NO_PROXY (注意:“==”,而不是“equals()”!)。

它不檢查proxy.getType() == Proxy.Type.DIRECT

2)您可能已在任何系統屬性中設置代理。 如果您使用的是任何IDE,請檢查IDE的代理設置。

如果您的組織有代理,並非所有網絡流量都通過代理。 您仍然可以繼續建立與Internet的直接連接。 大多數情況下,組織將阻止直接連接並強制您使用代理。 有時,它們可能允許您使用Restricted Direct連接,該連接允許某些URL並拒絕其他URL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM