翻墙入口,Telegram上最大的免费科学上网解决方案提供者,
致力于维护互联网世界普世自由价值、建立翻墙行业新秩序。

Shadowsocks利用 Brook 实现中继(中转/端口转发)加速

本文最后更新于 2018年10月1日 14:21 可能会因为没有更新而失效。如已失效或需要修正,请留言!

Brook是一个由 Go语言编写的跨平台代理软件,支持 Linux/MacOS/Windows/Android/iOS 各个平台。

同时因为 Go语言的特性,在操作使用上非常简单,本篇主要介绍 Brook服务端中 端口转发的使用方法。

优点是:安装、配置简单,支持TCP、UDP转发;

缺点是:不支持端口段转发,如果要转发多个端口,多开即可。

Brook Github项目:https://github.com/txthinking/brook

Brook 端口转发一键管理脚本:『原创』Shadowsocks Brook 中继(中转/端口转发) 便捷管理脚本


其他 Brook 教程请看:https://fanqiangdang.com/blog/tag/brook/

安装步骤

首先建立并进入文件夹(假设你当前目录是 /root ,那么 Brook的目录就是 /root/brook ):

mkdir brook && cd brook 

然后获取最新的版本号:

brook_ver=$(wget -qO- "https://github.com/txthinking/brook/tags"| grep "/txthinking/brook/releases/tag/"| head -n 1| awk -F "/tag/" '{print $2}'| sed 's//">//') && echo ${brook_ver}

执行完后会输出获取的最新版本号,比如 v20171111 这样的日期格式,如果返回是空或者其他错误的内容,那么就代表获取失败。

获取失败的情况请去 Github 获取最新的版本号,例如 v20171111 ,然后执行 brook_ver=v20171111 (自己替换版本号)即可继续下面的下载步骤。


使用 uname -m 命令来判断VPS的位数,如果返回 x86_64 那就是64位,如果返回 i386或i686 那就是32位。

# 64位系统使用这个: wget -N --no-check-certificate "https://github.com/txthinking/brook/releases/download/${brook_ver}/brook"  # 32位系统使用这个: wget -N --no-check-certificate "https://github.com/txthinking/brook/releases/download/${brook_ver}/brook_linux_386" && mv brook_linux_386 brook 

最后只需要赋予一下执行权限即可继续看下面的使用方法了。

chmod +x brook 

使用方法

参数解释

relay          以 单个端口转发 模式运行 relays         以 多个端口转发 模式运行 

本篇文章主要介绍 端口转发的两个模式使用方法。

单端口启动

注意:因为前面的安装步骤已经进入了 Brook目录,所以这里不需要再进入目录了。但是以后需要启动Brook的时候,请进入Brook的文件夹,假设你的安装目录是 /root/brook ,那么就使用这个命令 cd /root/brook

# 启动 一个端口转发 # 监听端口为 2333,被转发的服务器IP为 2.2.2.2 端口为 6666 nohup ./brook relay -l :2333 -r 2.2.2.2:6666 > /dev/null 2>&1 &

多端口启动

# 启动 多个端口转发 # 分别为: #     监听端口 2333,被转发的服务器IP为 2.2.2.2 端口为 6666 #     监听端口 6666,被转发的服务器IP为 3.3.3.3 端口为 6688 #     监听端口 8888,被转发的服务器IP为 6.6.6.6 端口为 7766   nohup ./brook relays -l ":2333 2.2.2.2:6666" -l ":6666 3.3.3.3:6688" -l ":8888 6.6.6.6:7766" > /dev/null 2>&1 & 

停止Brook

kill -9 $(ps -ef|grep "brook relay"|grep -v grep|awk '{print $2}') 

简单解释

注意:假设你的中转服务器也就是现在在操作的服务器 IP 是 1.1.1.1 ,那么你的 中转端口 就是 2333 。你的 被中转服务器的 IP 是 2.2.2.2 ,被中转端口是 6666 。

这时候你的 ShadowsocksR客户端 填写信息的时候只修改 IP为 1.1.1.1 ,端口为 2333其他选项都不变。

所以原理就是:

Shadowsocks客户端通过 1.1.1.1:2333 链接中转服务器 1.1.1.1 ,然后中转服务器把端口 2333 的流量转发到 被中转服务器 2.2.2.2 的端口 6666 上面。然后 被中转服务器 也就是上面的 ShadowsocksR服务端,就会去访问你要的数据,最后依次返回 中继服务器 -> Shadowsocks客户端。

其他说明

Brook 默认支持UDP转发,无需任何设置!

运行Brook无报错,但无法连接

这个可能是防火墙的问题(如果有外部防火墙,那么也需要开放端口),因为我测试只支持 TCP,那么只需要开放TCP即可。

iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 端口 -j ACCEPT iptables -I INPUT -m state --state NEW -m udp -p udp --dport 端口 -j ACCEPT  # 删除防火墙规则,内容一样把 -I 换成 -D 就行了: iptables -D INPUT -m state --state NEW -m tcp -p tcp --dport 端口 -j ACCEPT iptables -D INPUT -m state --state NEW -m udp -p udp --dport 端口 -j ACCEPT 

提示 wget: command not found 的错误

这是你的系统精简的太干净了,wget都没有安装,所以需要安装wget。

# CentOS系统: yum install -y wget  # Debian/Ubuntu系统: apt-get install -y wget 

升级 Brook

升级很简单,只需要重新执行一开始的安装步骤即可,区别是不需要再新建文件夹了,直接进入文件夹即可。

卸载 Brook

卸载前先停止 Brook,然后直接删除 Brook的文件夹即可。

kill -9 $(ps -ef|grep "brook"|grep -v grep|awk '{print $2}') # 先停止,后删除(假设安装在 /root 目录内,那么文件夹就是 /root/brook rm -rf /root/brook

Brook 端口转发一键管理脚本:『原创』Shadowsocks Brook 中继(中转/端口转发) 便捷管理脚本

阅后请多多推广本文: Shadowsocks利用 Brook 实现中继(中转/端口转发)加速
责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!

赞(0)
未经允许不得转载:翻墙党 » Shadowsocks利用 Brook 实现中继(中转/端口转发)加速
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址