啊……好久没更新了……

开学好多好多的课……我快要死了……(医疗兵!医疗……卒)

总算闲下来好好的写(shui)一波文章了……

今天突然想到了自己好久没挂的北邮人PT,……众所周知,北邮人PT是一个IPV6 Only的PT论坛,也就是说,你不仅登录论坛需要使用IPV6,挂PT你也同样需要IPV6……

这么一来……对于国内很多的吃灰小鸡们来讲,如何优雅的接入IPV6,就成了一个很大很大的问题……

简单总结一下,问题无非就这几种:

  • NAT环境:家庭宽带,闲置大量的上传带宽,但ISP却又不给分配IPV6;因为NAT性质,无法接入HE Tunnelbroker隧道
  • 41协议数据包被丢弃:吃灰小鸡,但服务器的防火墙规则默认丢弃41协议数据包……就算接入了隧道也不能用(表现为Ping不通,也无法使用)
  • HE隧道速度过慢:成功接入隧道,但速度实在不理想,经常性的速度跑不起来(这一点在国内的小鸡尤为常见)

那么……就真的没有办法了么?

不不不……您先别着急……方法肯定还是有的。

不过这次……我们剑走偏锋……换一种特殊的方法:那就是“乌鸦坐飞机”!

Step 1: 准备工作

既然这次要玩一把剑走偏锋,当然我们的需求也稍微特殊一点:

你需要:

  • 一台吃灰小鸡(配置随意,但内存尽可能大些,如果不够大后面有解决方法)
  • 一台网络稍好的大流量海外服务器(其实国内的也可以,不过国内到HE的链路质量比较感人,推荐海外服务器)
  • 趁手的SSH工具

吃灰小鸡这个就不用说了……我相信在座的各位,或多或少都有吃灰的鸡……

海外服务器这个,要求服务器要自带IPV6,如果没有IPV6的话,请自行接入HE Tunnelbroker隧道,具体过程本教程不作讲解;

同时,请保证服务器的流量尽可能多(如果无限流量最好),同时吃灰小鸡到海外服务器之间的链路尽可能稍微稳定一点,这样对提升速度会有一定的优势;(如果你会FQ飞机性能调优的话,可以无视这一句)

SSH工具……萝卜白菜各有所爱,不过小心马/克\丁的Xshell大坑……

Step 2: 配置海外服务器

首先SSH连接到海外的服务器,为服务器配置SS代理:

(什么?你不知道SS是什么?很抱歉,本教程不适合你,请直接右上角,谢谢合作)

(觉得SS太low?其他的代理工具也是可以的,毕竟萝卜白菜各有所爱嘛)

以下教程均以Debian 9操作系统作为范例,其他系统请参考步骤适当变换命令!

出于对IP防墙的保护,本教程将会使用aes-256-gcm作为SS的加密方式!可根据自己需要自行变换需要的加密/混淆方式!

直接安装libsodium (适用于网络不好的情况下,节省时间):

apt-get install libsodium18 libsodium-dev
ldconfig

或者,编译安装libsodium(会安装最新版本的libsodium,推荐):

apt-get install wget libtool autoconf git python-pip -y
cd /tmp
wget -O libsodium.tar.gz https://download.libsodium.org/libsodium/releases/LATEST.tar.gz
tar xvf libsodium.tar.gz
cd libsodium-stable/
./autogen.sh && ./configure && make && make install && ldconfig
echo "OK!"

之后,安装SS-Python:

pip install git+https://github.com/shadowsocks/shadowsocks.git@master

SS-Python部分的配置文档请参考:https://github.com/shadowsocks/shadowsocks/tree/master

安装完成后,下载SS-Python配置文件:

mkdir -p /root/ss-v6tunnel/server/
cd /root/ss-v6tunnel/server/
wget -O /root/ss-v6tunnel/server/config.json https://github.com/shadowsocks/shadowsocks/raw/master/config.json.example

之后编辑配置文件:

{
    "server":"127.0.0.1",
    "server_port":8388,
    "local_port":1080,
    "password":"password",
    "timeout":600,
    "method":"aes-256-cfb",
    "local_address":"127.0.0.1",
    "fast_open":false,
    "tunnel_remote":"8.8.8.8",
    "dns_server":["8.8.8.8", "8.8.4.4"],
    "tunnel_remote_port":53,
    "tunnel_port":53,
    "libopenssl":"C:\\Program Files\\Git\\mingw64\\bin\\libeay32.dll",
    "libsodium":"/usr/local/lib/libsodium.so",
    "libmbedtls":"/usr/local/lib/libmbedcrypto.2.4.0.dylib"
}

按照以下步骤操作:

  • server 行的值修改为 0.0.0.0
  • server_port 行的值修改为任意端口(比如54321)
  • password 行修改为一个较复杂的密码
  • method 行的值修改为 aes-256-gcm
  • fast_open 行的值修改为 true
  • 删除 libopenssl
  • 去掉 libsodium 行后面的逗号(,)
  • 删除 libmbedtls
  • 保存文件并退出

之后执行命令,测试是否可以正常启动:

ssserver -c /root/ss-v6tunnel/server/config.json --prefer-ipv6

如果能够正常启动,请用 Ctrl+C 停止运行,并使用以下命令将进程转入后台运行(当然你也可以选择其他喜欢的方式,比如screen,比如注册为服务):

nohup ssserver -c /root/ss-v6tunnel/server/config.json --prefer-ipv6 >/dev/null 2>&1 &

因为本教程的目标是使用IPV6 Only PT论坛,所以强烈推荐加上 --prefer-ipv6 参数,这样会使得所有通过SS的解析,结果均为IPV6解析记录优先!

服务端的配置到此结束,确保SS-Python服务端进程启动后,我们开始客户端的配置。

Step 3: 配置吃灰小鸡

国外的跳板服务器已经搭建好了,回来我们就该配置我们的吃灰小鸡们了:

安装SS-Python的过程同上,不过到吃灰鸡们这边,就不是执行ssserver了,而是 sslocal

安装完成后,下载SS-Python配置文件:

mkdir -p /root/ss-v6tunnel/client/
cd /root/ss-v6tunnel/client/
wget -O /root/ss-v6tunnel/client/config.json https://github.com/shadowsocks/shadowsocks/raw/master/config.json.example

之后编辑配置文件:

{
    "server":"127.0.0.1",
    "server_port":8388,
    "local_port":1080,
    "password":"password",
    "timeout":600,
    "method":"aes-256-cfb",
    "local_address":"127.0.0.1",
    "fast_open":false,
    "tunnel_remote":"8.8.8.8",
    "dns_server":["8.8.8.8", "8.8.4.4"],
    "tunnel_remote_port":53,
    "tunnel_port":53,
    "libopenssl":"C:\\Program Files\\Git\\mingw64\\bin\\libeay32.dll",
    "libsodium":"/usr/local/lib/libsodium.so",
    "libmbedtls":"/usr/local/lib/libmbedcrypto.2.4.0.dylib"
}

按照以下步骤操作:

  • server 行的值修改为你的跳板SS的IP地址
  • server_port 行的值修改为你的跳板SS的端口号
  • local_port 行的值修改为非1080端口(比如1090)
  • password 行修改为你的跳板SS的密码
  • method 行的值修改为你的跳板SS的加密方式
  • fast_open 行的值修改为 true
  • 删除 libopenssl
  • 去掉 libsodium 行后面的逗号(,)
  • 删除 libmbedtls
  • 保存文件并退出

之后执行命令,测试是否可以正常启动:

sslocal -c /root/ss-v6tunnel/client/config.json

如果能够正常启动,请用 Ctrl+C 停止运行,并使用以下命令将进程转入后台运行(当然你也可以选择其他喜欢的方式,比如screen,比如注册为服务):

nohup sslocal -c /root/ss-v6tunnel/client/config.json >/dev/null 2>&1 &

Step 4: 配置Deluge客户端

如何安装Deluge客户端不在本教程的叙述范围内,如需安装Deluge请移步:https://deluge-torrent.org/

登录Deluge面板,然后点击上方菜单栏中的“首选项(Preferences)”

deluge-v6tunnel-1.png

之后点击弹出窗口左侧的“代理服务器(Proxy)”:

deluge-v6tunnel-2.png

为所有的选项,设置如下:

  • Type(类型):Socks5
  • Host(主机):127.0.0.1
  • Port(端口):1090

设置好了大概是这个样子的:

deluge-v6tunnel-3.png

之后点击“OK”,保存并退出。

现在,尝试上传一个IPV6 Only PT论坛的种子并开始下载:

deluge-v6tunnel-4.png

原本没有IPV6的小鸡,现在借助SS隧道,已经成功下载到IPV6 Only PT论坛的资源了!

所以如果有想要利用闲置资源刷上传量的,不如来试试此方法~

关于本文章 & 求投喂求打赏OwO

本文章遵循BY-CC-SA-4.0协议,转载请保留文章来源及作者信息,同时欢迎转载本文章!

顺便,博主因买鸡过多和电脑部分组件损坏,维修需要一定的资金(路人OS:骗氪也不找个好点的理由)
总之,欢迎各位大佬打赏!

联系方式:

感谢大家的支持!也感谢每一位文章阅读到这里的人!QwQ

最后修改:2018 年 10 月 31 日
如果觉得我的文章对你有用,请随意赞赏