RU Routing: Add QUIC protocol sniff and more desc

pull/650/head
Nikita Korotaev 2025-02-01 21:15:53 +05:00 committed by GitHub
parent dd8fa6344d
commit 435e1cbcd5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 7 additions and 3 deletions

View File

@ -68,7 +68,7 @@
"source": ["10.0.0.1"],
"user": ["love@xray.com"],
"inboundTag": ["tag-vmess"],
"protocol": ["http", "tls", "bittorrent"],
"protocol": ["http", "tls", "quic", "bittorrent"],
"attrs": { ":method": "GET" },
"outboundTag": "direct",
"balancerTag": "balancer",
@ -159,9 +159,13 @@
Массив, каждый элемент которого является тегом. Правило вступает в силу, если какой-либо элемент соответствует тегу входящего протокола.
> `protocol`: \[ "http" | "tls" | "bittorrent" \]
> `protocol`: \[ "http" | "tls" | "quic" | "bittorrent" \]
Массив, каждый элемент которого представляет собой протокол. Правило вступает в силу, если какой-либо протокол соответствует типу протокола текущего соединения.
`http` поддерживает только 1.0 и 1.1, h2 пока не поддерживается. (Трафик h2 в открытом виде также встречается очень редко)
`tls` TLS 1.0 ~ 1.3
`quic` из-за сложности этого протокола, перехват может иногда не срабатывать.
`bittorrent` только самый базовый перехват, может не сработать для многих шифрований и обфускаций.
::: tip
Необходимо включить опцию `sniffing` во входящем прокси, чтобы определить тип протокола, используемого соединением.
@ -169,7 +173,7 @@
> `attrs`: object
Объект json, ключи и значения которого являются строками, используется для проверки значений атрибутов трафика. Правило вступает в силу, если HTTP-заголовки содержат все указанные ключи, а значения содержат указанные подстроки. Регистр ключей не учитывается. Значения поддерживают использование регулярных выражений.
JSON-объект, где ключи и значения являются строками. Используется для проверки значений атрибутов HTTP-трафика (по очевидным причинам, поддерживаются только 1.0 и 1.1). Правило срабатывает, если HTTP-заголовки содержат все указанные ключи, и значения содержат указанную подстроку. Ключи не чувствительны к регистру. Значения поддерживают использование регулярных выражений.
Также поддерживаются псевдозаголовки h2, такие как `:method` и `:path`, для сопоставления метода и пути (хотя в HTTP/1.1 эти заголовки отсутствуют)