本文转载自nathost

1. NAT VPS的原理

在传统的有独立IP的服务器中,我们访问一台服务器,基本上就是直接访问服务器的域名,然后域名解析成IP地址。

大概就是如图所示:

但在使用NAT的服务器中,我们访问一台服务器,并不能直接去访问这个服务器的IP地址,而且需要由目标服务器的前一级设备(路由器,服务器上的映射插件),告诉我们哪个端口能够到达这台服务器。

大概是如图所示:

也就是说,我们访问NAT服务器,需要由NAT服务器的前一级路由器(或者网络设备),建立一个对应的映射关系。

比如我们要绑定1.2.3.4的10001端口,到NAT内网里面的172.16.1.101服务器上的22端口(SSH),我们需要建立一条这样的映射关系:

外网服务器地址外部端口号内网服务器地址内部端口号协议
1.2.3.410001172.16.1.10122TCP

有了这条映射关系,我们就可以通过 1.2.3.4:10001 来访问我们的服务器上的SSH服务了。

但反过来,如果是内网的服务器主动访问外部网络,则不需要建立映射关系。

2. 实战操作

说了这么多理论的东西,我们是时候开始一波骚操作了(逃)

因为不同家提供的NAT服务器,使用的面板不同,本教程以Nathosts的NAT服务器作为演示,其他家提供的NAT服务器和本教程操作大同小异,只是按钮位置略有不同。

首先,登录到你的服务器后台:

我们有两种方式来开始配置端口映射:

一种是点击后台界面的 产品服务 – NAT VPS端口映射管理

nat-server-tutorial-4.png

或者在产品详情页面点击 请点击此处获取公网IP (NAT端口映射)

nat-server-tutorial-5.png

之后会打开NAT VPS端口映射的界面。

nat-server-tutorial-6.png

在左侧点击你想要配置NAT端口映射的服务器,右面会弹出新的列表:

nat-server-tutorial-7.png

我们点击 添加规则 + ,开始创建第一条映射记录。

nat-server-tutorial-8.png

首先,我们需要(而且是必须)创建一个SSH端口的映射关系(除非你是用VNC维护的硬核操作党,否则这一步是必须的),

按照如下关系填写表格:

内网端口外网端口协议
2210022TCP

填写完成后应该是这个样子的:

nat-server-tutorial-9.png

之后点击提交应用改动。

不过在这里要注意,在一台NAT服务器上,端口全局唯一(仅在一台服务器或者一个独立IP上唯一),如果你点击提交后出现这样的结果:

nat-server-tutorial-10.png

则说明这个外网端口已经被人先下手为强,已经占用了。你需要更换其他的端口做映射。

如果点击提交后,出现这样的提示:

nat-server-tutorial-11.png

则说明端口添加成功,映射关系已经正确建立。

同时主界面会提示端口正在创建:

nat-server-tutorial-12.png

当变成已创建时,说明端口映射关系已经建立完成:

nat-server-tutorial-13.png

之后你就可以使用你喜欢的SSH工具(比如Xshell)访问服务器了。

访问时候输入的地址格式为 【外网地址】:【外网映射IP】

如图例,则需要输入的地址为:1.2.3.4:14832

按照上面的流程,添加自己所有需要的端口即可开始使用服务器。

3. 协议?TCP?UDP?

很多人看到协议的时候都说不会选择协议。在这里我给一个定律式的建议:如果你不确定你添加的端口是为了做什么,或者为什么用这个协议,请直接果断TCP协议!

那什么时候会用到UDP协议呢?

比如你使用的酸酸,需要用来进行网游加速,这时候你应该建立一条同端口的UDP规则的映射(同外网端口不同协议算两条规则,不会发生冲突,请放心添加):

内网端口外网端口协议
888818888TCP
888818888UDP

同时,内网端口和外网端口,可以是一样的!比如这样:

内网端口外网端口协议
3888838888TCP

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注