diff --git a/frontend/src/pages/inbounds/form/InboundFormModal.tsx b/frontend/src/pages/inbounds/form/InboundFormModal.tsx
index 2389e1385..ef11d3ae5 100644
--- a/frontend/src/pages/inbounds/form/InboundFormModal.tsx
+++ b/frontend/src/pages/inbounds/form/InboundFormModal.tsx
@@ -2,6 +2,7 @@ import { useEffect, useRef, useState } from 'react';
import { useTranslation } from 'react-i18next';
import dayjs from 'dayjs';
import {
+ Alert,
Form,
Input,
InputNumber,
@@ -680,6 +681,15 @@ export default function InboundFormModal({
{protocol === Protocols.VLESS && }
{isFallbackHost && fallbacksCard}
+ {(protocol === Protocols.VLESS || protocol === Protocols.TROJAN)
+ && network === 'tcp' && !isFallbackHost && (
+
+ )}
>
);
diff --git a/internal/web/translation/ar-EG.json b/internal/web/translation/ar-EG.json
index 1f39393fd..187f2b420 100644
--- a/internal/web/translation/ar-EG.json
+++ b/internal/web/translation/ar-EG.json
@@ -282,7 +282,8 @@
"quickAdded": "تمت إضافة {n} fallback",
"quickAddedNone": "لا توجد inbounds جديدة مؤهلة للإضافة",
"routesWhen": "يوجَّه عندما",
- "defaultCatchAll": "افتراضي — يلتقط أي شيء آخر"
+ "defaultCatchAll": "افتراضي — يلتقط أي شيء آخر",
+ "needsTls": "تصبح الـ Fallbacks متاحة بعد اختيار TLS أو Reality في تبويب الأمان (فقط VLESS/Trojan عبر RAW)."
},
"protocol": "بروتوكول",
"port": "المنفذ",
diff --git a/internal/web/translation/en-US.json b/internal/web/translation/en-US.json
index bd5ed41dd..63da417e9 100644
--- a/internal/web/translation/en-US.json
+++ b/internal/web/translation/en-US.json
@@ -282,7 +282,8 @@
"quickAdded": "Added {n} fallback(s)",
"quickAddedNone": "No new eligible inbounds to add",
"routesWhen": "Routes when",
- "defaultCatchAll": "Default — catches anything else"
+ "defaultCatchAll": "Default — catches anything else",
+ "needsTls": "Fallbacks become available once Security is set to TLS or Reality on the Security tab (VLESS/Trojan over RAW only)."
},
"protocol": "Protocol",
"port": "Port",
diff --git a/internal/web/translation/es-ES.json b/internal/web/translation/es-ES.json
index 6ba89d6e0..c44fb157a 100644
--- a/internal/web/translation/es-ES.json
+++ b/internal/web/translation/es-ES.json
@@ -282,7 +282,8 @@
"quickAdded": "Se añadieron {n} fallback(s)",
"quickAddedNone": "No hay nuevos inbounds elegibles",
"routesWhen": "Enruta cuando",
- "defaultCatchAll": "Por defecto — captura cualquier otra cosa"
+ "defaultCatchAll": "Por defecto — captura cualquier otra cosa",
+ "needsTls": "Los fallbacks estarán disponibles al seleccionar TLS o Reality en la pestaña de Seguridad (solo VLESS/Trojan sobre RAW)."
},
"protocol": "Protocolo",
"port": "Puerto",
diff --git a/internal/web/translation/fa-IR.json b/internal/web/translation/fa-IR.json
index bdae05085..ef795f9ee 100644
--- a/internal/web/translation/fa-IR.json
+++ b/internal/web/translation/fa-IR.json
@@ -282,7 +282,8 @@
"quickAdded": "{n} فالبک افزوده شد",
"quickAddedNone": "اینباند جدیدی برای افزودن وجود ندارد",
"routesWhen": "هدایت میشود وقتی",
- "defaultCatchAll": "پیشفرض — همهی موارد دیگر را میگیرد"
+ "defaultCatchAll": "پیشفرض — همهی موارد دیگر را میگیرد",
+ "needsTls": "فالبکها پس از انتخاب TLS یا Reality در برگهی امنیت در دسترس میشوند (فقط VLESS/Trojan روی RAW)."
},
"protocol": "پروتکل",
"port": "پورت",
diff --git a/internal/web/translation/id-ID.json b/internal/web/translation/id-ID.json
index 07242ebea..61ec15945 100644
--- a/internal/web/translation/id-ID.json
+++ b/internal/web/translation/id-ID.json
@@ -282,7 +282,8 @@
"quickAdded": "Menambahkan {n} fallback",
"quickAddedNone": "Tidak ada inbound baru yang memenuhi syarat",
"routesWhen": "Diarahkan ketika",
- "defaultCatchAll": "Default — menangkap apa pun lainnya"
+ "defaultCatchAll": "Default — menangkap apa pun lainnya",
+ "needsTls": "Fallback tersedia setelah memilih TLS atau Reality di tab Keamanan (hanya VLESS/Trojan melalui RAW)."
},
"protocol": "Protokol",
"port": "Port",
diff --git a/internal/web/translation/ja-JP.json b/internal/web/translation/ja-JP.json
index 74511ac1c..7dfd80757 100644
--- a/internal/web/translation/ja-JP.json
+++ b/internal/web/translation/ja-JP.json
@@ -282,7 +282,8 @@
"quickAdded": "{n} 件のフォールバックを追加しました",
"quickAddedNone": "追加可能な新規インバウンドはありません",
"routesWhen": "次の条件でルーティング",
- "defaultCatchAll": "デフォルト — その他すべてを捕捉"
+ "defaultCatchAll": "デフォルト — その他すべてを捕捉",
+ "needsTls": "フォールバックは、セキュリティタブで TLS または Reality を選択すると設定できます(RAW 上の VLESS/Trojan のみ)。"
},
"protocol": "プロトコル",
"port": "ポート",
diff --git a/internal/web/translation/pt-BR.json b/internal/web/translation/pt-BR.json
index 2547dee73..3511feed1 100644
--- a/internal/web/translation/pt-BR.json
+++ b/internal/web/translation/pt-BR.json
@@ -282,7 +282,8 @@
"quickAdded": "{n} fallback(s) adicionado(s)",
"quickAddedNone": "Nenhum inbound novo elegível para adicionar",
"routesWhen": "Roteia quando",
- "defaultCatchAll": "Padrão — captura qualquer outra coisa"
+ "defaultCatchAll": "Padrão — captura qualquer outra coisa",
+ "needsTls": "Os fallbacks ficam disponíveis após selecionar TLS ou Reality na aba Segurança (apenas VLESS/Trojan sobre RAW)."
},
"protocol": "Protocolo",
"port": "Porta",
diff --git a/internal/web/translation/ru-RU.json b/internal/web/translation/ru-RU.json
index a422cd9fd..670dae7e3 100644
--- a/internal/web/translation/ru-RU.json
+++ b/internal/web/translation/ru-RU.json
@@ -282,7 +282,8 @@
"quickAdded": "Добавлено {n} фолбэк(ов)",
"quickAddedNone": "Нет новых подходящих инбаундов",
"routesWhen": "Маршрутизирует, когда",
- "defaultCatchAll": "По умолчанию — ловит всё остальное"
+ "defaultCatchAll": "По умолчанию — ловит всё остальное",
+ "needsTls": "Fallbacks станут доступны после выбора TLS или Reality на вкладке «Безопасность» (только VLESS/Trojan поверх RAW)."
},
"protocol": "Протокол",
"port": "Порт",
diff --git a/internal/web/translation/tr-TR.json b/internal/web/translation/tr-TR.json
index 9c77a475d..a82050af2 100644
--- a/internal/web/translation/tr-TR.json
+++ b/internal/web/translation/tr-TR.json
@@ -282,7 +282,8 @@
"quickAdded": "{n} fallback eklendi",
"quickAddedNone": "Eklenecek yeni uygun gelen bağlantı yok",
"routesWhen": "Şu Durumda Yönlendirir",
- "defaultCatchAll": "Varsayılan — başka her şeyi yakalar"
+ "defaultCatchAll": "Varsayılan — başka her şeyi yakalar",
+ "needsTls": "Geri düşüşler (fallback), Güvenlik sekmesinde TLS veya Reality seçildiğinde kullanılabilir olur (yalnızca RAW üzerinde VLESS/Trojan)."
},
"protocol": "Protokol",
"port": "Port",
diff --git a/internal/web/translation/uk-UA.json b/internal/web/translation/uk-UA.json
index 5accfc9d6..725923ae4 100644
--- a/internal/web/translation/uk-UA.json
+++ b/internal/web/translation/uk-UA.json
@@ -282,7 +282,8 @@
"quickAdded": "Додано {n} фолбек(ів)",
"quickAddedNone": "Немає нових придатних інбаундів",
"routesWhen": "Маршрутизує, коли",
- "defaultCatchAll": "За замовчуванням — ловить усе інше"
+ "defaultCatchAll": "За замовчуванням — ловить усе інше",
+ "needsTls": "Fallbacks стануть доступні після вибору TLS або Reality на вкладці «Безпека» (лише VLESS/Trojan поверх RAW)."
},
"protocol": "Протокол",
"port": "Порт",
diff --git a/internal/web/translation/vi-VN.json b/internal/web/translation/vi-VN.json
index fc8667475..fabf5b610 100644
--- a/internal/web/translation/vi-VN.json
+++ b/internal/web/translation/vi-VN.json
@@ -282,7 +282,8 @@
"quickAdded": "Đã thêm {n} fallback",
"quickAddedNone": "Không có inbound mới nào đủ điều kiện",
"routesWhen": "Định tuyến khi",
- "defaultCatchAll": "Mặc định — bắt mọi thứ khác"
+ "defaultCatchAll": "Mặc định — bắt mọi thứ khác",
+ "needsTls": "Fallback khả dụng sau khi chọn TLS hoặc Reality trong thẻ Bảo mật (chỉ VLESS/Trojan trên RAW)."
},
"protocol": "Giao thức",
"port": "Cổng",
diff --git a/internal/web/translation/zh-CN.json b/internal/web/translation/zh-CN.json
index baaa24542..8e5a9cace 100644
--- a/internal/web/translation/zh-CN.json
+++ b/internal/web/translation/zh-CN.json
@@ -282,7 +282,8 @@
"quickAdded": "已添加 {n} 条回落",
"quickAddedNone": "没有可添加的新入站",
"routesWhen": "当满足条件时路由",
- "defaultCatchAll": "默认 — 兜底匹配其他所有"
+ "defaultCatchAll": "默认 — 兜底匹配其他所有",
+ "needsTls": "在“安全”标签页选择 TLS 或 Reality 后即可配置回落(仅限 RAW 上的 VLESS/Trojan)。"
},
"protocol": "协议",
"port": "端口",
diff --git a/internal/web/translation/zh-TW.json b/internal/web/translation/zh-TW.json
index 56ffbcbc9..79afa33ee 100644
--- a/internal/web/translation/zh-TW.json
+++ b/internal/web/translation/zh-TW.json
@@ -282,7 +282,8 @@
"quickAdded": "已新增 {n} 個回落",
"quickAddedNone": "沒有可新增的新入站",
"routesWhen": "當條件成立時路由",
- "defaultCatchAll": "預設 — 兜底匹配其餘"
+ "defaultCatchAll": "預設 — 兜底匹配其餘",
+ "needsTls": "在「安全」分頁選擇 TLS 或 Reality 後即可設定回落(僅限 RAW 上的 VLESS/Trojan)。"
},
"protocol": "協議",
"port": "連接埠",