socks5代理服务器dante(sockd)--使用心得


关于socks5代理和dante的介绍,网上资料很多:
描述socks5协议的RFC http://tools.ietf.org/html/rfc1928
socks wiki http://en.wikipedia.org/wiki/SOCKS
socks5代理服务器开源软件dante官网 http://www.inet.no/dante
dante安装http://blog.chinaunix.net/space.php?uid=71828&do=blog&id=2678124
dante配置http://bbs.chinaunix.net/thread-621609-1-1.html


本人使用dante(1.3.2)有一小段时间了,也简单地研究了它的源代码,这里是我对一些dante特点的认识和概括:
1.多进程架构
2.进程按功能分成管理、协商、请求和IO四类
3.使用select异步io

dante在启动之后会fork出一个或多个(参数-N)管理进程,管理进程一开始会fork一定比例数量的协商(negociate)、请求(request)和IO子进程;管理进程一般称为mother,分别与各个子进程保持双向通信;协商子进程negchild负责处理代理客户端的socks连接建立,run_negotiate就是这类进程要干的活,其中最主要的是recv_clientrequest,它解析了来自客户端的协议包并进行相应的应答处理;请求子进程reqchild负责连接远端目标地址,run_request和dorequest是核心处理函数;IO子进程iochild负责代理转发,以CONNECT方式为例io_rw函数实现了代理客户端和目标远端之间的对称转发;各类child的数量

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值