NAT和Proxy的區別


在internet共享上網技術上,一般有兩種方式,一種是proxy代理型,一種是NAT網關型,關於兩者的區別與原理,身邊很多人都不是很明白,下面我來講講我的理解,如有不對的,歡迎指正. 

1.先說應用例子: 
服務器端,用wingate就是Proxy,用sygate就是NAT 
客戶端,需要在IE中設置代理服務器的就是用Proxy,客戶端只需設置網關即可就是用NAT 

2.再說工作原理: 

NAT工作在網絡層,而Proxy工作在應用層 

正因為如此,NAT方式下客戶端只需要設定一個網關地址,HTTP,QQ,FTP都可以使用.而Proxy方式下,需要為每一種應用協議指定代理服務器,如IE中需要設定,QQ中需要設定,MSN需要設定,FTP也需要設定,增加了客戶端使用的復雜性. 


NAT絕大部分情況下只是修改數據包中的地址和端口,然后記錄對應關系后把數據轉發出去。 

proxy不同於nat,proxy客戶端需要訪問互聯網時,會先通知proxy服務器軟件要做什么,然后proxy代理服務器去扮演客戶請求而完成,然后將結果回傳給客戶端。Proxy服務器端先要分析數據包的內容,弄清楚要干什么,然后以自己的身份來 “代理”完成這個請求,並且將結果發送回客戶端。 

比如http,解析出請求 的方向,然后以proxy主機的身份,把這個請求發送給遠端的web服務器,遠端數據返回以后,它又以主機的身份把數據傳送給客戶端。同時,還把這些數據放到CACHE中,如果其它客戶有相同的內容請求,就直接從CACHE中拿數據,不用現向互聯網上的服 務器請求數據. 

因為proxy在實現上具體到了應用層上的協議,因此帶來了一些額外的管理功能和cache功能。 

這樣打個比方 

nat=貨運碼頭,管你是啥貨,只管發就是了 
proxy=代理商,先要看你買啥,清楚了后再幫你買,可能直接從庫房中提貨,也可能去其它地方調貨,也有可能不代理你要買的貨. 

3.最后說優缺點 

對客戶端來說: 
NAT設置簡單,無需客戶端軟件 
Proxy針對每一種應用設置代理服務器,或者安裝一個客戶端軟件,設置相對復雜一些.並且並不一定支持所有的應用,如VPN客戶端登錄很多Proxy就無法代理應用. 

對服務器來說: 
Proxy需要耗用的資源更多一些(內存,硬盤等),以存CACHE內容,正因如此,在大量用戶的情況下,獲得的性能更高一些. 
NAT方式相當於一個軟路由器,在中小訪問量的情況下,速度也不錯,資源占用少,所以適用普遍使用.

 

 

轉自-------------------https://blog.csdn.net/cunzhangxp/article/details/768627


免責聲明!

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



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