diff --git a/frontend/src/pages/xray/outbounds/OutboundFormModal.tsx b/frontend/src/pages/xray/outbounds/OutboundFormModal.tsx
index ec2cf352..af65ede0 100644
--- a/frontend/src/pages/xray/outbounds/OutboundFormModal.tsx
+++ b/frontend/src/pages/xray/outbounds/OutboundFormModal.tsx
@@ -53,7 +53,6 @@ import {
MODE_OPTIONS,
NETWORK_OPTIONS,
PROTOCOL_OPTIONS,
- SERVER_PROTOCOLS,
UTLS_OPTIONS,
} from './outbound-form-constants';
import {
@@ -390,28 +389,6 @@ export default function OutboundFormModal({
- {/* Shared connect target (address + port) for protocols
- whose form schema carries them flat at settings root.
- Hidden for freedom/blackhole/dns/loopback/wireguard. */}
- {SERVER_PROTOCOLS.has(protocol) && (
- <>
-
-
-
-
-
-
- >
- )}
-
diff --git a/frontend/src/pages/xray/outbounds/outbound-core-fields.tsx b/frontend/src/pages/xray/outbounds/outbound-core-fields.tsx
index c920b9a5..8267e064 100644
--- a/frontend/src/pages/xray/outbounds/outbound-core-fields.tsx
+++ b/frontend/src/pages/xray/outbounds/outbound-core-fields.tsx
@@ -10,12 +10,34 @@ import {
import { SSMethodSchema } from '@/schemas/protocols/shared/shadowsocks';
import { antdRule } from '@/utils/zodForm';
-import { SECURITY_OPTIONS, SS_METHOD_OPTIONS } from './outbound-form-constants';
+import { SECURITY_OPTIONS, SERVER_PROTOCOLS, SS_METHOD_OPTIONS } from './outbound-form-constants';
export function OutboundCoreProtocolFields({ protocol }: { protocol: string }) {
const { t } = useTranslation();
return (
<>
+ {/* Shared connect target (address + port) for protocols
+ whose form schema carries them flat at settings root.
+ Hidden for freedom/blackhole/dns/loopback/wireguard. */}
+ {SERVER_PROTOCOLS.has(protocol) && (
+ <>
+
+
+
+
+
+
+ >
+ )}
+
{(protocol === 'vmess' || protocol === 'vless') && (