如何使用natapp来实现内网穿透及案例
1. 业务场景
- 当我们的项目是部署在本地的时候,如何让其他用户(不在同一个局域网之下)来进行调用呢?这时我们就可以使用内网穿透将自己的IP通过映射成相应的地址,然后再通过映射后的地址来进行访问本地的项目。
2. 什么是内网穿透?
- 内网穿透:就是将自己的内网IP暴露到公网环境中,也可以说是将自己的电脑放在公网之中。
3. 如何使用内网穿透?
-
3.1 下载natapp应用程序(选择自己的版本Mac、Windows)
-
3.2 到https://natapp.cn/进行注册登录,得到自己的
authtoken
-
3.3 可以到https://natapp.cn/article/natapp_newbie去查看图文教程
-
注意事项
在用Mac运行时可能会遇到无权限问题。 -
3.4.把之前的应用程序下载解压至任意目录下,得到natapp如何运行natapp。
- window下,直接双击
natapp.exe
即可. - 在Linux/Mac 下 需要先给执行权限
chmod a+x natapp
- 然后再运行即可
./natapp
- window下,直接双击
4. 实际案例
-
这儿先提供一个springboot-demo.jar(也就是SpringBoot打的jar包),能够提供本地服务。
-
启动服务:运行jar包,使用命令:
java -jar springboot-demo.jar
或者写一个bat文件,里面包含java -jar springboot-demo.jar
命令,这样就可以直接双击bat文件启动应用。 -
示例:这儿创建的是
springboot-server.bat
文件
双击运行即可,如下: -
主要用到如下截图中的接口地址进行测试,默认端口8080。
-
本地服务地址:
http://localhost:8080/hello
运行结果如下:
在3.3步骤操作完成之后,应该会得到一个authtoken
如下:
接着,把得到的authtoken
值配置到config.ini
文件中去,如下:
切记:config.ini
与natapp.exe
要在同级目录下
双击natapp运行,启动之后如下:
这里的http://j8rjma.natappfree.cc
地址就相当于http://localhost:8080
,http://j8rjma.natappfree.cc
这个地址被映射到了http://localhost:8080
上。此时,只要有外网的地方访问http://j8rjma.natappfree.cc/hello
就能访问到本机服务。
测试结果: