我的使用场景:在家访问学校服务器,由于不在一个局域网,所以需要使用内网穿透,我使用的是natapp。需要在有局域网的时候做好以下步骤。

1. 下载客户端

natapp怎么映射内网的mysql给springboot项目连接 natapp教程_linux

(我是在本地下载,然后再上传到服务器。)

2. 将下载好的包上传到服务器,并添加权限

(1)使用scp命令复制文件
命令格式:scp local_file remote_username@remote_ip:remote_folder 我是放在服务器/home目录下

注意:
1 由于这里不能添加端口号,所以只能将其复制到默认的22端口。
2 出现报错:Permission denied, please try again
进入服务器,输入命令:sudo chmod 777 remote_folder (权限不够,修改权限即可。)

(2)给natapp添加执行权限:chmod u+x natapp

3. 注册natapp账号及实名认证(略)

4. 购买隧道

natapp怎么映射内网的mysql给springboot项目连接 natapp教程_服务器_02


这里可以选择免费的,也可以选择付费的。

免费的端口号随机且不固定,付费的端口号自己设置且固定。

natapp怎么映射内网的mysql给springboot项目连接 natapp教程_linux_03


免费隧道一种协议只能建立一个,如果还想建立隧道就需要购买了。

natapp怎么映射内网的mysql给springboot项目连接 natapp教程_上传_04


建好后,在我的隧道中可以查看。

5. Linux后台运行natapp

因为我们要保持natapp始终在线的状态(窗口关闭时,会话并不终止),所以我们使用tmux实现会话与窗口的"解绑",具体用法如下连接:

使用tmux后,进入我们放natapp的目录:cd /home

./natapp -authtoken=xxxxx

这里的xxx是上一张图红色框authtoken

natapp怎么映射内网的mysql给springboot项目连接 natapp教程_服务器_05


这里,红色框部分,冒号前为现ip,冒号后为现端口号。

用现有的ip和端口号代替原来的ip和端口号,就可以实现非局域网远程访问服务器。

注意:这个窗口不能关闭。由于使用了tmux,我们将会话分离就好了,或者直接叉掉。

tips:这里有一个官方教程,有需要可以自行查看噢~

natapp怎么映射内网的mysql给springboot项目连接 natapp教程_服务器_06