一文帶你搞懂什么是正向代理與反向代理
1.正向代理
1.1 概念
正向代理是一個(gè)位于客戶端和目標(biāo)服務(wù)器之間的代理服務(wù)器(中間服務(wù)器)。
為了從目標(biāo)服務(wù)器取得內(nèi)容,客戶端向代理服務(wù)器發(fā)送一個(gè)請(qǐng)求,并且指定目標(biāo)服務(wù)器,之后代理向目標(biāo)服務(wù)器轉(zhuǎn)發(fā)請(qǐng)求,將獲得的內(nèi)容返回給客戶端。
正向代理的情況下,客戶端必須要進(jìn)行一些特殊的設(shè)置才能使用。
1.2 特點(diǎn)
- 正向代理需要主動(dòng)設(shè)置代理服務(wù)器ip或者域名進(jìn)行訪問(wèn),由設(shè)置的服務(wù)器ip或者域名去訪問(wèn)內(nèi)容并返回
- 正向代理是代理客戶端,為客戶端收發(fā)請(qǐng)求,使真實(shí)客戶端對(duì)服務(wù)器不可見(jiàn)。
1.3 使用場(chǎng)景
正向代理的典型用途是為防火墻內(nèi)的局域網(wǎng)客戶端提供訪問(wèn)服務(wù)器的途徑,正向代理還可以使用緩沖特性減少網(wǎng)絡(luò)利用率。
科學(xué)上網(wǎng)(舉例)
有時(shí)候,用戶想要訪問(wèn)某國(guó)外網(wǎng)站,該網(wǎng)站無(wú)法在國(guó)內(nèi)直接訪問(wèn),但是我們可以訪問(wèn)到一個(gè)代理服務(wù)器,這個(gè)代理服務(wù)器可以訪問(wèn)到這個(gè)國(guó)外網(wǎng)站。
這樣呢,用戶對(duì)該國(guó)外網(wǎng)站的訪問(wèn)就需要通過(guò)代理服務(wù)器來(lái)轉(zhuǎn)發(fā)請(qǐng)求,并且該代理服務(wù)器也會(huì)將請(qǐng)求的響應(yīng)再返回給用戶。
這個(gè)上網(wǎng)的過(guò)程就是用到了正向代理。
1.4 用途
- 突破訪問(wèn)顯示:通過(guò)代理服務(wù)器,可以突破自身ip訪問(wèn)限制,訪問(wèn)國(guó)外網(wǎng)站等
- 提高訪問(wèn)速度:通常代理服務(wù)器都設(shè)置一個(gè)較大的硬盤(pán)緩沖區(qū),會(huì)將部分請(qǐng)求的響應(yīng)保存到緩沖區(qū)中,當(dāng)其他用戶再訪問(wèn)相同的信息時(shí),則直接由緩沖區(qū)中取出信息,傳給用戶,以提高訪問(wèn)速度
- 隱藏客戶端真實(shí)ip:上網(wǎng)者可以通過(guò)正向代理的方法隱藏自己的ip,免受攻擊
2.反向代理
2.1 概念
反向代理是指以代理服務(wù)器來(lái)接收客戶端的請(qǐng)求,然后將請(qǐng)求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器,將從服務(wù)器上得到的結(jié)果返回給客戶端,此時(shí)代理服務(wù)器對(duì)外表現(xiàn)為一個(gè)反向代理服務(wù)器。
對(duì)于客戶端來(lái)說(shuō),反向代理就相當(dāng)于目標(biāo)服務(wù)器,只需要將反向代理當(dāng)作目標(biāo)服務(wù)器一樣發(fā)送請(qǐng)求就可以了,并且客戶端不需要進(jìn)行任何設(shè)置。
2.2 特點(diǎn)
- 正向代理需要配置代理服務(wù)器,而反向代理不需要做任何設(shè)置。
- 反向代理是代理服務(wù)器,為服務(wù)器收發(fā)請(qǐng)求,使真實(shí)服務(wù)器對(duì)客戶端不可見(jiàn)。
2.3 使用場(chǎng)景
反向代理的典型用途是將防火墻外的服務(wù)器提供給客戶端訪問(wèn),反向代理還可以為后端的多臺(tái)服務(wù)器提供負(fù)載均衡,或者為后端較慢的服務(wù)器提供緩沖服務(wù)。
2.4 用途
- 隱藏服務(wù)器真實(shí)ip:使用反向代理,可以對(duì)客戶端隱藏服務(wù)器的ip地址
- 負(fù)載均衡:反向代理服務(wù)器可以做負(fù)載均衡,根據(jù)所有真實(shí)服務(wù)器的負(fù)載情況,將客戶端請(qǐng)求分發(fā)到不同的真實(shí)服務(wù)器上
- 提高訪問(wèn)速度:反向代理服務(wù)器可以對(duì)靜態(tài)內(nèi)容及短時(shí)間內(nèi)有大量訪問(wèn)請(qǐng)求的動(dòng)態(tài)內(nèi)容提供緩存服務(wù),提高訪問(wèn)速度
- 提供安全保障:反向代理服務(wù)器可以作為應(yīng)用層防火墻,為網(wǎng)站提供對(duì)基于web的攻擊行為(例如DoS/DDoS)的防護(hù),更容易排查惡意軟件等。還可以為后端服務(wù)器統(tǒng)一提供加密和SSL加速(如SSL終端代理),提供HTTP訪問(wèn)認(rèn)證等。
3.正向代理和反向代理的異同
3.1 相同點(diǎn)
正向代理和反向代理所處的位置都是客戶端和真實(shí)服務(wù)器之間,所做的事情也都是把客戶端的請(qǐng)求轉(zhuǎn)發(fā)給服務(wù)器,再把服務(wù)器的響應(yīng)轉(zhuǎn)發(fā)給客戶端。
3.2 不同點(diǎn)
- 正向代理是客戶端的代理,服務(wù)器不知道真正的客戶端是誰(shuí);反向代理是服務(wù)器的代理,客戶端不知道真正的服務(wù)器是誰(shuí)
- 正向代理一般是客戶端架設(shè)的;反向代理一般是服務(wù)器架設(shè)的
- 正向代理主要是用來(lái)解決訪問(wèn)限制問(wèn)題;反向代理則是提供負(fù)載均衡、安全防護(hù)等作用。二者都能提高訪問(wèn)速度
4.通過(guò)故事理解正向代理和反向代理
4.1 正向代理
同學(xué)A急需一筆錢(qián),他直接向富豪馬云借錢(qián),但是他倆之間毫無(wú)關(guān)系,結(jié)果當(dāng)然是沒(méi)有借到。經(jīng)過(guò)一番打聽(tīng),同學(xué)A的老師王先生是馬云的好朋友,于是A同學(xué)請(qǐng)求王老師,讓王老師幫忙向馬云借錢(qián),最終馬云同意借錢(qián)給王老師,王老師把這筆錢(qián)轉(zhuǎn)交給了A同學(xué)。
上文就相當(dāng)于一個(gè)正向代理的過(guò)程,A同學(xué)為客戶端,馬云為服務(wù)器,王老師為正向代理。A同學(xué)請(qǐng)求王老師向馬云借錢(qián),這個(gè)過(guò)程中A同學(xué)隱藏了自己的角色,馬云事實(shí)上是不知道到底是誰(shuí)借的錢(qián)。相當(dāng)于服務(wù)器不知道真正發(fā)起請(qǐng)求的客戶端是誰(shuí)。
4.2 反向代理
如果遇到困難需要撥打10086客服電話,可能一個(gè)地區(qū)的10086客服有幾十個(gè),但是我們不需要關(guān)心電話那頭的人是誰(shuí)。只需要撥通10086的總機(jī)號(hào)碼,電話那頭總有客服會(huì)回應(yīng)。
這里的10086總機(jī)號(hào)碼就相當(dāng)于反向代理,客戶端不知道真正提供服務(wù)的人是誰(shuí)。
到此這篇關(guān)于一文帶你搞懂什么是正向代理與反向代理的文章就介紹到這了,更多相關(guān)正向代理與反向代理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Apache?Hudi靈活的Payload機(jī)制硬核解析
這篇文章主要為大家介紹了Apache?Hudi靈活的Payload機(jī)制超硬核解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-03-03Win2003下cwRsyncServer服務(wù)端與cwRsync客戶端數(shù)據(jù)同步實(shí)例教程
這篇文章主要介紹了Win2003下cwRsyncServer服務(wù)端與cwRsync客戶端數(shù)據(jù)同步實(shí)例教程,需要的朋友可以參考下2015-07-07URL Rewrite Module 2.1 URL重寫(xiě)模塊規(guī)則寫(xiě)法
URL重寫(xiě)模塊是IIS的擴(kuò)展,可作為獨(dú)立IIS Server的下載下載,并且還預(yù)先安裝在Windows Azure網(wǎng)站(WAWS)上的任何網(wǎng)站上,供您使用,本教程將指導(dǎo)您完成如何為URL重寫(xiě)模塊創(chuàng)建和測(cè)試一組重寫(xiě)規(guī)則2020-12-12阿里云主機(jī)不能用IP訪問(wèn)網(wǎng)站的解決方法(配置安全組規(guī)則搞定)
剛買(mǎi)了一臺(tái)阿里云主機(jī),迫不待及的試試速度,怎知網(wǎng)站訪問(wèn)不了,用IP或綁定域名都無(wú)法訪問(wèn),后來(lái)提交工單才知道,需要配置安全組規(guī)則才行。針對(duì)同樣像我一樣的新手,本文就介紹一下如何在開(kāi)通阿里云主機(jī)后配置安全組規(guī)則,讓網(wǎng)站能夠外網(wǎng)訪問(wèn),需要的朋友可以參考下2020-07-07網(wǎng)站控制臺(tái)directadmin中文手冊(cè) Linux下虛擬主機(jī)管理
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn),本站所提供的攝影照片,插畫(huà),設(shè)計(jì)作品,如需使用,請(qǐng)與原作者聯(lián)系2009-11-11Ajenti開(kāi)源免費(fèi)的服務(wù)器管理面板和Ajenti V虛擬主機(jī)面板及安裝與使用詳細(xì)教程
Ajenti是國(guó)外一個(gè)功能非常強(qiáng)大的輕型的Linux服務(wù)器管理面板,采用Python架構(gòu),修改擴(kuò)展非常簡(jiǎn)單,Ajenti V是Ajenti一個(gè)虛擬主機(jī)管理面板插件,下面通過(guò)本文給大家介紹Ajenti開(kāi)源免費(fèi)的服務(wù)器管理面板和Ajenti V虛擬主機(jī)面板及安裝與使用詳細(xì)教程,一起看看吧2017-07-07新安裝的XAMPP訪問(wèn)phpmyadmin出錯(cuò)的解決方法
這篇文章主要介紹了新安裝的XAMPP訪問(wèn)phpmyadmin出錯(cuò)的解決方法,錯(cuò)誤提示為服務(wù)器沒(méi)有響應(yīng)(或本地服務(wù)器的套接字沒(méi)有正確配置),需要的朋友可以參考下2014-11-11本地部署Jellyfin影音服務(wù)器并實(shí)現(xiàn)在公網(wǎng)訪問(wèn)的過(guò)程
Jellyfin作為相對(duì)知名的影音服務(wù)器,在NAS平臺(tái)廣受歡迎,但筆者連韭菜都不愿意當(dāng),自然沒(méi)有NAS這樣的專業(yè)裝備,只有一臺(tái)淘汰下來(lái)的臺(tái)式機(jī),這篇文章主要介紹了本地部署Jellyfin影音服務(wù)器并實(shí)現(xiàn)在公網(wǎng)訪問(wèn)的過(guò)程,需要的朋友可以參考下2023-11-11