Profile
GitHub

写一个socks5代理服务器

背景

写这个项目主要是因为最近在学习go语言,并且呢最近发现买的代理速度不是很够,价格也不是很合适。所以,正好借此机会自己写一个socks5代理服务器,既能够加深对go语言的理解,又能够解决自己的需求。

socks5协议

socks5协议是一个应用层协议,它的作用是在客户端和服务器之间建立一个代理,让客户端可以通过代理服务器访问目标服务器。socks5协议的具体实现可以参考rfc1928

实现

大致过程

  1. 客户端和服务器建立连接(三次握手)
  2. 协商(建立socks5链接)
  3. 请求(服务器与目标服务器建立连接)
  4. 转发

sock5

...具体实现步骤后续补充