利用 iptables 实现中继(中转/端口转发)加速SS或SSR

admin

发表文章数:3151

首页 » 网络资源 » 正文

今年的黑5没什么干货,全是虚拟主机的优惠,没有意思。还是练练手吧。

这几天玩了一下VPS的中继、端口转发,感觉很有意思,记录下过程。

前言

玩 vps 的经常要用到端口转发用以实现更快的速度。比如 ovh 机房的网络我这里访问非常慢,用远程桌面会吐血的类型。所以就会用其他的线路作为跳板,比如洛杉矶,香港之类的。再比如如果需要一个日本 ip ,但是本地访问 linode , conoha 的日本都绕路,又慢,这时如果用一个香港的 vps 做中转,就能达到比较稳定快速的效果。

使用 iptables 的好处就是不用额外装东西,上手就可以搞。

新人说明

中继、端口转发的模型:A、B、C

A是你自己,B是中继的VPS,C是需要被中继的VPS(A要通过B来加速对C的访问,所以配置都是在B上面,配置完成后A连接BB将流量转发给CC再转回给BB最后才转回给A。这就是整个过程。)

 

iptables配置

开启防火墙的ipv4转发

echo -e "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p

 

单端口 端口转发

同端口 端口转发

iptables -t nat -A PREROUTING -p tcp --dport [本地端口] -j DNAT --to-destination [目标IP:目标端口]
iptables -t nat -A PREROUTING -p udp --dport [本地端口] -j DNAT --to-destination [目标IP:目标端口]
iptables -t nat -A POSTROUTING -p tcp -d [目标IP] --dport [目标端口] -j SNAT --to-source [本地服务器主网卡绑定IP]
iptables -t nat -A POSTROUTING -p udp -d [目标IP] --dport [目标端口] -j SNAT --to-source [本地服务器主网卡绑定IP]

以下示例,假设你的国外服务器(被中转服务器)是 1.1.1.1 ,你的SS端口是 10000 ,而你这台正在操作的VPS的主网卡绑定IP(中转服务器)是 2.2.2.2 。

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10000 -j DNAT --to-destination 1.1.1.1:10000
iptables -t nat -A PREROUTING -p udp -m udp --dport 10000 -j DNAT --to-destination 1.1.1.1:10000
iptables -t nat -A POSTROUTING -d 1.1.1.1 -p tcp -m tcp --dport 10000 -j SNAT --to-source 2.2.2.2
iptables -t nat -A POSTROUTING -d 1.1.1.1 -p udp -m udp --dport 10000 -j SNAT --to-source 2.2.2.2

这个时候你Shadowsocks客户端填写Shadowsocks信息的时候,账号配置和端口填写都不变,只需要修改IP为中转服务器IP即可 。

不同端口 端口转发

将本地服务器(中转服务器 2.2.2.2 )的 10000 端口转发至目标IP(被中转服务器)为 1.1.1.1 的 30000 端口

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10000 -j DNAT --to-destination 1.1.1.1:30000
iptables -t nat -A PREROUTING -p udp -m udp --dport 10000 -j DNAT --to-destination 1.1.1.1:30000
iptables -t nat -A POSTROUTING -d 1.1.1.1 -p tcp -m tcp --dport 30000 -j SNAT --to-source 2.2.2.2
iptables -t nat -A POSTROUTING -d 1.1.1.1 -p udp -m udp --dport 30000 -j SNAT --to-source 2.2.2.2

这个时候你Shadowsocks客户端填写Shadowsocks信息的时候,端口应该填 10000 而不是 30000 。

多端口 端口转发

同端口 端口转发

将本地服务器(中转服务器 2.2.2.2 )的 10000~30000 端口转发至目标IP(被中转服务器)为 1.1.1.1 的 10000~30000 端口

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10000:30000 -j DNAT --to-destination 1.1.1.1:10000-30000
iptables -t nat -A PREROUTING -p udp -m udp --dport 10000:30000 -j DNAT --to-destination 1.1.1.1:10000-30000
iptables -t nat -A POSTROUTING -d 1.1.1.1 -p tcp -m tcp --dport 10000:30000 -j SNAT --to-source 2.2.2.2
iptables -t nat -A POSTROUTING -d 1.1.1.1 -p udp -m udp --dport 10000:30000 -j SNAT --to-source 2.2.2.2

这个时候你Shadowsocks客户端填写Shadowsocks信息的时候,账号配置和端口填写都不变,只需要修改IP为中转服务器IP即可 。

不同端口 端口转发

将本地服务器(中转服务器 2.2.2.2 )的 10000~20000 端口转发至目标IP(被中转服务器)为 1.1.1.1 的 30000~40000 端口

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10000:20000 -j DNAT --to-destination 1.1.1.1:30000-40000
iptables -t nat -A PREROUTING -p udp -m udp --dport 10000:20000 -j DNAT --to-destination 1.1.1.1:30000-40000
iptables -t nat -A POSTROUTING -d 1.1.1.1 -p tcp -m tcp --dport 30000:40000 -j SNAT --to-source 2.2.2.2
iptables -t nat -A POSTROUTING -d 1.1.1.1 -p udp -m udp --dport 30000:40000 -j SNAT --to-source 2.2.2.2

这个时候你Shadowsocks客户端填写Shadowsocks信息的时候,端口应该填 10000~2000 而不是 30000~40000 。

保存iptables配置

CentOS 系统:

service iptables save

Debian/Ubuntu 系统:

iptables-save > /etc/iptables.up.rules

查看NAT规则

iptables -t nat -vnL POSTROUTING
iptables -t nat -vnL PREROUTING

删除NAT规则

通过上面的查看规则命令,查看规则后,确定你要删除的规则的顺序,下面的命令是删除 第一个 规则。

iptables -t nat -D POSTROUTING 1iptables -t nat -D PREROUTING 1

配置iptables开机加载

CentOS 系统:

service iptables save
chkconfig --level 2345 iptables on

Debian/Ubuntu 系统:

iptables-save > /etc/iptables.up.rules
echo -e '#!/bin/bashn/sbin/iptables-restore < /etc/iptables.up.rules' > /etc/network/if-pre-up.d/iptables
chmod +x /etc/network/if-pre-up.d/iptables

 

参考:

逗比根据地 » Shadowsocks利用 iptables 实现中继(中转/端口转发)加速

端口转发教程(一):使用iptables进行端口转发

未经允许不得转载:作者:admin, 转载或复制请以 超链接形式 并注明出处 夜河资源网
原文地址:《利用 iptables 实现中继(中转/端口转发)加速SS或SSR》 发布于2019-08-19

分享到:
赞(0) 打赏

评论 抢沙发

2 + 2 =


撰写不易~如果您觉得文章对您有帮助的话可以打赏我哦~谢谢亲亲~

支付宝扫一扫打赏

微信扫一扫打赏

外服网游加速器破解版
包含腾讯网游加速器、海豚网游加速器等八款知名加速器,可加速外服游戏,永久包售后包更新,不定时添加新款破解版加速器!
切换注册

登录

忘记密码 ?

切换登录

注册