本文所有原创信息均采用 CC BY-NC-SA 3.0 Unported 许可协议。
server端使用Ubuntu 16.04.6 阿里云的服务器
需要一个拥有所有权的域名。
阿里的古董源太老 先更新 apt-get update
然后安装 apt-get install dns2tcp ,当然下载tar.gz自己编译也可以
然后编辑dns2tcp的配置文件 输入 vim /etc/dns2tcpd.conf
listen = 0.0.0.0
port = 53
user = nobody
key = password
chroot = /tmp
domain = dns2tcp.example.com
resources = ssh:127.0.0.1:22,socks5:127.0.0.0.1:1551,http:127.0.0.1:8082
建议如上配置,resources中可以选需要的服务,ssh,socks5,http。 domain填你要转的服务器,下面会说。编辑好后:wq保存就好了。
然后配置一下域名解析
以example.com为例,假使我拥有example.com的所有权。
在解析页面新建一个记录类型为A 主机记录为dns2tcp(这里任意),记录值为服务器ip,然后再新建一个记录类型为NS的,主机记录为a,,记录值为dns2tcp.example.com(这里的dns2tcp需要和上面A记录值一样)。
下一步需要开放一些端口,阿里是默认不开启的。
在阿里的安全组配置中,内网入方向添加 tcp80,tcp443,udp53
出方向添加tcp 3306,tcp443,tcp23,tcp22,tcp80,udp53 这些端口。然后保存即可。
启动服务器
需要先装一个screen来用,不过基本都自带这个
screen -S dns2tcpd
在新开的窗口中,输入dns2tcpd -F -d 2 -f /etc/dns2tcpd.conf
这样输入就可以了,详细参数可以看官方文档。
随后我们会看到如下
10:53:55 : Debug options.c:97 Add resource ssh:127.0.0.1 port 22
10:53:55 : Debug options.c:97 Add resource socks5:127.0.0.0.1 port 1551
10:53:55 : Debug options.c:97 Add resource http:127.0.0.1 port 8082
10:53:55 : Debug socket.c:55 Listening on 0.0.0.0:53 for domain tcp.example.com
Starting Server v0.5.2…
10:53:55 : Debug main.c:132 Chroot to /tmp
02:53:55 : Debug main.c:142 Change to user nobody
看到这里,恭喜你已经成功一半了。
windows端配置
在未登录校园网的电脑上,用cmd cd到dns2tcpc的目录输入
dns2tcpc -r ssh -z tcp.example.com 114.514.1919.810 -l 1145 -d 2 -k password
114.514.1919.810是我乱打的,这里填服务器ip,后面-l是端口,自己填一个能使的就好,6666,8888都可以。-k是密码,跟你服务器上填的一样,这些都可以去翻官方文档,我就不解释了。 当然每次都这样输入很麻烦,我把指令放bat里面,这样一键就能打开了。
debug level 2
Listening on port : 1145
When connected press enter at any time to dump the queue
如果正常的话,显示应该是这样的。然后打开xshell新建一个会话,ip 127.0.0.1 ,端口1145,在隧道中添加Dynamic(socks4/5) 端口1080 然后连接。成功的话xshell会弹服务器的登陆页面,登陆即可,此时桌面端的cmd在疯狂刷屏(
打开ie ,设置,internet选项,连接,局域网设置,为LAN使用代理服务器,高级,嵌套字中填127.0.0.1,端口1080,保存。
打开ie,输入baidu.com,你好了。
沃日好吊看不懂 你会不会秃头啊
您好 不会的
您好,请问dns2tcpc在我的Windows计算机上无法运行该如何解决呢