利用iptables进行流量转发

in Linux工具 with 0 comment

VPS 中继(中转)能用的工具很多,例如 HaProxy、iptables、Socat。

由于日常使用iptables比较多而且简单,所以今天就给大家分享一下如何进行中转

一、准备工作

先准备一台国内中转机(带宽稍微大一点,小水管就没必要拿来中转),可以试试国际阿里云的国内线路,性价比比较高
再准备一台或多台国外的机子

二、开始部署

先在后台将节点信息配置完成,IP填国内的IP。

将后端搭建在国外的服务器,搭建完成后

在国内机运行便捷脚本

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

先选择安装iptables

再执行

#关闭CentOS7的防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service

然后 添加 iptables 端口转发

请输入 iptables 欲转发至的 远程端口 [1-65535] (支持端口段 如 2333-6666, 被转发服务器):10000-11000
 
 欲转发端口 : 10000-11000
 
请输入 iptables 欲转发至的 远程IP(被转发服务器):2.2.2.2
 
 欲转发服务器IP : 2.2.2.2
 
请输入 iptables 本地监听端口 [1-65535] (支持端口段 如 2333-6666)
(默认端口: 10000-11000):
 
 本地监听端口 : 10000-11000
 
请输入 本服务器的 公网IP网卡IP(注意是网卡绑定的IP,而不仅仅是公网IP,回车自动检测):
 
 本服务器IP : 1.1.1.1
 
请输入数字 来选择 iptables 转发类型:
 1. TCP
 2. UDP
 3. TCP+UDP
 
(默认: TCP+UDP):
 
——————————————————————————————
 请检查 iptables 端口转发规则配置是否有误 !
 
 本地监听端口 : 10000-11000
 服务器 IP : 2.2.2.2
 
 欲转发的端口 : 10000-11000
 欲转发 IP : 1.1.1.1
 转发类型 : TCP+UDP

关于国内腾讯云等服务器转发失败解释

国内的很多服务器,例如腾讯云,在VPS网卡上面绑定的都是内网IP,这样的话,如果你用脚本自动检测外网IP,会转发失败,需要在添加转发规则的时候,本服务器IP手动写你的服务器 网卡上面绑定的IP。

ifconfig

输入命令后会看到 网卡信息,我们看第二行的 inet addr:xxx.xxx.xxx.xxx ,这里的 xxx 就是你的网卡绑定的IP。
内网ip

Responses