Total Pageviews

Tuesday 8 March 2016

socks proxy的原理


socks5支持udp,所以如果客户端把dns查询也走socks的话,那么就可以直接解决dns的问题了。

socks proxy 握手的过程

socks5流程
  • 客户端查询服务器支持的认证方式
  • 服务器回应支持的认证方式
  • 客户端发送认证信息,服务器回应
  • 如果通过,客户端直接发送TCP/UDP的原始数据,以后proxy只单纯转发数据流,不做任何处理了
  • socks proxy 自身没有加密机制,简单的TCP/UDP forward
socks协议其实是相当简单的,用wireshark抓包,结合netty-codec-socks,很容易可以理解其工作过程。
https://github.com/netty/netty/tree/master/codec-socks