Files
knowledge-base/decisions/2026-05-29-niikn-diadoc-ozon-fix.md
dttb 5949452bcf niikn: КОРНЕВОЙ фикс — убрал russia_outside из podkop (ломал РФ-сайты)
russia_outside = РФ-сайты для доступа из-за границы; для офиса в РФ он фейкапил
gosuslugi/ozon/ЕИС/nspd и гнал в финский выход → гео-блок. Убран — РФ-сайты резолвятся
реально (проверено sing-box 127.0.0.42), overrides больше не нужны, цикл слётов разорван.
Инсайт Олега про inside/outside. Watchdog niikn-podkop-watchdog на pve-niikn сторожит откат.
Заодно: исправлены перепутанные chat_id (Олег=1292155421, Максим=437242345).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-29 13:24:04 +03:00

73 lines
8.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
date: 2026-05-29
type: decision
tags: [niikn, network, ozon, diadoc, podkop, netbird, lionart, troubleshooting]
---
# НИИКН: diadoc.ru и ozon.ru не открывались — два разных корня
> ## 🎯 ИТОГ / КОРНЕВОЕ РЕШЕНИЕ (2026-05-29, вечер)
> **Из podkop убран список `russia_outside`** — он и был первопричиной всех повторяющихся жалоб на gov/РФ-сайты.
> `russia_outside` (itdoginfo) = «РФ-сайты, доступные только из РФ-подсетей, для людей **за границей**». Для офиса в РФ он подменял gosuslugi/ozon/ЕИС/nspd на FakeIP и гнал в **финский** туннель → гео-блок «Доступ ограничен».
> Правильный «in-Russia bypass» список — `russia_inside` (заблокированное зарубежное), но он не нужен: точечные `meta`/`youtube`/`telegram` уже покрывают рабочее. Спасибо инсайту Олега про inside/outside.
> **Проверка (sing-box 127.0.0.42 до/после):** РФ-сайты перестали фейкапиться (стали реальными), заблокированные (instagram/youtube/whatsapp) остались в туннеле.
> **Эффект:** dnsmasq-overrides больше не нужны (оставлены как backup) — **слетать и ломать больше нечему**. Цикл «реконфиг → слетело → сломалось» разорван в корне.
> **Сторож:** `niikn-podkop-watchdog.sh` на pve-niikn (cron */15) следит, чтобы `russia_outside` не вернулся при обновлении podkop; алерт через Антошку (@maxim_dttb_bot) Олегу (chat 1292155421). Всё ниже — история диагностики и legacy-обходы (override/маршруты), они остаются как backup.
Жалоба: «в НИИКН не заходит на www.diadoc.ru и на озон». Оказалось — **две независимые причины**, не связанные с (изначально подозреваемыми) потерянными overrides.
## Диагноз
| Сайт | Резолв на клиенте | Путь | Корень проблемы |
|------|-------------------|------|-----------------|
| **ozon.ru** | `198.18.x` (FakeIP) | podkop list `russia_outside` → sing-box → awg0 → **Финляндия** | Ozon гео-блокирует зарубежные IP. РФ-сайт нельзя гнать через финский выход. |
| **diadoc.ru** | `46.17.203.154` (реальный, direct) | клиент → MikroTik → **MTS WAN `85.235.181.190`** | MTS-IP **чёрная дыра** к Контуру (TCP timeout 12с). С LionART (`195.26.30.163`) — TCP/TLS ок, отдаёт 200 (на curl без UA — 403 анти-бот). |
Ключевое: пути у них **разные** (ozon — через туннель, diadoc — напрямую), поэтому и фиксы разные.
## Решения
### ozon.ru — DNS override (как nspd)
```sh
# OpenWrt 192.168.1.50
uci add_list dhcp.@dnsmasq[0].server='/ozon.ru/77.88.8.8'
uci add_list dhcp.@dnsmasq[0].server='/ozon.ru/8.8.8.8'
uci commit dhcp && /etc/init.d/dnsmasq restart
```
Один override `/ozon.ru/` покрывает всю зону (`www`, `xapi`, `api`, `finance`). CDN `ozone.ru` и так был прямым. Теперь `*.ozon.ru` → реальный IP → прямой MTS (РФ-IP) → Ozon отдаёт сайт.
### diadoc.ru — маршрут через NetBird → pve-LionART (как nspd/zakupki)
```sh
# 1. NetBird route (id d8cljnbl0ubs7386r1ug)
# 46.17.203.0/24 (AS49675 SKB Kontur) → peer cuisnd3l0ubs73bsbbl0 (LionART), group cqgcidrl0ubs73f2hgf0
# 2. MikroTik 192.168.1.1:
/ip route add dst-address=46.17.203.0/24 gateway=192.168.1.201 comment="diadoc via NetBird->LionART"
# 3. MASQUERADE -s 192.168.1.0/24 -o wt0 на pve-niikn — уже стоял (systemd)
```
DNS-override для diadoc НЕ нужен — он и так резолвится в реальный IP.
## Проверка
- **diadoc:** с реального офисного ПК (maul-pc, 192.168.1.89, после `ipconfig /flushdns`) → `www.diadoc.ru` **HTTP 200**. ✅
- **ozon:** клиент резолвит реальный IP; серверы Ozon отвечают (307 + Set-Cookie). curl упирается в анти-бот «Доступ ограничен» (403) — но **одинаково с MTS и с LionART (двух разных чистых РФ-IP)** ⇒ блок по fingerprint curl, не по IP ⇒ **браузер JS-challenge проходит**. Маршрут через LionART для ozon смысла не имеет (там тот же 403). ✅
## Сопутствующие находки
- **awg0 туннель ЖИВ** (UP, `10.8.1.16/32`, ping через него 28мс). Раннее подозрение «туннель лёг» = ложная тревога: **busybox `ip` не поддерживает флаг `-br`**`ip -br link` молча пуст. Проверять `ip addr show <if>` / `ip link show <if>` без `-br`. См. [[../projects/niikn/openwrt-bypass]].
- **`gosuslugi.ru` сейчас FakeIP'ится** (`198.18.2.204` → Финляндия) = сломан, override снова потерян. Прочие РФ-маркетплейсы (WB, СберМаркет, Я.Маркет, М.Видео, Авито) — direct, ок.
- `russia_outside` в podkop ловит РФ-сайты узко (ozon, gosuslugi), не массово. Если будут жалобы на другие РФ-сайты — проверять FakeIP и при необходимости рассмотреть удаление `russia_outside` из `community_lists` (для офиса в РФ финский выход для РФ-сайтов вреден).
## Дополнение (тот же день): ЕИС + восстановление overrides + проверка podkop
Олег добавил: «ЕИС тоже не работает, проверь на Максиме Мауле; и podkop проверь, что заблокированные сайты работают».
- **podkop/туннель — OK.** С maul-pc: youtube/instagram→200, whatsapp соединяется. tproxy-счётчик 8.3M пакетов (растёт), awg0 несёт трафик. Заблокированные работают.
- **ЕИС (`zakupki.gov.ru`) был сломан** по той же причине, что gosuslugi: override слетел → FakeIP→Финляндия. В живом `uci show dhcp` оставались только `nspd`+`ozon`.
- **Восстановил ВСЕ слетевшие overrides** (`sev`, `zakupki`, `gosuslugi`, `rosreestr`, `culture`, `economy`). После рестарта dnsmasq + flushdns на клиенте: `zakupki.gov.ru`→**200** (через уже существующий route `95.167.245.0/24`→LionART), `gosuslugi`/`sev`/`rosreestr`/`culture`/`economy`→**200** (через MTS напрямую — class A подтверждён). Проверено на maul-pc.
- **`lk.zakupki.gov.ru` (ЛК ЕИС)** — НЕ сетевая проблема: ГОСТ-TLS (alert 40 с MTS и с LionART), `94.25.0.0/17`. Нужен Yandex Browser (нативный ГОСТ) + КриптоПро/ЭЦП. Маршрут не поможет.
Вывод: **главная причина массовых жалоб НИИКН на gov-сайты = периодически слетающие dnsmasq-overrides** (известная болячка podkop-реконфигов). Сильный кандидат на watchdog (cron на pve-niikn: проверять `uci show dhcp` и доливать недостающие overrides + алерт через Антошку).
## Связанные
- [[../projects/niikn/govru-quickfix-playbook]] — реестр overrides/routes обновлён
- [[2026-05-04-niikn-nspd-via-netbird-lionart]] — та же схема LionART для nspd
- [[../projects/niikn/openwrt-bypass]] — общая схема podkop+AWG