一.介绍

Dog Tunnel官方中文名就是狗洞,是由中国开发者 vzex 开发的,在KCP出现后进行了重构,将其底层UDP支持替换为了KCP,使其效率大大提高,在某些恶劣的网络环境下依旧能有不错的效果。当然,它也是支持TCP模式的,另外它也是支持加密的,在P2P打洞失败的情况下也能够自动切换为C/S模式来使用服务器中转。需要了解的是,Dog Tunnel也提供了Lite版本,仅支持P2P模式,数据完全不通过任何第三方服务器中转,保证了安全性,当然,这就要求了打洞的双方至少有一方拥有公网IP。

和N2N类似的是,它也支持多个服务器,能够在多连接的情况下自动切换负载均衡以便提高速度。还有一个特殊之处,是其原生支持socks5代理,可以在公司网络等特殊网络环境下实现特定需求。

二.安装

作者提供了热门平台的二进制程序,可以到官网下载——>传送门

带Lite的就是Lite版,反之就是常规版本

当然,如果你有特殊需求,比如想用最新的,但是还没有出Release,那么可以自己编译一下

因为Dog Tunnel也是由Go写的,所以还是照例安装一下Go

然后会生成dtunnel_s和dtunnel两个程序,前者是服务端,后者是客户端
如果想要编译Lite版,那就如下

三.配置

先介绍常规版本

如果要鉴权(即如下方客户端那样有啥reg啊,link啊,然后还能限制同一IP使用数量),请配置数据库(配置数据库后客户端必须要指定key参数才能连上,这玩意是数据库里的AuthKey字段),数据库的初始化sql文件在GitHub上有,自己导入——>传送门
另外操作要么自己往里面填数据,要么用GitHub上那个admin的API
至于客户端

如果有啥不对请不要吐槽,这玩意的文档实在写的太烂了,或者说根本没有文档这种东西……我都是看着程序输出的说明连蒙带猜翻译的
所以,下面我们来介绍Lite版本,不和这个看上去就好麻烦的版本折腾了……
Lite版谢天谢地是有说明文档的,感动啊,果然作者其实也不希望你用常规版本吗……
内容还是挺多的,我就不复制粘贴了,自己去看吧
说明文档——>传送门
看了下,这个算良心文档,不仅有说明,还有命令的栗子,所以我建议除非实在完全没有公网IP无法打洞,不然别用常规版折腾自己了

Senraの小窝原创文章,转载请注明来自:内网穿透系列——Dog Tunnel ( 狗洞,支持KCP,高效快速的P2P隧道 )