当前位置:首页 > 域名主机优惠 > 正文内容

NAT VPS 主机端口转发(流量中转)教程

admin5年前 (2021-11-21)域名主机优惠1330

NAT VPS即基于NAT的虚拟服务器,是在虚拟服务器(VPS)的基础上,通过共享IP的方式,为这个IP下的服务器提供外网访问能力。通常仅提供有限数量的端口,因此相较独立ip的VPS价格更为低廉。在使用NAT VPS过程中,有许多人都有流量中转的需求,本文将介绍常见的几种中转方式。

一、直接使用iptables进行端口转发
对于静态ip的NAT VPS,最直接的方式即使用iptables进行转发。

由于Centos7+默认开启了firewall,因此我们需要先关闭firewall并安装iptables。

systemctl stop firewalld systemctl disable firewalld systemctl status firewalld

当显示Active: inactive (dead)时,即表示成功关闭了firewall。

接着安装iptables

yum install -y iptables-services iptables-devel.x86_64 iptables.x86_64 systemctl enable iptables systemctl start iptables systemctl status iptables

当显示Active:active (exited)时,表示iptables成功开启。

使用iptables转发流量

在使用iptables转发流量之前请执行如下命令:

sed -i 's/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g' /etc/sysctl.conf sysctl -p

然后我们清除下所有默认的iptables表:

iptables -F iptables -t nat -F service iptables save

iptables相同端口转发命令:

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]

不同端口:

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]

执行完毕后,必须进行保存:

service iptables save

以下是一个实例(这里我们的应用端口为50020~50029,我们使用520022测试转发另外一个IP的6053端口,我们的主IP为:192.168.5.2,转发服务器IP为:1.1.1.1):

iptables -t nat -A PREROUTING -p tcp --dport 50022 -j DNAT --to-destination 1.1.1.1:6053 iptables -t nat -A PREROUTING -p udp --dport 50022 -j DNAT --to-destination 1.1.1.1:6053 iptables -t nat -A POSTROUTING -p tcp -d 1.1.1.1 --dport 6053 -j SNAT --to-source 192.168.5.2 iptables -t nat -A POSTROUTING -p udp -d 1.1.1.1 --dport 6053 -j SNAT --to-source 192.168.5.2 service iptables save

二、通过iptables一键脚本进行端口转发

同样的,我们需要先关闭firewall

systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld

安装一键脚本:

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,请选择1.安装iptables,后面会自动完成配置

接着使用脚本:

./iptables-pf.sh

选择4.添加 iptables 端口转发 后,会提示你依次输入 欲转发IP、欲转发端口、本地监听端口、本地IP、转发类型确认之后即可完成中转设置。

三、通过Socat一键脚本进行端口转发

下载并运行一键脚本:

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

运行脚本:

./socat.sh

选择3. 新增 SoCat后,会提示你依次输入 本地监听端口、欲转发IP、欲转发端口、转发类型确认之后即可完成中转设置。

四、通过Haproxy一键脚本进行端口转发

安装HaProxy:

Debian/Ubuntu系统:

apt-get -y install haproxy

Centos系统:

yum -y install haproxy

打开 /etc/haproxy/haproxy.cfg

vi /etc/haproxy/haproxy.cfg

按Insert按键将里面的内容替换为:

global defaults log global mode tcp option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000 frontend ss-in bind *:[端口eg 6666]/[端口段eg 10000-30000] default_backend ss-out backend ss-out server server1 [被中转的远程VPS的IP]  maxconn 20480

之后按ESC键,并输入:wq 并回车

五、通过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
bash brook-pf.sh

输入7. 设置 Brook 端口转发并回车,再输入 1. 添加 端口转发,根据提示输入Brook 本地监听端口(即中转NAT端口,不能重复),被转发的 IP(远程服务器ip),被转发的端口(远程服务器端口)。确认之后即完成中转。

六、rinetd工具将数据包转发至指定IP或域名端口

安装rinetd:

wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
tar -xvf rinetd.tar.gz
cd rinetd
sed -i 's/65536/65535/g' rinetd.c
mkdir /usr/man/
make && make install
vi /etc/rinetd.conf

格式命令为:

绑定的地址 绑定的端口 连接的地址 连接的端口 (eg:将所有发往本机9191端口的请求,转发到192.168.0.1的9191端口 就设置为0.0.0.0 9191 192.168.0.1 9191)

或 源地址 源端口 目的地址 目的端口 (eg:将所有发往本机2525端口的请求,转发到www.supervpschoice.xyz的25端口 就设置为 0.0.0.0 2525 www.supervpschoice.xyz 25)

之后按ESC键,并输入:wq 并回车

启动规则:

rinetd -c /etc/rinetd.conf

查看状态:

netstat -antup

停止转发:

pkill rinetd

设置开机自动启动转发规则:

vi /etc/rc.local
rinetd -c /etc/rinetd.conf

iptables -A INPUT -p tcp -m tcp --dport [中转端口] -j ACCEPT   #无法无法联通可能是端口未打开,打开iptables端口

转自:https://www.5752.me/2633.html

扫描二维码推送至手机访问。

版权声明:本文由博赚恋吧资源站发布,如需转载请注明出处。

本文链接:https://432l.com/post/9635.html

标签: NATVPS
分享给朋友:

相关文章

让你比别人快一步:实战域名抢注技巧

域名抢注就是一个域名在被别人注册之前,抢先将此域名以注册人的名义注册下来的行为。好的国际域名基本上已经被欧美等发达国家瓜分完毕。现在要得到一个好的国际域名,要么高价购买。要么抢注。每天都有大量的过期未续费的域名被踢出,这里边不乏许多的好域名。 只要你比别人抢先一步,以自己的名义注册下来,那么它就是你的了。(当然你要记得续费,要不到期后同样会被踢出,很多好域名就是这样被踢出来的哦)那么,如何才能比别...

nobullservers便宜空间买一年只要25美元,送独立IP

  nobullservers便宜空间试用一个月,nobullservers的logo是一头公牛,NO BULL SERVERS也就是说没有公牛粗暴的态度(⊙﹏⊙b汗 难道是母牛的态度?),nobullservers官方上说以前是做在线游戏的,从07年开始做服务器业务,至今已经有2~3年了,机房位于美国的密歇根州的特洛伊,它提供的虚拟主机价格一直比较平易近人,最近在WHT上做广告,虚拟主机第...

免费注册一年1&1的.com域名

2010年5月份,1&1 搞了一个特大的域名优惠活动,其中一个特别吸引人的就是.com域名一年免费。有效期:2010-5-1 ~ 2010-5-31 1and1优惠的域名包括: .com域名:$8.99 $0 .net域名:$8.99 $6.99 .org域名:$8.99 $6.99 .info域名:$8.99 $0.99 .us域名:$8.99 $6.99 以上1a...

RetailMeNot 提供超多線上購物優惠碼(Coupon Codes)

  如果你常在網路購物的話,一定知道許多網站都提供優惠券(Coupon Codes)功能,只要在結帳時輸入某些特定的優惠碼,就能享受折扣或得到其他好處。RetailMeNot是眾多分享優惠券的網站中內容相當豐富的一個,提供超過五萬家美國地區店家優惠券,這些優惠碼都能讓網友評分以判別其正確率,確保你所找到的優惠卷仍然有效。 若你需要租用國外虛擬主機,或是註冊網域名稱的話,可以到這裡來找找...

GoDaddy域名注册6.89美元优惠码(可一次注册多年)

Promotion Code: cjc689DOM Promotion Period: IMMEDIATELY through 6/30/2010. 最大好处是可一次注册多年,也是这个价!截止到6月30日。...

GD域名0.99$优惠码

优惠码: 99INDY 优惠类型: 注册或转入.COM, .US, .MOBI, .BIZ, .NET, .ORG, .CA, .CO.UK , .IN 有效期:  前7500个注册, 没注册完的话到2010/6/6号过期 老规矩, 只能使用信用卡付费....

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。