『壹』 什麼是反向代理(reverse proxy server)
但是,如果想讓互聯網上的主機訪問內部網的主機資源(例如:Web站點),又想使內部網主機免受外部網主機攻擊,一般的代理服務是不能實現的,需要使用反向代理來實現。
一.反向代理的概念
Web伺服器加速(反向代理)是針對Web伺服器提供加速功能的。它作為代理Cache,但並不針對瀏覽器用戶,而針對一台或多台特定Web伺服器(這也是反向代理名稱的由來)。實施反向代理(如上圖所示),只要將Reverse Proxy Cache設備放置在一台或多台Web伺服器前端即可。當互聯網用戶訪問某個WEB伺服器時,通過DNS伺服器解析後的IP地址是Reverse Proxy Server的IP地址,而非原始Web伺服器的IP地址,這時Reverse Proxy Server設備充當Web伺服器,瀏覽器可以與它連接,無需再直接與Web伺服器相連。因此,大量Web服務工作量被卸載到反向代理服務上。不但能夠防止外部網主機直接和web伺服器直接通信帶來的安全隱患,而且能夠很大程度上減輕web伺服器的負擔,提高訪問速度。
二.反向代理和其它代理的比較
下面將對幾種典型的代理服務作一個簡單的比較。在網路上常見的代理伺服器有三種:
1. 標準的代理緩沖伺服器
一個標準的代理緩沖服務被用於緩存靜態的網頁(例如:html文件和圖片文件等)到本地網路上的一台主機上(即代理伺服器)。當被緩存的頁面被第二次訪問的時候,瀏覽器將直接從本地代理伺服器那裡獲取請求數據而不再向原web站點請求數據。這樣就節省了寶貴的網路帶寬,而且提高了訪問速度。但是,要想實現這種方式,必須在每一個內部主機的瀏覽器上明確指明代理伺服器的IP地址和埠號。客戶端上網時,每次都把請求送給代理伺服器處理,代理伺服器根據請求確定是否連接到遠程web伺服器獲取數據。如果在本地緩沖區有目標文件,則直接將文件傳給用戶即可。如果沒有的話則先取迴文件,先在本地保存一份緩沖,然後將文件發給客戶端瀏覽器。
2. 透明代理緩沖伺服器
透明代理緩沖服務和標准代理伺服器的功能完全相同。但是,代理操作對客戶端的瀏覽器是透明的(即不需指明代理伺服器的IP和埠)。透明代理伺服器阻斷網路通信,並且過濾出訪問外部的HTTP(80埠)流量。如果客戶端的請求在本地有緩沖則將緩沖的數據直接發給用戶,如果在本地沒有緩沖則向遠程web伺服器發出請求,其餘操作和標準的代理伺服器完全相同。對於Linux操作系統來說,透明代理使用Iptables或者Ipchains實現。因為不需要對瀏覽器作任何設置,所以,透明代理對於ISP(Internet伺服器提供商)特別有用。
3. 反向代理緩沖伺服器
反向代理是和前兩種代理完全不同的一種代理服務。使用它可以降低原始WEB伺服器的負載。反向代理伺服器承擔了對原始WEB伺服器的靜態頁面的請求,防止原始伺服器過載。它位於本地WEB伺服器和Internet之間,處理所有對WEB伺服器的請求,組織了WEB伺服器和Internet的直接通信。如果互聯網用戶請求的頁面在代理伺服器上有緩沖的話,代理伺服器直接將緩沖內容發送給用戶。如果沒有緩沖則先向WEB伺服器發出請求,取回數據,本地緩存後再發送給用戶。這種方式通過降低了向WEB伺服器的請求數從而降低了WEB伺服器的負載。
三.反向代理工作原理
『貳』 反向代理是什麼意思
反向代理的意思:
是指以代理伺服器來接受internet上的連接請求,然後將請求轉發給內部網路上的伺服器,並將從伺服器上得到的結果返回給internet上請求連接的客戶端,此時代理伺服器對外就表現為一個反向代理伺服器。
正向代理和反向代理的區別:
雖然正向代理伺服器和反向代理伺服器所處的位置都是客戶端和真實伺服器之間,所做的事情也都是把客戶端的請求轉發給伺服器,再把伺服器的響應轉發給客戶端,但是二者之間還是有一定的差異的。
4、正向代理和反向代理的作用和目的不同。正向代理主要是用來解決訪問限制問題。而反向代理則是提供負載均衡、安全防護等作用。二者均能提高訪問速度。