mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2025-04-19 21:42:24 +00:00
Wireguard - kernel Tun
This commit is contained in:
parent
dff2496d73
commit
ac7901abba
6 changed files with 28 additions and 3 deletions
|
@ -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,
|
||||
};
|
||||
}
|
||||
};
|
||||
|
|
|
@ -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,
|
||||
};
|
||||
}
|
||||
};
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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">
|
||||
|
|
|
@ -147,7 +147,8 @@
|
|||
publicKey: peer.public_key,
|
||||
endpoint: peer.endpoint.host,
|
||||
}],
|
||||
kernelMode: false
|
||||
kernelMode: false,
|
||||
kernelTun: false,
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue