diff --git a/README.md b/README.md index f7def0a..7889df0 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,95 @@ -原理分析 内网穿透的实现过程主要分三步 -1、启动服务端,这时服务端监听了两个端口(16001,16002,可根据启动参数修改), +

+ + Maven + + + Maven + + + Apache 2 + + + jdk-11 + + + jdk-17 + +
+ +
+ + Gitee star + -一个用来接收客户端请求(16001端口), +

-一个用来接收访客代理(16002端口) +#### 项目介绍 +wu-lazy-cloud-network 是一款基于(wu-framework-parent)孵化出的项目,内部使用Lazy ORM操作数据库,主要功能是网络穿透,对于没有公网IP的服务进行公网IP映射 +使用环境JDK17 Spring Boot 3.0.2 -2、启动客户端,客户端访问服务端提供的(16001端口)建立连接(server-client通道) -3、访客访问代理接口(16002端口),服务端监听到之后创建访客ID,然后通过(server-client通道)向客户端发送指令,客户端接收指令后连接到真实服务端口(8080,可根据启动参数修改),连接真实服务成功后,客户端会重新向服务端建立一条连接(访客-server通道),服务端把访客和该通道进行绑定 +### 项目结构 -这三步最终形成了(访客-代理-客户端-真实服务)完整的通道。 +| 模块 | 版本 | 描述 | +|---------------------------------------------------------------------------------------------------------------|----------------------|------------------------------| +| [wu-lazy-cloud-heartbeat-common](wu-lazy-cloud-heartbeat-common) | 1.2.2-JDK17-SNAPSHOT | 内网穿透公共模块(声明接口、枚举、常量、适配器、解析器) | +| [wu-lazy-cloud-heartbeat-client](wu-lazy-cloud-heartbeat-client) | 1.2.2-JDK17-SNAPSHOT | 客户端(支持二次开发) | +| [wu-lazy-cloud-heartbeat-server](wu-lazy-cloud-heartbeat-server) | 1.2.2-JDK17-SNAPSHOT | 服务端(支持二次开发) | +| [wu-lazy-cloud-network-ui](wu-lazy-cloud-network-ui) | 1.2.2-JDK17-SNAPSHOT | 服务端页面 | +| [wu-lazy-cloud-heartbeat-client-sample](wu-lazy-cloud-heartbeat-sample/wu-lazy-cloud-heartbeat-client-sample) | 1.2.2-JDK17-SNAPSHOT | 客户端样例 | +| [wu-lazy-cloud-heartbeat-server-sample](wu-lazy-cloud-heartbeat-sample/wu-lazy-cloud-heartbeat-server-sample) | 1.2.2-JDK17-SNAPSHOT | 服务端样例 | -启动服务端 java -jar cc-server.jar 16001 16002 -启动客户端 java -jar cc-client.jar 127.0.0.1 16001 8080 +### 使用技术 + +| 框架 | 版本 | 描述 | +|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------|--------------| +| spring-boot | 3.0.7 | springboot框架 | +| [wu-framework-web](https://gitee.com/wujiawei1207537021/wu-framework-parent/tree/master/wu-framework-web) | 1.2.2-JDK17-SNAPSHOT | web容器 | +| [Lazy -ORM](https://gitee.com/wujiawei1207537021/wu-framework-parent/tree/master/wu-inner-intergration/wu-database-parent) | 1.2.2-JDK17-SNAPSHOT | ORM | +| mysql-connector-j | 8.0.33 | mysql驱动 | +| [wu-authorization-server-platform-starter](https://gitee.com/wujiawei1207537021/wu-framework-parent/tree/master/wu-smart-platform/wu-authorization-server-platform-starter) | 1.2.2-JDK17-SNAPSHOT | 用户授权体系 | + +### 使用环境 + IDEA + Mac、Windows + JAVA >=13 + MAVEN + +### 启动 + docker启动 + + docker run -d -it -p 18080:18080 --name wu-lazy-cloud-heartbeat-server registry.cn-hangzhou.aliyuncs.com/wu-lazy/wu-lazy-cloud-heartbeat-server:1.2.2-JDK17-SNAPSHOT + + http://127.0.0.1:18080/swagger-ui/index.html + + 源码启动 +#### 页面操作 + +启动项目后打开服务端界面 +![img.png](url_info.png) + + +默认账号密码:admin/admin +![img.png](login.png) + +初始化项目 +![img.png](init_menu.png) +添加角色 +![img.png](init_role.png) +为用户授权 +![img.png](authRoe2User.png) +刷新页面 +![img.png](main.png) + +客户端管理 +![img.png](cloud_client.png) + +网络映射管理 +![img.png](mapping.png) +访客端口开发管理 +![img.png](visitor_port.png) + +客户端代理流量管理 +![img.png](flow.png) \ No newline at end of file diff --git a/authRoe2User.png b/authRoe2User.png new file mode 100644 index 0000000..fc2846f Binary files /dev/null and b/authRoe2User.png differ diff --git a/cloud_client.png b/cloud_client.png new file mode 100644 index 0000000..40bb99a Binary files /dev/null and b/cloud_client.png differ diff --git a/flow.png b/flow.png new file mode 100644 index 0000000..33b646f Binary files /dev/null and b/flow.png differ diff --git a/init_menu.png b/init_menu.png new file mode 100644 index 0000000..54ab27d Binary files /dev/null and b/init_menu.png differ diff --git a/init_role.png b/init_role.png new file mode 100644 index 0000000..c80615d Binary files /dev/null and b/init_role.png differ diff --git a/login.png b/login.png new file mode 100644 index 0000000..8377a9f Binary files /dev/null and b/login.png differ diff --git a/main.png b/main.png new file mode 100644 index 0000000..1058ccd Binary files /dev/null and b/main.png differ diff --git a/mapping.png b/mapping.png new file mode 100644 index 0000000..5348e76 Binary files /dev/null and b/mapping.png differ diff --git a/url_info.png b/url_info.png new file mode 100644 index 0000000..9a805eb Binary files /dev/null and b/url_info.png differ diff --git a/visitor_port.png b/visitor_port.png new file mode 100644 index 0000000..637a56e Binary files /dev/null and b/visitor_port.png differ