雨云NAT机使用教程【详】

为什么需要NAT?

有些业务可能并不需要一个独立的IP(是的,在某些情况下,有点浪费钱),比如:

  • 小A想要通过雨云服务器将寝室内网搭建的MC生存(对局域网开放)映射到公网,给远在他乡的小B一起玩
  • 小C想要和朋友一起玩MC,奈何自己电脑CPU太垃圾了,于是到雨云购买了游戏云,恰好他会SRV技术(#后面会讲到),于是选择了NAT机
  • 小D想开网站,但没有零花钱买国内独立IP,于是买了一个NAT机通过端口访问

你可以这么理解NAT:

  1. 每个服务器是独立的,雨云通过PVE开虚拟机给大家用,这就是:

  1. 如果是IP机,相当于雨云给每个虚拟机塞一个虚拟网卡,这个网卡映射到公网IP,所有端口服务直接到外网,比如假设服务器IP为114.51.41.91,内网有一个9810的端口,在没有防火墙的情况下,外部通过114.51.41.91:9810访问服务;
  2. 如果是NAT机,相当于雨云给每个虚拟机同样塞一张网卡,虚拟机内部网络服务(127.0.0.1,localhost)相对独立,只有在雨云控制台中明确这个服务的端口要对外网开放,才能从外网访问这个服务。比如公共IP是114.51.41.91,内网的服务端口为25565,那么9810->25565就代表114.51.41.91:9810指向了服务器内网中的127.0.0.1:25565

嗯,就是这样。NAT就是把内网服务映射到外网。

如何映射NAT

默认的远程连接

一般服务器都需要远程连接吧。Windows下使用RDP,端口为3389。Linux则使用SSH,端口为22。当然,你既然使用的是NAT,肯定不能直接使用公共IP进行远程连接。一般雨云控制台在服务器创建时就会自动帮你把远程连接的NAT映射好,除非你改了SSH监听的端口

以我的重庆服务器为例,这是控制台中的远程连接信息:

在右边可以看到相关的映射:

可以看到,我们的公共IP为183.66.27.22。内网的ssh端口监听在0.0.0.0:220.0.0.0即允许任何IP监听),通过NAT功能,公共IP的53986端口映射到了服务器的127.0.0.1:22。我们可以通过这个信息连接:

ssh root@183.66.27.22 -p53986

和正常SSH一样。

网站、其他端口映射

先说明,通过NAT机开的网站,不支持1Panel/BT面板的HTTP验证生成SSL证书

比如我现在已经在后台跑了一个Nginx服务,通过lsof -i:80可以看到Nginx正在监听内部的80端口:

通过curl http://localhost/你可以看到默认的Nginx欢迎界面:

不过你并不能通过无端口公共IP访问这个界面,你应该添加一条NAT记录,想这样操作:

第一步:打开面板

点击这里的端口设置,会自动跳转:

第二步:新建规则

点击 + 新建规则

  1. 协议,一般HTTP类服务是TCP,MC的Java版本是TCP+UDP,基岩版是UDP
  2. 内网端口,比如Nginx服务就是80
  3. 外网端口,随便填,只要不跟其他人的重复就好(重复了会有提示)
  4. 标签,最好明显一些,免得NAT映射一多看不过来

示例:

第三步:测试

那么就可以通过183.66.27.22:53155访问我们的Nginx了:

1 个赞

还行,不水

1 个赞

可以的