|
SOCKS是一種網路協議,主要用於客戶端與外網伺服器之間通訊的中間傳遞。SOCKS是"SOCKetS"的縮寫[1]。
當防火牆後的客戶端要訪問外部的伺服器時,就跟SOCKS代理伺服器連接。這個代理伺服器控制客戶端訪問外網的資格,允許的話,就將客戶端的請求發往外部的伺服器。
這個協議最初由Devid Koblas開發,而後由NEC的Ying-Da Lee將其擴展到版本4。最新協議是版本5,與前一版本相比,增加支持UDP、驗證,以及IPv6。
根據OSI模型,SOCKS是位於應用層與傳輸層之間的中間層。
目錄 |
下麵是客戶端向SOCKS 4代理伺服器,發送的連接請求包的格式(以位元組為單位):
+----+----+----+----+----+----+----+----+----+----+....+----+ | VN | CD | DSTPORT | DSTIP | USERID |NULL| +----+----+----+----+----+----+----+----+----+----+....+----+ 1 1 2 4 variable 1
代理伺服器而後發送回應包(以位元組為單位):
+----+----+----+----+----+----+----+----+ | VN | CD | DSTPORT | DSTIP | +----+----+----+----+----+----+----+----+ 1 1 2 4
如果請求被拒絕,SOCKS伺服器馬上與客戶端斷開連接;如果請求被允許,代理伺服器就充當客戶端與目的主機之間進行雙向傳遞,對客戶端而言,就如同直接在與目的主機相連。
部分SOCKS伺服器軟體:
有不少客戶端的socksify[2]軟體,本地軟體從而可以通過SOCKS來與外網相連。
| 客戶端 | 許可證 | 版本 | 發佈日期 | 平臺 | 支持協議 |
| Dante client | BSD/CMU | 1.1.18 | 09/2005 | Linux | v4, v5 |
| FreeCap | GPL | 3.18 | 02/2005 | Windows | - |
| Hummingbird socks | - | - | - | Windows | - |
| ProxyCap | - | 2.03 | - | Windows | - |
| SocksCap | Non-Comercial home use | - | - | - | v5 |
| tsocks | GPL | 1.8 | 10/2002 | - | - |
| nylon | - | - | 06/2003 | OpenBSD | - |
|
Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History