香港vps使用iptables实现中转加速、端口转发iptables-pf.sh
2023-01-31 14:53 浏览: 次香港vps使用iptables实现端口转发(中转加速)iptables-pf.sh
1. 适用场景
经常会遇到本地访问远端服务时速度很慢。比如:ssh 或者 remotedesktop 国外的服务器、使用SS***时速度慢延迟高 等等
这时可以用一台机器做跳板,来转发你的数据
前提是这台机器 到你本地网络 和 到达远端服务器网络 状态良好。
举例:你在北京远程桌面美国的一台服务器延迟高经常掉线,而香港的vps到北京和美国的网络都很快,此时你就可以选择香港的vps来做中转。
iptables 可以简单快速的实现这一功能。相关阅读:利用iptables端口转发脚本,实现VPS中转网络加速的教程
2. 开启ipv4路由转发
Linux的防火墙功能是通过netfilter实现的,iptables和firewalld则是netfileter的管理工具
这里使用iptables来实现中转功能
首先要启用 linux 的 ipv4 路由转发功能
# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf# sysctl -p
3. 安装并启用iptables
# yum install -y iptables iptables-services# systemctl enable iptables# systemctl restart iptables
4. 编写iptables规则
假设:HK-vps IP 1.1.1.1,US-vps IP 2.2.2.2,服务端口 TCP-3389
# iptables -t nat -A PREROUTING -p tcp --dport 3389 -j DNAT --to-destination 2.2.2.2:3389# iptables -t nat -A POSTROUTING -p tcp -d 2.2.2.2 --dport 3389 -j SNAT --to-source 1.1.1.1
但实际上大多数vps只会配置一个内网地址,然后再和你的公网地址一对一映射
比如 HK-vps 上 ifconfig 得到 IP 172.16.10.10
所以实际你应该这样写
# iptables -t nat -A PREROUTING -p tcp --dport 3389 -j DNAT --to-destination 2.2.2.2:3389# iptables -t nat -A POSTROUTING -p tcp -d 2.2.2.2 --dport 3389 -j SNAT --to-source IP 172.16.10.10
然后当你需要连接 US-vps 的 tcp-3389时
# telnet 2.2.2.2 3389
当然你也可以不必让中转端口和实际目的端口号一样
比如当你 telnet 1.1.1.1 666 实际连接的是 2.2.2.2 3389
# iptables -t nat -A PREROUTING -p tcp --dport 666 -j DNAT --to-destination 2.2.2.2:3389# iptables -t nat -A POSTROUTING -p tcp -d 2.2.2.2 --dport 3389 -j SNAT --to-source IP 172.16.10.10
iptables规则写完后,若验证失败,检查iptables是否启动,或者查看vps安全策略是否放行匹配流量。
5. 保存iptables配置
【免责声明】:部分内容、图片来源于互联网,如有侵权请联系删除,QQ:228866015