一行代码实现内网穿透及映射,可以开启映射多个服
Posted 为何一再沦落
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一行代码实现内网穿透及映射,可以开启映射多个服相关的知识,希望对你有一定的参考价值。
一行代码实现内网穿透及映射,可以开启映射多个服务和端口,内网映射完成局域网的服务和地址映射到公网。
内网穿透及映射
把内网主机映射成为公网主机,满足内外网穿透,在不同的业务场景中,需要把内网的主机映射成为公网主机来对外提供服务,在公网主机有限的情况,基于netty根据端口号做一个数据映射服务,可以穿透网站、数据库等各种应用,满足日常的使用。
新建项目
任意新建一个java项目,spring 、spring boot、或者其他的 maven项目都可以。
使用方法
1、在 WEB-INF 目录下建立 lib 目录,并把jar包复制到 lib 目录,或者项目的其它目录都可以;
jar包地址
点击下载
2、在maven配置文件,即 pom.xml 中,添加以下依赖:
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
<version>4.1.33.Final</version>
</dependency>
<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20180813</version>
</dependency>
<dependency>
<groupId>natx</groupId>
<artifactId>natx</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>$project.basedir/src/main/webapp/WEB-INF/lib/natx.jar</systemPath>
</dependency>
服务端开启服务
public class TestNat
public static void main(String[] args)
NatxServer.startNat(9090,"123456");
服务端停止服务
NatxServer.endNat();
发布完成
把新建的java项目打包放到服务器运行即可,或者其他方式完成暴露服务都可以。
其它方法
数据同步中还有其他方法,根据实际业务需要进行使用!
其它客户端的使用
https://github.com/YouAreOnlyOne/NATnetty
以上是关于一行代码实现内网穿透及映射,可以开启映射多个服的主要内容,如果未能解决你的问题,请参考以下文章