Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/MHSanaei/3x-ui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormhsanaei <ho3ein.sanaei@gmail.com>2024-10-16 13:06:47 +0300
committermhsanaei <ho3ein.sanaei@gmail.com>2024-10-16 13:08:01 +0300
commitac7901abba4326ae8ee75cdc18bbb84c7bda85d4 (patch)
tree354cbefaec82d6b43571ac01c3e980e8f00137ca
parentdff2496d73e94792b6ecd876a2bdb6ab851faec8 (diff)
Wireguard - kernel Tun
-rw-r--r--web/assets/js/model/outbound.js6
-rw-r--r--web/assets/js/model/xray.js12
-rw-r--r--web/html/xui/form/outbound.html3
-rw-r--r--web/html/xui/form/protocol/wireguard.html3
-rw-r--r--web/html/xui/inbound_info_modal.html4
-rw-r--r--web/html/xui/warp_modal.html3
6 files changed, 28 insertions, 3 deletions
diff --git a/web/assets/js/model/outbound.js b/web/assets/js/model/outbound.js
index a66cc215..71c07713 100644
--- a/web/assets/js/model/outbound.js
+++ b/web/assets/js/model/outbound.js
@@ -1178,7 +1178,8 @@ Outbound.WireguardSettings = class extends CommonClass {
domainStrategy = '',
reserved = '',
peers = [new Outbound.WireguardSettings.Peer()],
- kernelMode = false
+ kernelMode = false,
+ kernelTun = false
) {
super();
this.mtu = mtu;
@@ -1190,6 +1191,7 @@ Outbound.WireguardSettings = class extends CommonClass {
this.reserved = Array.isArray(reserved) ? reserved.join(',') : reserved;
this.peers = peers;
this.kernelMode = kernelMode;
+ this.kernelTun = kernelTun;
}
addPeer() {
@@ -1210,6 +1212,7 @@ Outbound.WireguardSettings = class extends CommonClass {
json.reserved,
json.peers.map(peer => Outbound.WireguardSettings.Peer.fromJson(peer)),
json.kernelMode,
+ json.kernelTun,
);
}
@@ -1223,6 +1226,7 @@ Outbound.WireguardSettings = class extends CommonClass {
reserved: this.reserved ? this.reserved.split(",").map(Number) : undefined,
peers: Outbound.WireguardSettings.Peer.toJsonArray(this.peers),
kernelMode: this.kernelMode,
+ kernelTun: this.kernelTun,
};
}
};
diff --git a/web/assets/js/model/xray.js b/web/assets/js/model/xray.js
index 6d0c1c9d..9b731a7f 100644
--- a/web/assets/js/model/xray.js
+++ b/web/assets/js/model/xray.js
@@ -2644,13 +2644,21 @@ Inbound.HttpSettings.HttpAccount = class extends XrayCommonClass {
};
Inbound.WireguardSettings = class extends XrayCommonClass {
- constructor(protocol, mtu = 1420, secretKey = Wireguard.generateKeypair().privateKey, peers = [new Inbound.WireguardSettings.Peer()], kernelMode = false) {
+ constructor(
+ protocol,
+ mtu = 1420,
+ secretKey = Wireguard.generateKeypair().privateKey,
+ peers = [new Inbound.WireguardSettings.Peer()],
+ kernelMode = false,
+ kernelTun = false,
+ ) {
super(protocol);
this.mtu = mtu;
this.secretKey = secretKey;
this.pubKey = secretKey.length > 0 ? Wireguard.generateKeypair(secretKey).publicKey : '';
this.peers = peers;
this.kernelMode = kernelMode;
+ this.kernelTun = kernelTun;
}
addPeer() {
@@ -2668,6 +2676,7 @@ Inbound.WireguardSettings = class extends XrayCommonClass {
json.secretKey,
json.peers.map(peer => Inbound.WireguardSettings.Peer.fromJson(peer)),
json.kernelMode,
+ json.kernelTun,
);
}
@@ -2677,6 +2686,7 @@ Inbound.WireguardSettings = class extends XrayCommonClass {
secretKey: this.secretKey,
peers: Inbound.WireguardSettings.Peer.toJsonArray(this.peers),
kernelMode: this.kernelMode,
+ kernelTun: this.kernelTun,
};
}
};
diff --git a/web/html/xui/form/outbound.html b/web/html/xui/form/outbound.html
index 00b33c0b..f35391cf 100644
--- a/web/html/xui/form/outbound.html
+++ b/web/html/xui/form/outbound.html
@@ -150,6 +150,9 @@
<a-form-item label='Kernel Mode'>
<a-switch v-model="outbound.settings.kernelMode"></a-switch>
</a-form-item>
+ <a-form-item label='Kernel Tun'>
+ <a-switch v-model="outbound.settings.kernelTun"></a-switch>
+ </a-form-item>
<a-form-item>
<template slot="label">
<a-tooltip>
diff --git a/web/html/xui/form/protocol/wireguard.html b/web/html/xui/form/protocol/wireguard.html
index 738aaf5f..60d547e0 100644
--- a/web/html/xui/form/protocol/wireguard.html
+++ b/web/html/xui/form/protocol/wireguard.html
@@ -21,6 +21,9 @@
<a-form-item label='Kernel Mode'>
<a-switch v-model="inbound.settings.kernelMode"></a-switch>
</a-form-item>
+ <a-form-item label='Kernel Tun'>
+ <a-switch v-model="inbound.settings.kernelTun"></a-switch>
+ </a-form-item>
<a-form-item label="Peers">
<a-button icon="plus" type="primary" size="small" @click="inbound.settings.addPeer()"></a-button>
</a-form-item>
diff --git a/web/html/xui/inbound_info_modal.html b/web/html/xui/inbound_info_modal.html
index 062a9c51..94060e70 100644
--- a/web/html/xui/inbound_info_modal.html
+++ b/web/html/xui/inbound_info_modal.html
@@ -373,6 +373,10 @@
<td>Kernel Mode</td>
<td>[[ inbound.settings.kernelMode ]]</td>
</tr>
+ <tr>
+ <td>Kernel Tun</td>
+ <td>[[ inbound.settings.kernelTun ]]</td>
+ </tr>
<template v-for="(peer, index) in inbound.settings.peers">
<tr>
<td colspan="2">
diff --git a/web/html/xui/warp_modal.html b/web/html/xui/warp_modal.html
index 17f035ca..fb7d54ee 100644
--- a/web/html/xui/warp_modal.html
+++ b/web/html/xui/warp_modal.html
@@ -147,7 +147,8 @@
publicKey: peer.public_key,
endpoint: peer.endpoint.host,
}],
- kernelMode: false
+ kernelMode: false,
+ kernelTun: false,
}
});
}