1. 程式人生 > >代理伺服器工作原理

代理伺服器工作原理

 (1) 代理服務原理

代理伺服器有很多種,大體來說有http,ftp,socks代理三種,其中又分透明代理和不透明代理。其中透明代理一般是閘道器,是硬體。所以這裡討論不透明代理。

當機器通過代理伺服器上網時。通訊是分兩次的,先是機器和代理伺服器通訊,再是代理伺服器和目的地址通訊。

機器和代理伺服器通訊時,目的IP是代理伺服器的IP。代理伺服器和目的地址通訊時,源IP是代理伺服器的IP,當外部的資料也是一樣的,在內網中,出現的IP資料,全是內網和代理伺服器的IP。因此,從IP包頭是看不出任何與外面通訊的資訊的。只有從資料中才能看到。

例如,用http代理上網。

過程是

機器和代理伺服器建立TCP連線。
機器發出GET命令。這時GET命令中包含URL或IP地址,明文。
代理伺服器將其中的URL轉換為IP地址,可能會有DNS。將源資料包中的資料拷貝下來。去掉URL,重新組包,再發出去。
我們需要解析第一個GET包。
現在來看幾種代理方式。
http (get)
http (connect)
ftp (user
[email protected]
:port)
ftp (user [email protected] port)
ftp (open host)
ftp (site host)
ftp (site [email protected])
socks5
socks4
這些代理方式都有一個特點。就是在連線時,都會先和代理伺服器連線,發出請求,一般為 command url,command就是get,connect,user 等。http和ftp都一樣,可以通過關鍵字來識別。而且url是明文。Socks有些特別。它不是明文的,而是十六進位制資料。要獲得IP地址,還要經過轉換。

(2) 目前的代理服務技術

代理服務技術是在一臺PC機上安裝一套代理軟體,主要用於使用者對Internet資源的訪問。

ICS即Internet連線共享(Internet Connection Sharing)的英文簡稱,是Windows系統針對家庭網路或小型的Intranet網路提供的一種Internet連線共享服務。它實際上相當於一種網路地址轉換器,所謂網路地址轉換器就是當資料包向前傳遞的過程中,可以轉換資料包中的IP地址和TCP/UCP埠等地址資訊。有了網路地址轉換器,家庭網路或小型的辦公網路中的電腦就可以使用私有地址,並且通過網路地址轉換器將私有地址轉換成ISP分配的單一的公用IP地址從而實現對Internet的連線。ICS方式也稱之為Internet轉換連線。
軟體:Wingate,、Winproxy
NAT即網路地址轉換(Network Address Translator),從廣義上講,ICS也是使用了一種NAT技術,不過我們這裡討論的NAT是指將執行Windows 2000 Server的計算機作為IP路由器,通過它在區域網和Internet主機間轉發資料包從而實現Internet的共享。NAT方式也稱之為Internet的路由連線。網路地址轉換NAT通過將專用內部地址轉換為公共外部地址,對外隱藏了內部管理的IP地址。這樣,通過在內部使用非註冊的IP地址,並將它們轉換為一小部分外部註冊的IP 地址,從而減少了IP 地址註冊的費用。同時,這也隱藏了內部網路結構,從而降低了內部網路受到攻擊的風險。
軟體:WinRoute、Sygate

(3) 代理資料變代

非透明代理:

上網主機向代理提交TCP連線請求:源ip(上網主機)目標ip(代理伺服器)
00000000: 45 00 01 9E 64 CE 40 00 80 06 17 C0 C0 A8 FD 91
[email protected]

00000010: C0 A8 FD E8 12 47 04 38 FB 32 8B 56 7E 55 57 EA .....G.8.2.V~UW.
00000020: 50 18 44 70 1B EC 00 00 47 45 54 20 68 74 74 70 P.Dp....GET http
00000030: 3A 2F 2F 77 77 77 2E 63 63 74 76 2E 63 6F 6D 2E ://http://www.haozs.net./
00000040: 63 6E 2F 20 48 54 54 50 2F 31 2E 30 0D 0A 41 63 cn/ HTTP/1.0..Ac
00000050: 63 65 70 74 3A 20 69 6D 61 67 65 2F 67 69 66 2C cept: image/gif,
00000060: 20 69 6D 61 67 65 2F 78 2D 78 62 69 74 6D 61 70 image/x-xbitmap
00000070: 2C 20 69 6D 61 67 65 2F 6A 70 65 67 2C 20 69 6D , image/jpeg, im
00000080: 61 67 65 2F 70 6A 70 65 67 2C 20 61 70 70 6C 69 age/pjpeg, appli
00000090: 63 61 74 69 6F 6E 2F 76 6E 64 2E 6D 73 2D 65 78 cation/vnd.ms-ex
000000a0: 63 65 6C 2C 20 61 70 70 6C 69 63 61 74 69 6F 6E cel, application
000000b0: 2F 76 6E 64 2E 6D 73 2D 70 6F 77 65 72 70 6F 69 /vnd.ms-powerpoi
000000c0: 6E 74 2C 20 61 70 70 6C 69 63 61 74 69 6F 6E 2F nt, application/
000000d0: 6D 73 77 6F 72 64 2C 20 61 70 70 6C 69 63 61 74 msword, applicat
000000e0: 69 6F 6E 2F 78 2D 73 68 6F 63 6B 77 61 76 65 2D ion/x-shockwave-
000000f0: 66 6C 61 73 68 2C 20 2A 2F 2A 0D 0A 41 63 63 65 flash, */*..Acce
00000100: 70 74 2D 4C 61 6E 67 75 61 67 65 3A 20 7A 68 2D pt-Language: zh-
00000110: 63 6E 0D 0A 55 73 65 72 2D 41 67 65 6E 74 3A 20 cn..User-Agent:
00000120: 4D 6F 7A 69 6C 6C 61 2F 34 2E 30 20 28 63 6F 6D Mozilla/4.0 (com
00000130: 70 61 74 69 62 6C 65 3B 20 4D 53 49 45 20 36 2E patible; MSIE 6.
00000140: 30 3B 20 57 69 6E 64 6F 77 73 20 4E 54 20 35 2E 0; Windows NT 5.
00000150: 32 3B 20 2E 4E 45 54 20 43 4C 52 20 31 2E 31 2E 2; .NET CLR 1.1.
00000160: 34 33 32 32 29 0D 0A 48 6F 73 74 3A 20 77 77 77 4322)..Host: www
00000170: 2E 63 63 74 76 2E 63 6F 6D 2E 63 6E 0D 0A 50 72 .haozs.ne..Pr
00000180: 6F 78 79 2D 43 6F 6E 6E 65 63 74 69 6F 6E 3A 20 oxy-Connection:
00000190: 4B 65 65 70 2D 41 6C 69 76 65 0D 0A 0D 0A FD 00 Keep-Alive......

代理伺服器轉換後的資料:源IP(代理伺服器) 目IP(網站IP)
00000000: 45 00 01 88 5D 4E 40 00 80 06 19 55 C0 A8 FD E8 E...]
[email protected]

00000010: CA 6C F9 CE 06 AC 00 50 7E 57 F3 C7 E1 41 2F 21 .l.....P~W...A/!
00000020: 50 18 44 70 F9 DF 00 00 47 45 54 20 2F 20 48 54 P.Dp....GET / HT
00000030: 54 50 2F 31 2E 30 0D 0A 41 63 63 65 70 74 3A 20 TP/1.0..Accept:
00000040: 69 6D 61 67 65 2F 67 69 66 2C 20 69 6D 61 67 65 image/gif, image
00000050: 2F 78 2D 78 62 69 74 6D 61 70 2C 20 69 6D 61 67 /x-xbitmap, imag
00000060: 65 2F 6A 70 65 67 2C 20 69 6D 61 67 65 2F 70 6A e/jpeg, image/pj
00000070: 70 65 67 2C 20 61 70 70 6C 69 63 61 74 69 6F 6E peg, application
00000080: 2F 76 6E 64 2E 6D 73 2D 65 78 63 65 6C 2C 20 61 /vnd.ms-excel, a
00000090: 70 70 6C 69 63 61 74 69 6F 6E 2F 76 6E 64 2E 6D pplication/vnd.m
000000a0: 73 2D 70 6F 77 65 72 70 6F 69 6E 74 2C 20 61 70 s-powerpoint, ap
000000b0: 70 6C 69 63 61 74 69 6F 6E 2F 6D 73 77 6F 72 64 plication/msword
000000c0: 2C 20 61 70 70 6C 69 63 61 74 69 6F 6E 2F 78 2D , application/x-
000000d0: 73 68 6F 63 6B 77 61 76 65 2D 66 6C 61 73 68 2C shockwave-flash,
000000e0: 20 2A 2F 2A 0D 0A 41 63 63 65 70 74 2D 4C 61 6E */*..Accept-Lan
000000f0: 67 75 61 67 65 3A 20 7A 68 2D 63 6E 0D 0A 55 73 guage: zh-cn..Us
00000100: 65 72 2D 41 67 65 6E 74 3A 20 4D 6F 7A 69 6C 6C er-Agent: Mozill
00000110: 61 2F 34 2E 30 20 28 63 6F 6D 70 61 74 69 62 6C a/4.0 (compatibl
00000120: 65 3B 20 4D 53 49 45 20 36 2E 30 3B 20 57 69 6E e; MSIE 6.0; Win
00000130: 64 6F 77 73 20 4E 54 20 35 2E 32 3B 20 2E 4E 45 dows NT 5.2; .NE
00000140: 54 20 43 4C 52 20 31 2E 31 2E 34 33 32 32 29 0D T CLR 1.1.4322).
00000150: 0A 48 6F 73 74 3A 20 77 77 77 2E 63 63 74 76 2E .Host: cctv.
00000160: 63 6F 6D 2E 63 6E 0D 0A 50 72 6F 78 79 2D 43 6F com.cn..Proxy-Co
00000170: 6E 6E 65 63 74 69 6F 6E 3A 20 4B 65 65 70 2D 41 nnection: Keep-A
00000180: 6C 69 76 65 0D 0A 0D 0A FD 00 00 00 00 00 00 00 live............

通過非透明代理上網,上網主機向代理提交連線請求。在請求包裡,包含了真正目標的URL,通過代理轉交。

ftp代理

代理伺服器是明文
..]ZY...][email protected]@[email protected][.....P....l..USER [email protected]

http代理

http代理是明文
..]ZY...][email protected]@...y..........J.8.*[email protected] http://www.haozs.net/ HTTP/1.0..Accept: */*..Accept-Language: zh-cn..Accept-Encoding: gzip, deflate..User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)..Host: mp3.yzu.edu.cn..Proxy-Connection: Keep-Alive..Pragma: no-cache..Cookie: ASPSESSIONIDQQCDACCS=CLCLPECCDCEKIGEOKFAFNDAG......-.....0......

socks5代理

socks5代理都不是明文,是資料。
202.204.8.10:21
CA CC 08 0A 00 15
如果使用的是域名,就是明文
..]ZY...][email protected]>[email protected]%p:.P...;........vod.sjtu.edu.cn.....
qq http代理
當qq上線的時候會和騰迅的伺服器聯絡
..]ZY...][email protected]@...m*...........8]...3.j.P....6..CONNECT 218.18.95.165:443 HTTP/1.1..Accept: */*..Content-Type: text/html..Proxy-Connection: Keep-Alive..Content-length: 0................

qq socks5代理

當qq使用socks5代理的時候,不是明文,是資料
CA 60 AA A5
202.96.170.165:8000

相關推薦

代理伺服器工作原理

 (1) 代理服務原理 代理伺服器有很多種,大體來說有http,ftp,socks代理三種,其中又分透明代理和不透明代理。其中透明代理一般是閘道器,是硬體。所以這裡討論不透明代理。 當機器通過代理伺服器上網時。通訊是分兩次的,先是機器和代理伺服器通訊,再是代理伺服器和目的地址

代理伺服器原理及用法(解決上網時間限制問題)

解決公司限制上網時間問題 一、代理伺服器原理【Proxy Serve】: 代理伺服器就類似代理商,如圖,假設你的機器為A機,你想獲得的資料由B機提供,代理伺服器為C機,那麼具體的連線過程是這樣的: 首先,A機需要B機的資料,它與C機建立連線,C機接收到A機的資料請求後,與B

NFS筆記(一)NFS伺服器工作原理及詳細配置

一、NFS工作原理 1、什麼是NFS伺服器   NFS就是Network File System的縮寫,它最大的功能就是可以通過網路,讓不同的機器、不同的作業系統可以共享彼此的檔案。   NFS伺服器可以讓PC將網路中的NFS伺服器共享的目錄掛載到本地端的檔案系統中,而在本地端的系統中來

IE WPAD代理設定工作原理

WPAD代表Web Proxy Auto-Discovery Protocol,是客戶端通過DHCP或DNS協議探測代理伺服器配置指令碼url的一種方式。當IE定位指令碼並將指令碼下載到本地之後,就可以通過該指令碼來為不同的url選擇相應的代理伺服器。目前主流瀏覽器一般都

HTTP代理伺服器工作原理

在HTTP通訊鏈上,客戶端和目標伺服器之間通常存在某些中轉代理伺服器,它們提供對目標資源的中轉訪問。一個HTTP請求可能被多個代理伺服器轉發,後面的伺服器稱為前面伺服器的上游伺服器。代理伺服器按照其使用方式和作用,分為正向代理伺服器、反向代理伺服器、透明代理伺服

代理服務器之趣談工作原理

pan 不能訪問網絡 獲取 strong 會有 網絡 簡單 演唱會 文章 最近經常會有同學們這些問題: 代理是什麽意思,我們為什麽要用代理服務器。 設置代理了之後,我的瀏覽器或者手機居然不能訪問網站了,我不能接受! 問出這樣的問題,一般都是對代理服務器不夠了解,不知其然

sock5代理工作原理

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

代理伺服器的基本原理(轉)

          我們在做爬蟲的過程中經常會遇到這樣的情況,最初爬蟲正常執行,正常抓取資料,一切看起來都是那麼美好,然而一杯茶的功夫可能就會出現錯誤,比如403 Forbidden,這時候開啟網頁一看,可能會看到“您的IP訪問頻率太高”這樣的提

張老師的代理伺服器原理(proxy)

我們在做爬蟲的過程中經常會遇到這樣的情況,最初爬蟲正常執行,正常抓取資料,一切看起來都是那麼美好,然而一杯茶的功夫可能就會出現錯誤,比如403 Forbidden,這時候開啟網頁一看,可能會看到“您的IP訪問頻率太高”這樣的提示。出現這種現象的原因是網站採取了一些反爬蟲措施。比如,伺服器會檢

伺服器運維之代理機的原理和使用方法

適用場景 堡壘機 防止黑客的攻擊,設定一臺代理伺服器,只有代理伺服器能訪問自己的主機 釋出內外伺服器 適用於公網ip不足的場景 快取場景 類似cdn 靜態資訊放到代理伺服器,動態的交給業務伺服器,8:2 的比例 使用方法

代理伺服器原理(轉)

本文轉自:https://www.cnblogs.com/Aiapple/p/5955882.html   以類似代理人的身份去取得使用者所需要的資料就是了! 但是由於它的『代理』能力,使得我們可以透過代理伺服器來達成防火牆功能與使用者瀏覽資料的分析!  

時間戳伺服器工作原理,數字簽名時間戳應用

對於成功的電子商務應用,要求參與交易各方不能否認其行為。這其中需要在經過數字簽名的交易上打上一個可信賴的時間戳,從而解決一系列的實際和法律問題。由於使用者桌面時間很容易改變,由該時間產生的時間戳不可信賴,因此需要一個權威第三方來提供可信賴的且不可抵賴的時間戳服務

Socket(套接字)在伺服器端和客戶端之間的基本工作原理

Socket之間的連線過程主要可以概括為以下三步: 伺服器建立監聽:客戶端初始化Socket動態庫後建立套接字,然後指定客戶端Socket的地址,迴圈繫結Socket直至成功,然後開始建立監聽,

Web伺服器工作原理與安全防護策略

Web伺服器的工作原理  Web伺服器的工作原理並不複雜,一般可分成如下4個步驟:連線過程、請求過程、應答過程以及關閉連線。下面對這4個步驟作一簡單的介紹。連線過程就是Web伺服器和其瀏覽器之間所建立起來的一種連線。檢視連線過程是否實現,使用者可以找到和開啟socket這個虛擬檔案,這個檔案的建立意味著連線過

Nginx原理簡介與 搭建反向代理伺服器過程詳解

一、反向代理:Web伺服器的“經紀人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理伺服器來接受internet上的連線請求,然後將請求轉發給內部網路上的伺服器,並將從伺服器上得到的結果返回給internet上請求連線的客戶端,此時

NAT(網路地址轉換)技術與代理伺服器原理

一、    Nat技術: NAT英文全稱是“Network Address Translation”,中文意思是“網路地址轉換”,它是一個IETF(Internet Engineering Task Force,Internet工程任務組)標準,允許一個整體機構以一個公用I

代理伺服器(Proxy)的原理

什麼是代理伺服器(Proxy)? 以類似代理人的身份去取的使用者需要的資料。由於它的【代理】能力,使得我們可以透過代理伺服器來達成防火牆與使用者資料的分析。除此之外我們還可以藉助代理伺服器來達成節省頻寬的目的,以及加快內部網路對因特網的全球資訊網的訪問速度。

VMware快照的工作原理

所有 整合 100g 性能 不變 小時 此外 建立 console VMware中的快照是對VMDK在某個時間點的“拷貝”,這個“拷貝”並不是對VMDK文件的復制,而是保持磁盤文件和系統內存在該時間點的狀態,以便在出現故障後虛擬機能夠恢復到該時間點。如果對某個虛擬機創建了多

Vue工作原理小結

key 如何實現 reference 讀寫 owa 方法 cli scrip 枚舉 本文能幫你做什麽?1、了解vue的雙向數據綁定原理以及核心代碼模塊2、緩解好奇心的同時了解如何實現雙向綁定為了便於說明原理與實現,本文相關代碼主要摘自vue源碼, 並進行了簡化改造,相對較

angularjs工作原理解析

body oot 分隔 復制 抖動 修改 重新 接收 裏的 個人覺得,要很好的理解AngularJS的運行機制,才能盡可能避免掉到坑裏面去。在這篇文章中,我將根據網上的資料和自己的理解對AngularJS的在啟動後,每一步都做了些什麽,做一個比較清楚詳細的解析。 首