UDP трафик в XRAY (3X-UI)

В идеале хочется иметь VLESS + Reality для TCP на порту 443(насколько верно я понимаю, для TCP - для маскировки под обычный TLS трафик) + UDP на том же порту (так UDP трафик будет выглядеть менее подозрительным?).
Но, насколько я понял, VLESS не совместим с UDP трафиком, а 3X-UI не позволяет на два порта выставить два inbound (это решается вроде бы fallback ом в клиенте?)
Слышал также что XUDP, mKCP, Hysteria, Trojan умеют работать с UDP, это так? Обеспечивают ли они такую же безопасность сервера?

да? Может я чегой-то не понимаю, но у меня вроде маршрутизируется. В логах вижу вот это:
2024/10/09 07:58:27 10.10.10.5:54107 accepted udp:142.250.203.206:443 [tproxy → reality-fr]
2024/10/09 07:58:27 10.10.10.5:2996 accepted tcp:142.250.203.206:443 [redirect → reality-fr]
2024/10/09 07:58:29 10.10.10.6:40854 accepted tcp:152.32.227.17:443 [redirect → direct]
2024/10/09 07:58:29 10.10.10.6:46526 accepted udp:142.250.203.206:443 [tproxy → reality-fr]
2024/10/09 07:58:29 10.10.10.6:43708 accepted tcp:142.250.203.206:443 [redirect → reality-fr]
2024/10/09 07:58:29 10.10.10.6:40374 accepted tcp:213.180.193.226:443 [redirect → direct]

настроен xkeen на кинетике

а какие были прописаны inbounds?

// Исходящее соединение
{
“inbounds”: [

{
  "tag": "redirect",
  "port": 61219,
  "protocol": "dokodemo-door",
  "settings": {
    "network": "tcp",
    "followRedirect": true
  },
  "sniffing": {
    "enabled": true,
    "routeOnly": true,
    "destOverride": [
      "http",
      "tls",
      "quic"
    ]
  }
},

{
  "tag": "socks",
  "port": 18080,
  "protocol": "socks",
  "settings": {
    "auth": "noauth",
    "ip": "127.0.0.1",
    "udp": true
  },
  "sniffing": {
    "destOverride": [
      "http",
      "tls",
      "quic"
    ],
    "enabled": true,
    "metadataOnly": false,
    "routeOnly": false
  },
  "streamSettings": null
},

{
  "tag": "tproxy",
  "port": 61219,
  "protocol": "dokodemo-door",
  "settings": {
    "network": "udp",
    "followRedirect": true
  },
  "streamSettings": {
    "sockopt": {
      "tproxy": "tproxy"
    }
  },
  "sniffing": {
    "enabled": true,
    "routeOnly": true,
    "destOverride": [
      "http",
      "tls",
      "quic"
    ]
  }
}

]
}

vless это TCP прокси, проксирует TCP и UDP трафик внутри множества TCP потоков. hysteria это UDP прокси, проксирует TCP и UDP трафик внутри одного UDP потока. shadowsocks проксирует TCP и UDP внутри множества TCP и UDP потоков.

image

все прекрасно работает вот так

Может и внутри одного TCP потока с помощью мультиплексирования.

ну нормальной имплементации я еще не видел, yamux в sing-box ближе всего к идеалу, но крашится из-за него слишком часто

В Xray оно вроде как нормально работает. Да и на захвате траффика с помощью WireShark, как и на просмотре активности в Procmon, я вижу только один коннект от Xray к серверу, хотя тот же Discord параллельно подключается к нескольким серверам.

далеко нет, во первых там ограничение на 1024 соединения внутри мультиплекса, которое применяется к каждому днс запросу из-за чего лимит быстро исчерпывается, а во вторых если начать качать какой-то файл, то остальные соединения в мультиплексе просто встанут, вы ни 1 сайт больше открыть не сможете пока файл не скачается

Которое тянется уже как 6 лет…

Не замечал подобного у себя. Спокойно проходят пакеты в обе стороны при полной загрузке соединения как на скачивание, так и на отдачу.

Посмотрел сейчас. Да, проблемка с исчерпанием запросов есть, но она по UDP, так как там невозможно отследить закрытие подключения. С TCP же оно закрывает соединение и освобождает “сессию” внутри мультиплекса, и он может взять новое подключение.