<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    zyskm用夢想丈量人生,用奔跑丈量激情

    SOCKS5協議的原理和應用(轉載)

    首先解釋一下為什么它被稱之為SOCKS。其實該協議設計之初是為了讓有權限的用戶可以穿過過防火墻的限制,使得高權限用戶可以訪問一般用戶不能訪問的外部資源。當時設計者考慮到幾乎所有使用TCP/IP通信的應用軟件都使用socket(套接字,實際上是一組應用程序接口)完成底層的數據通信。為了方便軟件開發者使用該協議,協議設計者就刻意對應了幾組socket編程最經典的操作,并且將協議定名為SOCKS。


    最先被廣泛使用的SOCKS協議是其第四版本,就是SOCKS4。IE和一些其他應用程序直接用“Socks”表示SOCKS4協議。該版本支持TCP的connect(作為客戶端連接)和listen(打開一個監聽端口),不支持UDP協議。SOCKS4A對SOCKS4作了一點增強,即允許客戶端將域名發送給SOCKS服務器,讓SOCKS服務器進行域名解析。


    SOCKS5是第五版,相對第四版作了大幅度的增強。首先,它增加了對UDP協議的支持;其次,它可以支持多種用戶身份驗證方式和通信加密方式;最后,修改了SOCKS服務器進行域名解析的方法,使其更加優雅。經過這次脫胎換骨的升級,SOCKS5于1996年被IETF確認為標準通信協議,RFC編號為1928。經過10余年的時間,大量的網絡應用程序都支持SOCKS5代理。


    SOCKS5雖然可以支持多種用戶身份驗證方式,但是應用程序真正實現的一般也只有兩種:不驗證和用戶名密碼驗證。所以大多數應用程序SOCKS5代理設置也只有用戶名/密碼這一種可選驗證方法。另外,盡管從SOCKS4開始,就支持打開TCP監聽端口,但是直到SOCKS5,也只允許這個端口接收一個客戶端連接。因此網絡服務提供者(如http服務器)不能使用SOCKS。實際上,很多SOCKS服務器的實現也不支持打開TCP監聽端口。


    由于SOCKS5實際上仍然對應了socket的經典操作,所以有人利用這一點編寫了一種通用軟件,可以讓不支持SOCKS5協議的應用軟件也能通過SOCKS5服務器進行網絡通信,而應用軟件則對此一無所知。這類軟件最著名的莫過于SocksCap32了,它是Permeo公司(其前身是NEC北美公司的一個部門,而SOCKS最初就是NEC北美公司的工程師開發并維護的)早期推出的一款產品。用戶可以免費使用其試用版。試用版和正式版相比,沒有功能上的限制,只有使用時間的限制。但是到目前為止,Permeo總是會在老版本到期之前推出一個延后了期限的“新”版本,所以用戶實際上可以免費使用。SocksCap32是利用API鉤子,截獲應用軟件對socket函數的調用來實現對SOCKS5客戶端的模擬。盡管SocksCap32很有名,但是由于推出的時間較早,對很多現代應用軟件時常表現的力不從心,所以Permeo又提供了Permeo
    Security
    Driver(以下稱為PSD)。這款產品使用了驅動技術從底層直接截獲應用軟件的socket通信,因此幾乎可以為所有應用軟件提供SOCKS5客戶端的支持。PSD不提供試用版,但是可以找到其早期版本的注冊碼。


    雖然說設計SOCKS協議的初衷是在保證網絡隔離的情況下,提高部分人員的網絡訪問權限,但是國內似乎很少有組織機構這樣使用。一般情況下,大家都會使用更新的網絡安全技術來達到相同的目的。但是由于SocksCap32和PSD這類軟件,人們找到了SOCKS協議新的用途——突破網絡通信限制,這和該協議的初衷實際上正好相反。比如某些網游的部分服務器設置為只接收部分地區的IP地址的連接。為了突破這種限制,可以找一個該地區的SOCKS5代理服務器,然后用PSD接管網游客戶端,通過SOCKS5代理服務器連接游戲服務器。這樣游戲服務器就會認為該客戶端位于本地區,從而允許進行游戲。還有一種情況是:防火墻僅允許部分端口(如http的80端口)通信,那么可以利用SOCKS5協議和一個打開80端口監聽的SOCKS5服務器連接,從而可以連接公網上其他端口的服務器。利用一些額外的技術手段,甚至可以騙過內部的http代理服務器,這時在使用內網http代理上網的環境下也可以不受限制的使用網絡服務,這稱之為SOCKS
    over HTTP。通通通([url]www.tongtongtong.com[/url])是老牌SOCKS over
    HTTP代理提供商,實現了所有的SOCKS5的連接功能,且有多組國內外服務器。信天游([url]www.xtyproxy.com[/url]),則是最近剛剛出現的代理服務提供商,功能和通通通相比還有差距,但是目前完全免費。當然,使用代理服務器后,將不可避免的出現通信延遲,所以應該盡量選擇同網絡(指網通/
    電信),距離近的服務器。

    sock5代理的工作程序是:

    1.需要向代理方服務器發出請求信息。
    2.代理方應答
    3.需要代理方接到應答后發送向代理方發送目的ip和端口
    4.代理方與目的連接
    5.代理方將需要代理方發出的信息傳到目的方,將目的方發出的信息傳到需要代理方。代理完成。
    由于網上的信息傳輸都是運用tcp或udp進行的,所以使用socks5代理可以辦到網上所能辦到的一切,而且不輿目的方會查到你的ip,既安全又方
    便
    sock5支持UDP和TCP,但兩種代理是有區別的,以下分類說明
    如何用代理TCP協議
    1.向服務器的1080端口建立tcp連接。
    2.向服務器發送
    05 01 00 (此為16進制碼,以下同)
    3.如果接到 05 00 則是可以代理
    4.發送 05 01 00 01 + 目的地址(4字節) +
    目的端口(2字節),目的地址和端口都是16進制碼(不是字符串!!)。 例202.103.190.27 -7201 則發送的信息為:05 01 00 01 CA
    67 BE 1B 1C 21 (CA=202 67=103 BE=190 1B=27
    1C21=7201)
    5.接受服務器返回的自身地址和端口,連接完成
    6.以后操作和直接與目的方進行TCP連接相同。
    如何用代理UDP連接
    1.向服務器的1080端口建立udp連接
    2.向服務器發送
    05 01 00
    3.如果接到 05 00 則是可以代理
    4.發送 05 03 00 01 00 00 00 00 +
    本地UDP端口(2字節)
    5.服務器返回 05 00 00 01 +服務器地址+端口
    6.需要申請方發送 00 00 00 01
    +目的地址IP(4字節)+目的端口 +所要發送的信息
    7.當有數據報返回時 向需要代理方發出00 00 00 01 +來源地址IP(4字節)+來源端口
    +接受的信息
    注:此為不需要密碼的代理協議,只是socks5的一部分,完整協議請RFC1928

    posted on 2013-03-01 14:18 zyskm 閱讀(9828) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产高清视频免费在线观看| 亚洲熟妇AV日韩熟妇在线| xxxxxx日本处大片免费看| 日韩电影免费在线观看视频| 国产精品亚洲精品观看不卡| 2021免费日韩视频网| 国产精品亚洲精品| 成年女人免费v片| 亚洲高清乱码午夜电影网| 超pen个人视频国产免费观看| 亚洲综合一区国产精品| 麻豆国产VA免费精品高清在线| 亚洲另类无码一区二区三区| 日本高清免费不卡视频| 手机永久免费的AV在线电影网| 亚洲一本大道无码av天堂| 成人片黄网站色大片免费观看cn| 精品国产综合成人亚洲区| 99视频有精品视频免费观看| 亚洲性无码av在线| 日韩免费高清视频网站| www.xxxx.com日本免费| 久久久久亚洲精品成人网小说| 在线a免费观看最新网站| 久久精品国产亚洲AV蜜臀色欲| 免费观看的a级毛片的网站| 蜜臀亚洲AV无码精品国产午夜.| 亚洲AV无码一区二区三区在线观看 | 99久久99久久精品免费看蜜桃| 国产精品亚洲一区二区麻豆| 免费a级毛片永久免费| 爽爽爽爽爽爽爽成人免费观看| 亚洲色图黄色小说| 国产午夜鲁丝片AV无码免费| 久久久受www免费人成| 亚洲AV色吊丝无码| 国产成人亚洲综合无码| 老司机在线免费视频| 一级毛片免费全部播放| 亚洲一区在线视频| 国产亚洲精品线观看动态图|