From 22d9bb9d391bb78456059955da59b6d2fd8503b7 Mon Sep 17 00:00:00 2001
From: aoshiguchen <1052045476@qq.com>
Date: Sun, 2 Apr 2023 23:35:21 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=9F=9F=E5=90=8D=E6=98=A0?=
=?UTF-8?q?=E5=B0=84=E6=94=AF=E6=8C=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
neutrino-proxy-admin/src/api/domain.js | 9 +
neutrino-proxy-admin/src/api/protocal.js | 17 ++
neutrino-proxy-admin/src/lang/zh.js | 6 +-
neutrino-proxy-admin/src/router/index.js | 1 +
.../src/views/proxy/portMapping.vue | 49 ++++-
.../src/views/system/protocal.vue | 169 +++++++++++++++
.../server/base/proxy/ProxyConfig.java | 1 +
.../server/constant/ExceptionConstant.java | 3 +
.../server/constant/NetworkProtocolEnum.java | 28 +++
.../controller/DomainNameController.java | 27 +++
.../controller/PortMappingController.java | 23 +++
.../server/controller/ProtocalController.java | 40 ++++
.../req/proxy/PortMappingCreateReq.java | 8 +
.../req/proxy/PortMappingListReq.java | 4 +
.../req/proxy/PortMappingUpdateReq.java | 8 +
.../res/proxy/PortMappingListRes.java | 12 ++
.../res/system/PortPoolListRes.java | 2 +
.../res/system/ProtocalListRes.java | 26 +++
.../server/dal/PortMappingMapper.java | 12 ++
.../server/dal/entity/PortMappingDO.java | 8 +
.../server/proxy/core/HttpProxy.java | 193 ++++++++++++++++++
.../proxy/core/VisitorChannelHandler.java | 82 ++++----
.../server/proxy/domain/Metrics.java | 22 --
.../server/proxy/domain/ProxyAttachment.java | 29 +++
.../handler/ProxyMessageConnectHandler.java | 22 +-
.../server/service/PortMappingService.java | 52 ++++-
.../server/service/ProtocalService.java | 30 +++
.../neutrinoproxy/server/util/ProxyUtil.java | 75 +++++++
.../resources/mapper/PortMappingMapper.xml | 3 +
.../resources/sql/mysql/init-structure.sql | 2 +
.../resources/sql/mysql/port_mapping.data.sql | 6 +-
.../sql/mysql/update/UPDATE-20230402.SQL | 2 +
.../resources/sql/sqlite/init-structure.sql | 2 +
.../sql/sqlite/port_mapping.data.sql | 6 +-
.../sql/sqlite/update/UPDATE-20230402.SQL | 2 +
35 files changed, 900 insertions(+), 81 deletions(-)
create mode 100644 neutrino-proxy-admin/src/api/domain.js
create mode 100644 neutrino-proxy-admin/src/api/protocal.js
create mode 100644 neutrino-proxy-admin/src/views/system/protocal.vue
create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/constant/NetworkProtocolEnum.java
create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/controller/DomainNameController.java
create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/controller/ProtocalController.java
create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/controller/res/system/ProtocalListRes.java
create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/proxy/core/HttpProxy.java
create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/proxy/domain/ProxyAttachment.java
create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/service/ProtocalService.java
create mode 100644 neutrino-proxy-server/src/main/resources/sql/mysql/update/UPDATE-20230402.SQL
create mode 100644 neutrino-proxy-server/src/main/resources/sql/sqlite/update/UPDATE-20230402.SQL
diff --git a/neutrino-proxy-admin/src/api/domain.js b/neutrino-proxy-admin/src/api/domain.js
new file mode 100644
index 00000000..d3a9f7fd
--- /dev/null
+++ b/neutrino-proxy-admin/src/api/domain.js
@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+export function domainNameBindInfo(query) {
+ return request({
+ url: '/domain-name/bind-info',
+ method: 'get',
+ params: query
+ })
+}
diff --git a/neutrino-proxy-admin/src/api/protocal.js b/neutrino-proxy-admin/src/api/protocal.js
new file mode 100644
index 00000000..9ea90d86
--- /dev/null
+++ b/neutrino-proxy-admin/src/api/protocal.js
@@ -0,0 +1,17 @@
+import request from '@/utils/request'
+
+export function fetchList(query) {
+ return request({
+ url: '/protocal/page',
+ method: 'get',
+ params: query
+ })
+}
+
+export function protocalList(query) {
+ return request({
+ url: '/protocal/list',
+ method: 'get',
+ params: query
+ })
+}
diff --git a/neutrino-proxy-admin/src/lang/zh.js b/neutrino-proxy-admin/src/lang/zh.js
index 76286040..d0694208 100644
--- a/neutrino-proxy-admin/src/lang/zh.js
+++ b/neutrino-proxy-admin/src/lang/zh.js
@@ -49,6 +49,7 @@ export default {
system: '系统管理',
portPool: '端口池管理',
portGroup: '端口分组管理',
+ protocal: '协议管理',
proxy: '代理配置',
license: 'License管理',
portMapping: '端口映射',
@@ -162,7 +163,10 @@ export default {
resetKey: '重置Key',
upFlow: '上行流量',
downFlow: '下行流量',
- totalFlow: '总流量'
+ totalFlow: '总流量',
+ protocalName: '协议',
+ supportStatus: '支持状态',
+ domainName: '域名'
},
button: {
lookOver: '查看'
diff --git a/neutrino-proxy-admin/src/router/index.js b/neutrino-proxy-admin/src/router/index.js
index 8fc01e28..3c246651 100644
--- a/neutrino-proxy-admin/src/router/index.js
+++ b/neutrino-proxy-admin/src/router/index.js
@@ -77,6 +77,7 @@ export const asyncRouterMap = [
{ path: 'user', component: _import('system/user'), name: 'user', meta: { title: 'user' }},
{ path: 'portGroup', component: _import('system/portGroup'), name: 'portGroup', meta: { title: 'portGroup' }},
{ path: 'portPool', component: _import('system/portPool'), name: 'portPool', meta: { title: 'portPool' }},
+ { path: 'protocal', component: _import('system/protocal'), name: 'protocal', meta: { title: 'protocal' }},
{ path: 'jobManager', component: _import('system/jobManager'), name: 'jobManager', meta: { title: 'jobManager' }}
]
},
diff --git a/neutrino-proxy-admin/src/views/proxy/portMapping.vue b/neutrino-proxy-admin/src/views/proxy/portMapping.vue
index 4336c7fd..9b459979 100644
--- a/neutrino-proxy-admin/src/views/proxy/portMapping.vue
+++ b/neutrino-proxy-admin/src/views/proxy/portMapping.vue
@@ -7,6 +7,9 @@
+
+
+
@@ -33,17 +36,27 @@
{{ scope.row.userName }}
-
+
{{ scope.row.licenseName }}
-
+
+
+ {{ scope.row.protocal }}
+
+
+
+
+ {{ scope.row.domain }}
+
+
+
{{ scope.row.serverPort }}
-
+
{{ scope.row.clientIp }}:{{ scope.row.clientPort }}
@@ -113,6 +126,12 @@
style="width: 280px"
/>-->
+
+
+
+
+
+
@@ -125,6 +144,11 @@
+
+
+ .{{domainName}}
+
+