代理服務器工作原理

(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 user@host:port)
ftp (user user@host port)
ftp (open host)
ftp (site host)
ftp (site user@host)
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 E...d.@.........
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: p_w_picpath/gif,
00000060: 20 69 6D 61 67 65 2F 78 2D 78 62 69 74 6D 61 70 p_w_picpath/x-xbitmap
00000070: 2C 20 69 6D 61 67 65 2F 6A 70 65 67 2C 20 69 6D , p_w_picpath/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 p_w_picpath/gif, p_w_picpath
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, p_w_picpath/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]@...yr.........i.I6u[.....P....l..USER [email protected]...

http代理

http代理是明文
..]ZY...][email protected][email protected].*[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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章