您好,登錄后才能下訂單哦!
本篇內容介紹了“爬蟲代理IP的類型和原理是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
1、代理類型:透明代理IP、匿名代理IP、高匿名代理
代理IP可以分為四種類型。除透明代理IP、匿名代理IP、高匿名代理IP外,還有一類是混淆代理IP。就基本安全性而言,它們的排列順序是高匿>混淆>匿名>透明。
2、代理原理:REMOTE_ADDR、X-Forwarded-For(XFF)、HTTP_VIA。
代理類型主要依賴于代理服務器端的配置,不同的配置形成不同的代理類型。在配置中,這三個變量REMOTE_ADDR、HTTP_VIA、HTTP_X_FORWARDED_FOR是決定性因素。
(一)REMOTE_ADDR
REMOTE_ADDR代表客戶機的IP,但是它的值不是由客戶機提供的,而是由服務器根據IP指定。
如果您使用瀏覽器直接訪問站點,則站點的web服務器(Nginx、Apache等)將REMOTE_ADDR設置為客戶端的IP地址。
如果我們為瀏覽器設置代理,我們訪問目標站點的請求首先通過代理服務器,然后代理服務器將請求轉換為目標站點。網站的web代理服務器將REMOTE_ADDR設置為代理服務器的IP。
(二)X-Forwarded-For(XFF)
X-Forwarded-For是HTTP擴展頭,用于表示HTTP請求端的真實IP。當客戶端使用代理時,網絡代理服務器不知道客戶端的真實IP地址。為了避免這種情況,代理服務器通常會添加X-Forwarded-For的頭部信息,并將客戶端的IP添加到頭部信息中。
X-Forwarded-For請求頭格式如下:
X-Forwarded-For:client,proxy1,proxy2
client表示客戶端的IP地址;proxy1是離服務器最遠的設備IP;proxy2是次級代理設備的IP;從格式上可以看出,從client到server可以有多層代理。
在HTTP請求到達服務器之前,通過3個代理Proxy1、Proxy2、Proxy3,IP分別為IP1、IP2、IP3,用戶的實際IP為IP0時,根據XFF標準,服務器最終會收到以下信息
X-Forwarded-For:IP0,IP1,IP2
Proxy3直接連接到服務器,并將IP2添加到XFF,以幫助Proxy2轉發請求。列表中沒有IP3,IP3可以在服務器上通過RemoteAddress字段獲得。眾所周知,HTTP連接是以TCP連接為基礎的,HTTP協議中沒有IP概念,RemoteAddress來自TCP連接,這意味著與服務器建立TCP連接的設備IP就是IP3。這里我建議爬蟲使用http的時候盡量用像太陽http這樣正規的產品
(三)HTTP_VIA
via是HTTP協議中的header,記錄了HTTP請求的代理和網關,通過一個代理服務器添加一個代理服務器的信息,通過兩個添加兩個。
“爬蟲代理IP的類型和原理是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。