socks5

socks5

代理協議
SOCKS5是一個代理協議,它在使用TCP/IP協議通訊的前端機器和服務器機器之間扮演一個中介角色,使得内部網中的前端機器變得能夠訪問Internet網中的服務器,或者使通訊更加安全。SOCKS5服務器通過将前端發來的請求轉發給真正的目标服務器,模拟了一個前端的行為。在這裡,前端和SOCKS5之間也是通過TCP/IP協議進行通訊,前端将原本要發送給真正服務器的請求發送給SOCKS5服務器,然後SOCKS5服務器将請求轉發給真正的服務器。[1]
  • 外文名:socks5
  • 性質:代理協議
  • 實質:中介角色
  • 方式:模拟了一個前端的行為

簡介

如果您的機器具有一個合法的InternetIP地址,或者您利用自己機器上的調制解調器撥号上網,可以自由和Internet上任何主機溝通,那麼您通常不必關心SOCKS5協議。SOCKS5協議對于處在内部網絡中的機器,需要透過網絡中某些可以聯通外部Internet的機器訪問外部時,有用。SOCKS5服務器在将通訊請求發送給真正服務器的過程中,對于請求數據包本身不加任何改變。SOCKS5服務器接收到真正服務器的響應後,也原樣轉發給前端。因此,SOCKS5協議是一種代理協議,對于各種基于TCP/IP的應用層協議都能夠适應,幾乎是萬能的。它雖然不能理解自己轉發的數據的内部結構,但是它能夠忠實地轉發通訊包,完成協議本來要完成的功能。n與SOCKS5協議不同,HTTP代理是通過HTTP協議進行的,HTTP代理服務器軟件了解通訊包的内部結構,在轉發過程中還要對通訊進行某種程度的修改和轉換。和HTTP代理協議不同,SOCKS5實際上是一個傳輸層的代理協議。我們可以想象,如果每個具體的應用層協議都要設計對應的代理協議表達辦法,一個特定的代理服務器無論如何也支持不過來那麼多新出現的協議。因此,可以說SOCKS5的出現緩解了各種具體協議需要專門設計代理協議的困難局面。不過,并不是凡是使用基于TCP/IP協議的應用協議的軟件,都可以無條件地透過SOCKS5服務器進行通訊,還要求前端軟件本身具有SOCKS5的接口,才能利用SOCKS5代理服務器。

運行狀态

一個支持SOCKS5協議的前端,通常具有兩種運行狀态:

直接通訊狀态,不使用SOCKS5接口。這時的通訊是針對最終服務器進行的。

SOCKS5狀态,使用SOCKS5接口将本來要發送給最終服務器的請求發送給SOCKS5服務器。在前端和SOCKS5服務器進行初始化會話的時候,前端告訴了SOCKS5服務器關于最終服務器的IP地址和端口信息,所以SOCKS5服務器能夠忠實按照前端要求啟動和最終服務器的通訊過程。

主要區别

SOCKS是一組由Internal工程工作小組(IETF)所開發出來的開放軟件開放标準,用來處理網絡安全的事宜。SOCKS像一堵牆被夾在Internal服務器和客戶端之間,對于出入企業網絡的資訊提供流量和安全的管理。SOCKS這個名詞并不是一組英文字頭的縮寫,而是一個和TCP/IP的Socket端口有關的安全标準,一般防火牆系統通常是象網關(Gateway)一樣是作用在OSI模型的第七層也就是應用層上,對TCP/IP的高級協議,如Telnet、FTP、HTTP和SMTP加以管制,而SOCKS作用在OSI模型的第五層也就是會話層上,像一個代理一樣對客戶端到服務器端或服務器和服務器之間的數據聯系提供安全上的服務。

由于SOCKS作用在會話層上,因此它是一個提供會話層到會話層間安全服務的方案,不受高層應用程序變更的影響。Socks代理隻是簡單地傳遞數據包,而不必關心是何種應用協議(比如FTP、HTTP和NNTP請求),所以Socks代理服務器比應用層代理服務器要快。

相關詞條

相關搜索

其它詞條