mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-06-06 21:24:10 +00:00
WG inbound set DNS
This commit is contained in:
parent
0b5c239f98
commit
48ad787f45
2 changed files with 28 additions and 5 deletions
|
|
@ -2179,10 +2179,14 @@ class Inbound extends XrayCommonClass {
|
|||
}
|
||||
|
||||
getWireguardTxt(address, port, remark, peerId) {
|
||||
<<<<<<< HEAD
|
||||
const DNS = this.settings.DNS || '1.1.1.1, 1.0.0.1';
|
||||
=======
|
||||
>>>>>>> 0b5c239f98fd112df10ed4846377563a391ebf60
|
||||
let txt = `[Interface]\n`
|
||||
txt += `PrivateKey = ${this.settings.peers[peerId].privateKey}\n`
|
||||
txt += `Address = ${this.settings.peers[peerId].allowedIPs[0]}\n`
|
||||
txt += `DNS = 1.1.1.1, 1.0.0.1\n`
|
||||
txt += `DNS = ${DNS}\n`
|
||||
if (this.settings.mtu) {
|
||||
txt += `MTU = ${this.settings.mtu}\n`
|
||||
}
|
||||
|
|
@ -3035,7 +3039,8 @@ Inbound.WireguardSettings = class extends XrayCommonClass {
|
|||
mtu = 1420,
|
||||
secretKey = Wireguard.generateKeypair().privateKey,
|
||||
peers = [new Inbound.WireguardSettings.Peer()],
|
||||
noKernelTun = false
|
||||
noKernelTun = false,
|
||||
DNS = '1.1.1.1, 1.0.0.1'
|
||||
) {
|
||||
super(protocol);
|
||||
this.mtu = mtu;
|
||||
|
|
@ -3043,10 +3048,15 @@ Inbound.WireguardSettings = class extends XrayCommonClass {
|
|||
this.pubKey = secretKey.length > 0 ? Wireguard.generateKeypair(secretKey).publicKey : '';
|
||||
this.peers = peers;
|
||||
this.noKernelTun = noKernelTun;
|
||||
this.DNS = DNS;
|
||||
|
||||
this.peers.forEach(peer => {
|
||||
peer.DNS = this.DNS;
|
||||
});
|
||||
}
|
||||
|
||||
addPeer() {
|
||||
this.peers.push(new Inbound.WireguardSettings.Peer(null, null, '', ['10.0.0.' + (this.peers.length + 2)]));
|
||||
this.peers.push(new Inbound.WireguardSettings.Peer(null, null, '', ['10.0.0.' + (this.peers.length + 2)], 0, this.DNS));
|
||||
}
|
||||
|
||||
delPeer(index) {
|
||||
|
|
@ -3060,6 +3070,7 @@ Inbound.WireguardSettings = class extends XrayCommonClass {
|
|||
json.secretKey,
|
||||
json.peers.map(peer => Inbound.WireguardSettings.Peer.fromJson(peer)),
|
||||
json.noKernelTun,
|
||||
json.DNS,
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -3069,12 +3080,13 @@ Inbound.WireguardSettings = class extends XrayCommonClass {
|
|||
secretKey: this.secretKey,
|
||||
peers: Inbound.WireguardSettings.Peer.toJsonArray(this.peers),
|
||||
noKernelTun: this.noKernelTun,
|
||||
DNS: this.DNS,
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
Inbound.WireguardSettings.Peer = class extends XrayCommonClass {
|
||||
constructor(privateKey, publicKey, psk = '', allowedIPs = ['10.0.0.2/32'], keepAlive = 0) {
|
||||
constructor(privateKey, publicKey, psk = '', allowedIPs = ['10.0.0.2/32'], keepAlive = 0, DNS = '1.1.1.1, 1.0.0.1') {
|
||||
super();
|
||||
this.privateKey = privateKey
|
||||
this.publicKey = publicKey;
|
||||
|
|
@ -3087,6 +3099,7 @@ Inbound.WireguardSettings.Peer = class extends XrayCommonClass {
|
|||
})
|
||||
this.allowedIPs = allowedIPs;
|
||||
this.keepAlive = keepAlive;
|
||||
this.DNS = DNS;
|
||||
}
|
||||
|
||||
static fromJson(json = {}) {
|
||||
|
|
@ -3095,7 +3108,8 @@ Inbound.WireguardSettings.Peer = class extends XrayCommonClass {
|
|||
json.publicKey,
|
||||
json.preSharedKey,
|
||||
json.allowedIPs,
|
||||
json.keepAlive
|
||||
json.keepAlive,
|
||||
json.DNS
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -3109,6 +3123,7 @@ Inbound.WireguardSettings.Peer = class extends XrayCommonClass {
|
|||
preSharedKey: this.psk.length > 0 ? this.psk : undefined,
|
||||
allowedIPs: this.allowedIPs,
|
||||
keepAlive: this.keepAlive ?? undefined,
|
||||
DNS: this.DNS,
|
||||
};
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -19,6 +19,10 @@
|
|||
<a-form-item label='MTU'>
|
||||
<a-input-number v-model.number="inbound.settings.mtu"></a-input-number>
|
||||
</a-form-item>
|
||||
<a-form-item label='DNS'>
|
||||
<a-input v-model.trim="inbound.settings.DNS" placeholder="1.1.1.1, 1.0.0.1">
|
||||
</a-input>
|
||||
</a-form-item>
|
||||
<a-form-item label='No Kernel Tun'>
|
||||
<a-switch v-model="inbound.settings.noKernelTun"></a-switch>
|
||||
</a-form-item>
|
||||
|
|
@ -74,6 +78,10 @@
|
|||
</a-input>
|
||||
</template>
|
||||
</a-form-item>
|
||||
<a-form-item label='Peer DNS'>
|
||||
<a-input v-model.trim="peer.DNS">
|
||||
</a-input>
|
||||
</a-form-item>
|
||||
<a-form-item label='Keep Alive'>
|
||||
<a-input-number v-model.number="peer.keepAlive" :min="0"></a-input-number>
|
||||
</a-form-item>
|
||||
|
|
|
|||
Loading…
Reference in a new issue