基于 Brook 转发教程(TCP+UDP)

Brook是一个由 Go语言编写的跨平台代理软件,支持 Linux/MacOS/Windows/Android/iOS 各个平台,同时因为 Go语言的特性,在操作使用上非常简单。

本脚本支持 CNAME ,支持 TCP + UDP, 不支持端口段转发

1. 下载 Brook 转发脚本

wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/brook-pf.sh && chmod +x brook-pf.sh && bash brook-pf.sh

下载并运行脚本后,会显示操作菜单,输入 1 并回车就会开始安装。

2. 使用方法

bash brook-pf.sh

运行脚本后会显示操作菜单, 根据菜单操作即可

基于 socat 转发教程(TCP+UDP)

socat是一个多功能的网络工具,名字来由是”Socket CAT”,可以看作是 netcat 的N倍加强版

本脚本支持 CNAME ,支持 TCP + UDP, 不支持端口段转发

脚本默认开启UDP、TCP转发,带开机自启功能,且一次只能转发单个端口,如果想转发多个端口请重复运行本脚本。

1. 下载 socat 转发脚本并执行

wget https://www.moerats.com/usr/shell/socat.sh && bash socat.sh

按要求输入以下信息:

#如果你要用本地服务器的3333端口转发IP为1.1.1.1服务器的6666端口,那就依次填入指定参数。
请输入本地端口:3333
请输入远程端口:6666
请输入远程IP:1.1.1.1

等待配置完成即可使用!

参考来源:

Socat一键安装脚本

基于 iptables 转发教程(TCP+UDP)

iptables 利用 linux 的一个内核模块进行ip包的转发,工作在 linux 的内核态,不涉及内核态和用户态的状态转换

本脚本支持 CNAME ,支持 TCP + UDP, 不支持端口段转发

1. 准备工作

  • 关闭firewalld
  • 关闭selinux
  • 开启内核端口转发

复制以下代码直接执行即可

systemctl disable firewalld.service
systemctl stop firewalld.service

setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config  
sed -n '/^net.ipv4.ip_forward=1/'p /etc/sysctl.conf | grep -q "net.ipv4.ip_forward=1"
if [ $? -ne 0 ]; then
    echo -e "net.ipv4.ip_forward=1" >> /etc/sysctl.conf && sysctl -p
fi

2. 下载 iptables 转发脚本

wget -qO natcfg.sh https://raw.githubusercontent.com/arloor/iptablesUtils/master/natcfg.sh && bash natcfg.sh

输出如下:

用途: 便捷的设置 iptables 端口转发
注意1: 到域名的转发规则在添加后需要等待2分钟才会生效,且在机器重启后仍然有效
注意2: 到IP的转发规则在重启后会失效,这是iptables的特性

你要做什么呢(请输入数字)?Ctrl+C 退出本脚本
1) 增加到域名的转发      3) 增加到IP的转发        5) 列出所有到域名的转发
2) 删除到域名的转发      4) 删除到IP的转发        6) 查看iptables转发规则
#? 
此时按照需要,输入1-6中的任意数字,然后按照提示即可

参考来源:

iptablesUtils

NatCloud VNC 使用简明教程

注意 !

如果您的电脑安装有 Java,您可直接使用 VNC 功能;
如果没有 Java………

Windows 电脑,请使用 tightVNC;
macOS 用户可使用 屏幕共享 应用!

1. 进入 VPS 管理产品 选项卡,点击 VNC 选项

VNC 选项卡

2. 在弹出的窗口中,点击 Java VNC 选项

Java VNC

3. 如果您的电脑没有安装 Java,会出现提醒语句,当出现此句时,请查看网页源代码或右键审查元素或F12

VNC get

4. 此时,您可获取该机器的VNC IP 、端口和密码信息,使用已安装软件即可连接,其他方式类似。

VNC Info

基于CloudFlare的DDNS解析 | 进阶版

前提条件

要自建DDNS服务,首先必须要有自己的域名且域名已经接入 Cloudflare (即DNS为CF提供的地址),另外就是使用阿里云解析、DNSPOD云解析、Cloudflare云解析等服务,本次教程以 Cloudflare 为例。

1. 获取CFKEY

打开网页:https://dash.cloudflare.com/profile

在页面下方找到【Global API Key】,点击右侧的View查看Key,并保存下来

2. 设置用于 DDNS 解析的二级域名

在 Cloudflare 中新建一个A记录,如:ddns.yourdomain.com,指向 1.1.1.1
(可随意指定,如123.123.123.123等等,主要用于后续查看 DDNS 是否生效)

3. 下载 DDNS 脚本

yum install -y wget && wget  -N --no-check-certificate https://raw.githubusercontent.com/yulewang/cloudflare-api-v4-ddns/master/cf-v4-ddns.sh

4. 修改 DDNS 脚本并填写相关信息

您可在线使用 nano/vi/vim 等工具进行修改,也可以下载到本地进行修改再上传覆盖!
可以参考下面命令使用vi进行编辑

vi cf-v4-ddns.sh

然后按小写字母 i 进入编辑模式

# API key, see https://www.cloudflare.com/a/account/my-account,
# 这里填写上一步获取的CFKEY
CFKEY=

#输入你需要解析用来DDNS解析的根域名 eg: example.com,比如我的域名是123.com,那么此处填写123.com
CFZONE=

# 登陆CF的Username, eg: [email protected](即CF的登录邮箱)
CFUSER=

# 填写用来DDNS解析的二级域名,与上面设置的要一致, eg: ddns.yourdomain.com(例 ddns.123.com)
CFHOST=

全部填写完毕后按左上角的Esc退出编辑模式,然后输入 :wq 它会自动保存并退出

5. 脚本授权并执行

chmod +x cf-v4-ddns.sh
./cf-v4-ddns.sh

如果脚本相关信息填写正确,输出内容会显示当前母鸡IP,登录 Cloudflare DNS选项 查看之前设置的 1.1.1.1 已变为母鸡IP

6. 设置定时任务

输入 crontab -e  然后会弹出 vi 编辑界面,按小写字母 i 进入编辑模式,在文件里面添加一行:

*/2 * * * * /root/cf-v4-ddns.sh >/dev/null 2>&1

如果您需要日志文件,上述代码请替换成下面代码



\#如果您需要日志文件,输入下面命令 */2 * * * * /root/cf-v4-ddns.sh >> /var/log/cf-ddns.log 2>&1

至此,教程结束!

Linux下使用SpeedTest测速

SpeedTest是用来测试网络上传/下载速率的一款工具,在Windows上能很方便的测试本地网络的上传/下载速率,而在Linux上,也可以很方便的使用命令行来进行测试。

1.下载脚本

wget -N --no-check-certificate https://raw.github.com/sivel/speedtest-cli/master/speedtest.py

2.添加权限

chmod a+rx speedtest.py

3.开始测速

python speedtest.py

进阶版

  1. 如果你想生成一张图片,并分享给其他人,那么你应该这样:
python speedtest.py --share

在浏览器中打开生成的链接,如图所示

http://www.speedtest.net/result/8006052866.png

  1. 在默认情况下,SpeedTest是选择离测试机最近的一个节点进行测试的,如果你想要自定义测试到某个地区的上传/下载速率,那首先列出目前可用的SpeedTest服务器:
python speedtest.py --list

此时会列出所有的服务器(按照距离远近进行排列,不过我们不建议您使用此命令

我们强烈推荐您一点一点的列出服务器

python speedtest.py --list|more
root@debian:~# python speedtest.py --list|more
Retrieving speedtest.net configuration...
14939) Mimosa Networks (San Jose, CA, United States) [0.45 km]
10384) Speedtest.net (San Jose, CA, United States) [4.19 km]
11899) Janus Networks (San Jose, CA, United States) [4.19 km]
15786) Sprint (San Jose, CA, United States) [4.19 km]
 9383) Sneaker Server (San Jose, CA, United States) [4.19 km]
 9540) DNASOLES (San Jose, CA, United States) [4.19 km]
11599) Mimosa Networks (Santa Clara, CA, United States) [7.10 km]
18007) T-Mobile (Santa Clara, CA, United States) [7.10 km]
12818) Ridge Wireless (Cupertino, CA, United States) [12.57 km]
10455) Cytranet (Fremont, CA, United States) [24.84 km]
 6468) Tekify Broadband Internet Services (Fremont, CA, United States) [24.84 km]

如果我们想测试主机到Mimosa Networks这个节点的速率,那么是这样输入:

python speedtest.py --server 11599

如果您想要生成分享的图片,那就加上share

python speedtest.py --server 11599 --share

参考来源:

『工具』Liunx下使用SpeedTest测速

关于 NatCloud.net 的 NAT VPS使用说明

有些初次接触NAT VPS的朋友可能不太习惯使用NAT以及端口转发,这里以 俄罗斯NAT 为例做个使用说明(其他产品同样无缝适用)

1. 登录到用户中心 依次点 产品服务-NAT 端口映射

当然您也可以打开已经购买的产品,通过 NAT管理 进入管理界面

2. 点击 NAT 端口映射 后,可以看到您已经购买的产品,然后点击您需要映射的NAT VPS

我们看到,刚开通的NAT VPS默认是没有做端口映射的,点击右侧的 添加规则 进行端口映射(最多可以做20个端口映射)

因为都是默认提供 linux 系统,所以SSH端口:22 端口 是必须添加的,以添加22端口为例,点击 添加规则后,可以看到下图

其中内网 端口这里要填写你所需转发到的SSH 的 22 端口,外网那里填写 大于10000,且未被其他用户占用的(如被占用,会提示)

如上图,我想找个好记的45678外网端口,被其他人占用的,所以无法使用,您可以替换为其他未被占用端口,如 35689

我们看到可以该端口未被占用,点击OK后,可以看到 创建中

一般10秒左右,最多1分钟,我们刷新网页,可以看到 已创建

3. 测试 SSH 是否能正常连接

现在您可以通过获取的 公网IP 进行SSH连接管理VPS,唯一需要注意的是,端口那里一定要填写刚才的 外网端口

①PUTTY

②Xshell


至此您已完成 NAT 初步设置

Q1: 如果使用V2或55R怎么办?

1.首先您需要映射V2或55R使用的端口,这里以23890为例(假设我们的服务同时需要TCP和UDP)

分别添加TCP和UDP端口

2.映射完成后如图所示

注意!我们强烈推荐内网外网端口一致!!以防配置出现混淆!!

3.安装服务时选择映射的端口即可!