代理服務器(proxy) 和 nat代理服務器


什么是代理服務器(Proxy)?
以類似代理人的身份去取的用戶需要的數據。由於它的【代理】能力,使得我們可以透過代理服務器來達成防火牆與用戶數據的分析。除此之外我們還可以借助代理服務器來達成節省帶寬的目的,以及加快內部網絡對因特網的萬維網的訪問速度。
當客戶端有因特網的數據要求時,Proxy會幫用戶去向目的地取得用戶所需要的數據。所以當客戶端指定www的代理服務器之后,用戶的所有www相關要求就會通過代理服務器去捉取。
這里寫圖片描述
代理服務器會架設在整個區網的單點對外防火牆上頭,而在區網內部的計算機都是通過Proxy來向英特網要求數據的,這就是所謂的【代理服務器】
上面的架構僅僅是其中一個案例,架構的采用率比較高,因為這樣的Proxy server不僅可以充當代理服務器的角色,還可以當做高階防火牆。
客戶端向外部要求的數據事實上都是Proxy幫用戶取得的,因此因特網上面看到要求數據者,將會是Proxy服務器的IP而不是客戶端的IP。Proxy Server因為直接對外網,相當於當了個炮灰,外網只能找到這個代理服務器,隱藏內網的機器,從而起到防火牆的作用。

代理服務器的運作流程
這里寫圖片描述

cache的存在,可以做假象的web加速;
當Proxy的快取擁有用戶所想要的數據時:
a.Client端向Server端發送一個數據需求封包
b.Server端接收之后,先比對這個封包的【來源】與預計要前往的【目標】網站是否為可接受?如果來源和目標都是合法的,或者說,來源與目標網站我們的Proxy都能幫忙取得資料時,那么Server端會開始替Client取得資料。取得資料中比較重要的政策就是【比對政策】,有點像認證的感覺。
c.對比政策,Server對先檢查自己的快取(新的數據可能在內存中,比較舊的數據放在硬盤中)數據,如果有Client所需要的數據,那么將數據准備取出,而不經過向Internet要求數據的程序。
d.最后當然就是將數據回傳給Client
Proxy對於cache的速度是很有要求的,而這個cache就是硬盤了。硬盤的容量必須足夠大,而且還要【足夠快】才行!cache是一直被重復存取的地方。所以硬盤的好壞就差別打了。

上層代理服務器
我們的Proxy代理服務器的Proxy代理服務器就是上層代理服務器。上圖:
這里寫圖片描述
作為上層代理服務器的主機通常具有較高的帶寬,因此我們透過它去要求數據【理論上】速度會更快,而上層代理服務器最大的優點是可以分流。
分流示意圖:這里寫圖片描述
由於代理服務器需要管控信任的來源客戶端計算機,因此各ISP僅能針對自家用戶開發Proxy使用權。

代理服務器和NAT服務器的差別
【百度百科概念】NAT:當在專用網內部的一些主機本來已經分配到了本地IP地址(即僅在本專用網內使用的專用地址),但現在又想和因特網上的主機通信(並不需要加密)時,可使用NAT方法。
這種方法需要在專用網連接到因特網的路由器上安裝NAT軟件。裝有NAT軟件的路由器叫做NAT路由器,它至少有一個有效的外部全球IP地址。這樣,所有使用本地地址的主機在和外界通信時,都要在NAT路由器上將其本地地址轉換成全球IP地址,才能和因特網連接。

NAT功能:
NAT不僅能解決IP不足的問題,而且還能夠有效的避免來自網絡外部的攻擊,隱藏並保護網絡內部的計算機。
1.寬帶分享:這是NAT主機的最大功能
2.安全防護:NAT之內對的PC聯機到Internet上面時,他所顯示的IP是NAT主機的公共IP,所以Client端的PC當然就具有一定程度的安全了,外界在進行porscan(端口掃描)的時候,就偵測不到源Client端的PC。

簡要的介紹了NAT,看一看代理服務器和NAT的差別:
在內部局域網使用私有的IP客戶端,不論透過Proxy或者NAT均可以直接取得www的服務,那么NAT與Proxy有沒有什么不同的地方。
1.NAT服務器的功能:Linux的NAT功能主要透過封包過濾的方式,並使用iptables的nat表格進行IP偽裝(SNAT),讓客戶端自行前往因特網的任何一個地方。主要的運作行為是在OSI七層協議的二,三,四層。由於是透過封包過濾與偽裝,因此客戶端可以使用端口號碼(第四層)較彈性。
2.Proxy服務器的功能:主要透過Proxy的服務器程序(daemon)提供網絡代理的任務,因此Proxy能不能進行某些工作,與該服務的程序有關。舉例說明:如果你的Proxy並沒有提供郵件或FTP代理,那么你的客戶端就無法透過Proxy去取得這些網絡資源。主要運作的行為在OSI七層協議的應用層部分(這就是所謂的高階的意思)

NAT服務器是由叫底層的網絡去進行分析工作,至於通過NAT的封包是干嘛用的,NAT不去管它。
Proxy則主要是由一個服務器程序的功能達成的,所以必須符合該程序的需求才能達到某些功能。

架設代理服務器的用途與優缺點
代理服務器的主要功能是:
1.作為www的網頁資料的取得的代理人(最為主要的功能)
2.作為內部區網的單點對外防火牆系統(如果你的Proxy是放在內部區網的Gateway上頭,那么這部代理服務器就能夠作為內部計算機的防火牆)
由於Proxy的這種特性,讓他很常被使用於大型企業的內部,因為可以達到杜絕內部人員上班時使用非WWW以外的網絡服務器,而且還可以監測用戶的資料要求流向與流量。

主要優點:
1.節省單點對外的網路帶寬,降低網絡負載
當你的Proxy用戶很多時,那么Proxy內部的快取數據將會積累的非常多。因此客戶端想要取得網絡上的數據時,很多將會從Proxy的快取中取得,而不用向因特網去請求資料,可以節省帶寬。
2.以較短的路徑取得網絡數據,有網絡加速的感覺:
例如你可以指定你的ISP提供的代理服務器連接到國外,由於ISP提供的Proxy通常有較大的對外帶寬,因此在國外網站的數據取得上,通常比你自己的主機聯機到國外要快的多此外,與上一點的快取數據也有很大關系。從內部硬盤取得的路徑總比對外的因特網要短的多。
3.透過上層代理服務器的輔助,達到自動數據分流的效果
4.提供防火牆內部的計算機連上Internet:即上文提到單點對外防火牆功能

需要連上國外的網頁,請一定要使用ISP提供給你的代理服務器幫忙,不但可以節省帶寬,並且速度上可以快很多

主要缺點:
1.容易被內部區網的人員濫用:
因特網看到取數據的人是Proxy而不是客戶端計算機的IP,因此可能會讓某些內部網路使用人員開始利用你的proxy干壞事,此時你就會很麻煩,為了杜絕這種情況,建議增加登錄檔案分析的軟件。用於管理。
2.需要較高的設定技巧與除錯程序
在設定服務器當中, Proxy 算是比較不容易設定好『效能』的一個服務器了!由於 Proxy 的 Cache 與他的『上層代理服務器』的關系是很緊密的, 萬一設定錯誤的話,很有可能反而讓你的Proxy 拖垮客戶端 WWW 的瀏覽速度!最嚴重的是造成無法聯機!
可能會取得舊的錯誤數據:
這個最容易發生了!由於曾經瀏覽過的網頁會被放置到快取, 並提供后續用戶的直接取得。 萬一因特網上面的那個網頁數據更新過呢?那時你會發現,怎么客戶端無法看到更新后的資料? 就是因為快取的問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM