diff --git a/README.md b/README.md index 14fc8c5..dd166cf 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Один компактный VPN-клиент в двух режимах: -- `gateway` — отдельная Linux-машина принимает трафик устройств как системный Gateway или Local HTTP/SOCKS5 Proxy; +- `gateway` — отдельная Linux-машина принимает трафик устройств как системный Gateway или Gateway HTTP/SOCKS5 Proxy; - `client` — локальный proxy-клиент для macOS. В обоих режимах пользователь добавляет подписку, выбирает сервер и включает VPN на одном экране. @@ -19,9 +19,9 @@ docker compose -f docker-compose.gateway.yml up -d --build После подключения экран показывает: - `Gateway` — адрес, который можно назначить устройству как основной шлюз; -- `Local Proxy` — один адрес на порту `8080`, доступный как `HTTP` и `SOCKS5`. +- `Gateway Proxy` — один адрес на порту `8080`, доступный как `HTTP` и `SOCKS5`. -Когда VPN включён, публичный трафик Gateway и Local Proxy идёт через выбранный sing-box outbound. Когда VPN выключен, TProxy-перехват снимается и Gateway продолжает работать напрямую через kernel forwarding/NAT без прохода через sing-box. +Когда VPN включён, публичный трафик Gateway и Gateway Proxy идёт через выбранный sing-box outbound. Когда VPN выключен, TProxy-перехват снимается и Gateway продолжает работать напрямую через kernel forwarding/NAT без прохода через sing-box. Proxy по умолчанию разрешён только из приватных сетей. Диапазоны задаются через `PROXY_ALLOWED_CIDRS`. diff --git a/src/web/App.jsx b/src/web/App.jsx index 133df13..242598a 100644 --- a/src/web/App.jsx +++ b/src/web/App.jsx @@ -25,6 +25,10 @@ function App() { return () => clearInterval(timer); }, []); + useEffect(() => { + if (state?.mode) document.title = state.mode === 'gateway' ? 'Gateway' : 'Proxy'; + }, [state?.mode]); + async function run(action) { setBusy(true); setError(''); diff --git a/src/web/components/ClientOverviewPage.jsx b/src/web/components/ClientOverviewPage.jsx index 6d9d49f..8d3d64d 100644 --- a/src/web/components/ClientOverviewPage.jsx +++ b/src/web/components/ClientOverviewPage.jsx @@ -225,12 +225,12 @@ export function ClientOverviewPage({ -
+
{isGateway && (
{[ ['gateway', 'Gateway'], - ['proxy', 'Local Proxy'], + ['proxy', 'Gateway Proxy'], ].map(([tab, label]) => (