内网穿透系列——WireGuard (快速, 安全的下一代隧道程序)

一.介绍

WireGuard是个新出的隧道程序,内核级的,所以数据处理能力以及资源消耗就会很理想,而且它可以工作于一方动态IP一方静态IP的环境下,这就能够很好的利用于内网穿透的环境下。当然,有几个大佬拿它做搭隧道来实现自己的全球大内网(x, 看得我也很是羡慕

具体的介绍我不提了,感兴趣的去它的官网看看就知道了,针对以往的隧道程序做了不少方面的对比,可以看出来优势还是挺大的。 ——> 传送门

二.安装

大部分系统在WireGuard官网上都介绍了包安装和编译安装的过程,但是,心疼我Centos6,没人写怎么装,这就很气。所以我研究了下怎么装,发现"怎么又是个坑(摔 !"

首先,WireGuard是工作在KernelSpace的,所以对内核版本有着一定要求,必须在3.10版本以上,要我说就直接上4.9,带BBR多好,美滋滋。

首先这边有个大坑,还是得注意,官方表示WireGurad源码需要使用4.7以上的GCC编译,嗯,我特么怎么就没看到啊魂淡(摔,然后我第一次全套使用Centos6默认的GCC编译,出现了如下的错误

在更换高版本GCC编译后成功,但是发现无法加载wireguard.ko内核,dmesg查看后发现如下报错

经过研究WireGuard的官方邮件列表中他人的报错后终于发现了一个蛋疼的问题,就是如果内核使用了低版本GCC编译,那么程序必须也要低版本,但是程序默认无法通过低版本编译,需要修改代码。所以最好就是全部高版本。这儿主要还是因为内核用的是我自己的修改版,如果是官方版本的话……也许不会有问题?

具体可以查看邮件列表对话——>传送门

官方提供了一种把WireGuard直接patch到内核中的玩法,如下

然后会多两个内核参数,可以自行调整

但是我想了下还是不推荐这个方法,因为WireGuard目前还是比较频繁更新的,做到内核里不利于更新,以后稳定了或许不错

PS.总结一下,两个注意点

①.内核需要高版本GCC编译,且大于3.10版本

②.代码需要高版本GCC编译,使用前通过lsmod确认模块已经加载

三.使用方法

这部分不介绍了,官方真的详细,还有手把手动画演示以及测试服务器,命令全帮你写好了,照瓢画葫就行_(:з」∠)_  ——>传送门

下载工具系列——Aria2 (几乎全能的下载神器)

一.介绍

说完了前面一堆BT/PT客户端,现在终于轮到Aria2了,关于这个我就不介绍太多了,自从百度限速以来我觉得这个快变成众所周知的了,我平时也收集了各种和Aria2相关的插件或者是辅助软件之类的,就等着全部丢出来,下面请看我的表演。

二.安装

安装Aria2确实是个麻烦事,特别是要安装新的版本,我之前也写过编译安装最新版本的,看的人挺多的,就是还是麻烦了点,这次顺便给出个别人静态编译的地址,作者更新的挺勤的,基本上新版本出了很快就会跟进。

①.手动编译安装

这个翻我以前的文章就行了——> 传送门

②.静态编译下载

GNU/Linux:

32位: https://github.com/q3aql/aria2-static-builds/releases/download/v1.32.0/aria2-1.32.0-linux-gnu-32bit-build1.tar.bz2

64位: https://github.com/q3aql/aria2-static-builds/releases/download/v1.32.0/aria2-1.32.0-linux-gnu-64bit-build1.tar.bz2

ARM树莓派: https://github.com/q3aql/aria2-static-builds/releases/download/v1.32.0/aria2-1.32.0-linux-gnu-arm-rbpi-build1.tar.bz2

Windows:

32位: https://github.com/q3aql/aria2-static-builds/releases/download/v1.32.0/aria2-1.32.0-win-32bit-build1.7z

64位: https://github.com/q3aql/aria2-static-builds/releases/download/v1.32.0/aria2-1.32.0-win-64bit-build1.7z

还有个改版的,把并发线程提到了128,暴力下载

GNU/Linux 64位: https://github.com/xzl2021/aria2-static-builds-with-128-threads/releases/download/v1.32.0/aria2-1.32.0-linux-gnu-64bit-build1.tar.bz2

安装方法没啥说的,找地方解决直接用就行,静态编译就是这么牛逼,不需要额外安装库 阅读全文→

下载工具系列——Vuze (原Azureus, 不想做聊天软件的下载器不是好的BT客户端)

一.介绍

介绍了前面的Python写的,Qt写的现在来了个Java写的,这就是Vuze,原名Azureus,一个用Java编写的BitTorrent客户端,且支持I2P和Tor匿名网络协议。跨平台那是必须的,相对于其他BT/PT软件来说,这货貌似加入了类似迅雷的会员加速以及社交功能????

好吧,其实这货还是有不少人用的,毕竟其实挺好用,也有特色。

二.安装

这个安装还是挺容易的(真感动,被前面几个折腾死了)

①.首先来装个java

这个也不用配置啥环境变量,所以直接用就行,官网的java7现在只能登陆后下载了,java8虽然我测试没问题,但是还是怕Vuze有兼容问题

②安装Vuze

阅读全文→

下载工具系列——qBittorrent (Qt编写, 简单易用跨平台BT/PT客户端)

一.介绍

如果问起在Windows上用什么软件下载BT或是PT,那么我觉得可能大部分人都会说是uTorrent,简单易用速度还快,这就是uTorrent受欢迎的原因,但是,在Linux平台上的uTorrent就不是这么回事了。所以qBittorrent打出了uTorrent替代品的旗号,虽然可能还有很远的路要走,但是它确实有不少可取之处。

二.安装

qBittorrent在Linux上有GUI模式以及WebGUI模式,我肯定是选择后者的,毕竟服务器大多不装界面,节省资源。下面就来说一下怎么装

1.还是先得装libtorrent,这个是rasterbar版本,之前deluge我是懒得装了,这儿没办法,还得装,研究了下,真的是神坑,我从下午研究到了晚上才把这堆坑全填了,网上教程要么太老,要么全是ubuntu的,简直感人肺腑,甚至我这部分的教程写了删删了写来来回回好几次。

阅读全文→

下载工具系列——rTorrent (轻量级优秀BT/PT客户端)

一.介绍

rTorrent是一款简洁但是功能强大的轻量级BT/PT客户端,使用ncurses库以C++编写,所以资源占用来说相对于Python的Deluge会小不少,之所以把这两个拿来比较是因为它们都依靠libtorrent,不过,rTorrent不带WebGUI,它的Web界面是第三方的,一般使用的是ruTorrent。

二.安装

这部分的安装包含了rTorrent以及ruTorrent,前面说到后者并非内置的,所以总体来说就比较麻烦了,因为还得额外安装Web 服务器并配置。所以我建议,除非比较折腾,不然还是用其他的吧,当然你也可以去GitHub上翻翻一键脚本,挺多的。

不过嘛,折腾啥乐趣,也算是积累吧,我还是选择自己手动搞了。

①安装libtorrent

和Deluge不同的是,rTorrent不需要它的python binding,也用不着rasterbar版本,所以也就没了一堆boost库的问题,当然,因为不是rasterbar版本,所以速度特别快(不要奇怪,libtorrent有两个分支,一个侧重全平台,一个侧重速度)

基本上只要你装齐了编译程序,就没啥问题了,没装 ? 运行下面命令吧

阅读全文→