docs: update probing info

This commit is contained in:
Lowder
2026-08-17 02:04:01 +05:00
parent 5f6dc1697c
commit f101951e9b
2 changed files with 63 additions and 18 deletions
@@ -14,6 +14,7 @@ kb?.reset();
[&_code]:bg-neutral-900/70 [&_code]:px-1.5 [&_code]:py-0.5 [&_code]:rounded [&_code]:text-sm [&_code]:text-neutral-200
[&_h1]:mb-16 [&_h1]:text-5xl [&_h1]:font-black [&_h1]:tracking-tight [&_h1]:text-neutral-100 [&_h1]:uppercase
[&_li]:my-3 [&_li]:text-neutral-300
[&_ol]:list-decimal [&_ol]:pl-6 [&_ol]:my-6
[&_p]:my-6 [&_p]:text-lg [&_p]:leading-relaxed [&_p]:text-neutral-300
[&_ul]:list-disc [&_ul]:pl-6 [&_ul]:my-6
"
+62 -18
View File
@@ -1,6 +1,5 @@
<script lang="ts">
import KbArticle from "$lib/components/kb/KbArticle.svelte";
import KbCode from "$lib/components/kb/KbCode.svelte";
import KbHeading from "$lib/components/kb/KbHeading.svelte";
import KbNote from "$lib/components/kb/KbNote.svelte";
</script>
@@ -48,12 +47,48 @@ import KbNote from "$lib/components/kb/KbNote.svelte";
сразу, не дожидаясь завершения всех проверок.
</p>
<p>
Сканер не пытается открыть сайт целиком или подключиться напрямую к серверу.
Вместо этого он делает небольшую контрольную загрузку с тестовых хостов.
Часть этих хостов используется как условно заблокированные направления,
часть — как контрольные доступные направления. Это помогает отличить разные
типы поведения: обрыв на этапе начала HTTPS-соединения, недогрузку данных
или нормальную передачу.
Сканер не загружает целевой сайт целиком. Для домена он делает небольшие
контрольные HTTPS-загрузки с тестовых хостов, подставляя проверяемое имя в
SNI, а до разрешённого IP-адреса выполняет короткую TCP-трассировку на порт
443. Эти проверки позволяют независимо увидеть блокировку по имени домена и
аномально раннее завершение маршрута до адреса.
</p>
<KbHeading id="методика-сканирования" title="Методика сканирования">
Методика сканирования
</KbHeading>
<p>
Каждая задача содержит IP-адрес цели и, если пользователь проверяет домен,
само доменное имя. SNI-проверка, трассировка цели и контрольные трассировки
запускаются одновременно, чтобы состояние сети во время измерений было как
можно более одинаковым.
</p>
<ol class="list-decimal">
<li>
Сканер подключается к настроенным тестовым хостам, но передаёт проверяемый
домен в TLS ClientHello и HTTP Host. Затем он оценивает, удалось ли
завершить TLS-обмен и получить минимальный объём данных. Для проверки
IP-адреса без домена этот этап пропускается.
</li>
<li>
Сканер открывает TCP-соединения к разрешённому IP-адресу на порту 443,
последовательно увеличивая TTL от 1 до 5. На каждом TTL по умолчанию
одновременно отправляются три попытки: это уменьшает влияние потерь
пакетов и ограничения частоты ICMP-ответов. Ответ ICMP Time Exceeded
переводит проверку к следующему TTL, а TCP RST или успешное соединение
завершают трассировку.
</li>
<li>
Из списка известных доступных хостов случайно выбираются не более трёх
IP-адресов той же версии протокола, что и цель. Все контрольные
трассировки идут параллельно, а для сравнения используется наименьший
измеренный контрольный TTL.
</li>
</ol>
<p>
Если трассировки цели и контроля завершились ответом ICMP Time Exceeded, но
ответ для цели пришёл на меньшем TTL, сканер выставляет вердикт «ТСПУ Блок».
В результатах показывается номер последнего достигнутого перехода для цели.
</p>
<KbHeading id="что-показывает-результат" title="Что показывает результат">
@@ -66,30 +101,39 @@ import KbNote from "$lib/components/kb/KbNote.svelte";
</p>
<ul class="list-disc">
<li>
<b>Доступен</b> – сайт не найден в списках CDN, не блокируется на
контрольных хостах, но может блокироваться на зарубежных CDN.
<b>Доступен</b>
– сайт не найден в списках CDN, не блокируется на контрольных хостах, но
может блокироваться на зарубежных CDN.
</li>
<li>
<b>CDN Блок (16-20)</b> – сайт найден в списках CDN, не блокируется на
контрольных хостах, но блокируется на зарубежных CDN.
<b>CDN Блок (16-20)</b>
– сайт найден в списках CDN, не блокируется на контрольных хостах, но
блокируется на зарубежных CDN.
</li>
<li>
<b>SNI Блок</b> – похоже на блокировку по домену сайта в начале
HTTPS-соединения. На практике это похоже на ситуацию, когда оборудование
оператора (ТСПУ) видит имя домена и разрывает соединение до передачи
полезных данных.
<b>SNI Блок</b>
– похоже на блокировку по домену сайта в начале HTTPS-соединения. На
практике это похоже на ситуацию, когда оборудование оператора (ТСПУ) видит
имя домена и разрывает соединение до передачи полезных данных.
</li>
<li>
<b>ТСПУ Блок</b>
– TCP-трассировка до цели остановилась раньше контрольной трассировки.
Обычно означает, что соединение разрывается на оборудовании оператора
(ТСПУ) до того как соединение дошло до цели.
</li>
<li>
<!-- biome-ignore format: link punctuation -->
<a
class="underline decoration-dotted underline-offset-2"
href="/kb/whitelist"
>Белый список</a> – похоже на блокировку по домену сайта в начале
HTTPS-соединения. Вероятнее всего, указывает на блокировку сайта на ТСПУ.
>Белый список</a> – данные передаются в полном объеме при подстановке
домена в SNI при подключении к заблокированному серверу.
</li>
<li>
<b>Неясно</b> – данных недостаточно или ответы противоречат друг другу.
<b>Неясно</b>
– данных недостаточно или ответы противоречат друг другу.
</li>
</ul>