From 5f318f3b168fb2153917d24fb8e7e9180465769a Mon Sep 17 00:00:00 2001 From: githacs2022 <100038411+githacs2022@users.noreply.github.com> Date: Wed, 20 May 2026 23:02:46 +0300 Subject: [PATCH] Add SockOpt.Mark and SockOpt.Interface parameters for Outbound stream (#4480) --- frontend/src/models/outbound.js | 14 ++++++++++++-- frontend/src/pages/xray/OutboundFormModal.vue | 6 ++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/frontend/src/models/outbound.js b/frontend/src/models/outbound.js index fc3dfe39..c696bc07 100644 --- a/frontend/src/models/outbound.js +++ b/frontend/src/models/outbound.js @@ -748,6 +748,9 @@ export class SockoptStreamSettings extends CommonClass { penetrate = false, addressPortStrategy = Address_Port_Strategy.NONE, trustedXForwardedFor = [], + mark = 0, + interfaceName = "", + ) { super(); this.dialerProxy = dialerProxy; @@ -757,6 +760,9 @@ export class SockoptStreamSettings extends CommonClass { this.penetrate = penetrate; this.addressPortStrategy = addressPortStrategy; this.trustedXForwardedFor = trustedXForwardedFor; + this.mark = mark; + this.interfaceName = interfaceName; + } static fromJson(json = {}) { @@ -768,7 +774,9 @@ export class SockoptStreamSettings extends CommonClass { json.tcpMptcp, json.penetrate, json.addressPortStrategy, - json.trustedXForwardedFor || [] + json.trustedXForwardedFor || [], + json.mark ?? 0, + json.interface ?? "", ); } @@ -779,7 +787,9 @@ export class SockoptStreamSettings extends CommonClass { tcpKeepAliveInterval: this.tcpKeepAliveInterval, tcpMptcp: this.tcpMptcp, penetrate: this.penetrate, - addressPortStrategy: this.addressPortStrategy + addressPortStrategy: this.addressPortStrategy, + mark: this.mark, + interface: this.interfaceName, }; if (this.trustedXForwardedFor && this.trustedXForwardedFor.length > 0) { result.trustedXForwardedFor = this.trustedXForwardedFor; diff --git a/frontend/src/pages/xray/OutboundFormModal.vue b/frontend/src/pages/xray/OutboundFormModal.vue index b8c72aa3..30990b4c 100644 --- a/frontend/src/pages/xray/OutboundFormModal.vue +++ b/frontend/src/pages/xray/OutboundFormModal.vue @@ -988,6 +988,12 @@ function regenerateWgKeys() { + + + + + +