diff options
| author | mhsanaei <ho3ein.sanaei@gmail.com> | 2024-10-16 13:06:47 +0300 |
|---|---|---|
| committer | mhsanaei <ho3ein.sanaei@gmail.com> | 2024-10-16 13:08:01 +0300 |
| commit | ac7901abba4326ae8ee75cdc18bbb84c7bda85d4 (patch) | |
| tree | 354cbefaec82d6b43571ac01c3e980e8f00137ca | |
| parent | dff2496d73e94792b6ecd876a2bdb6ab851faec8 (diff) | |
Wireguard - kernel Tun
| -rw-r--r-- | web/assets/js/model/outbound.js | 6 | ||||
| -rw-r--r-- | web/assets/js/model/xray.js | 12 | ||||
| -rw-r--r-- | web/html/xui/form/outbound.html | 3 | ||||
| -rw-r--r-- | web/html/xui/form/protocol/wireguard.html | 3 | ||||
| -rw-r--r-- | web/html/xui/inbound_info_modal.html | 4 | ||||
| -rw-r--r-- | web/html/xui/warp_modal.html | 3 |
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, } }); } |
