Files
knowledge-base/claude-memory/znamenskoye-ohothozyistvo.md
dttb d3ad7c3e32 znamenskoye-ohothozyistvo: восстановлен резервный канал WG через VPS
Было две ошибки одновременно: Orange Pi шлёт на :51820 (VPS слушает :51821)
и pubkey пира 10.5.0.3 на VPS не соответствовал текущему ключу Orange Pi
(остался от старого MikroTik wg-vps).

Исправил атомарно через wg syncconf без падения других пиров. Теперь
89.111.140.86:8180 отвечает HTTP 200, WG handshake идёт. Netbird IP объекта
обновился на 100.70.106.227. Новый ключ ~/.ssh/vps_znam_key — нужно сохранить в Bitwarden.

Подробности: decisions/2026-04-21-znamenskoye-ohothozyistvo-wg-backup-channel.md
2026-04-21 15:45:16 +03:00

400 lines
22 KiB
Markdown
Raw 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.
---
name: Знаменское Охотхозяйство — сеть
description: Полная топология сети охотхозяйства: MikroTik LTE + Orange Pi OpenWrt + VPS WireGuard + Netbird, камеры, DNAT
type: project
---
# Сеть Знаменское Охотхозяйство — полная документация
## Обзор
Удалённый объект (охотхозяйство) с интернетом через LTE (CGNAT). Удалённый доступ организован двумя каналами:
1. **Netbird VPN** через Orange Pi — основной канал управления (Connected P2P, новый IP 100.70.106.227)
2. **WireGuard** через VPS (89.111.140.86:51821) — резервный канал + DNAT камер. **РАБОТАЕТ** после фикса 2026-04-21 (см. [decision](../decisions/2026-04-21-znamenskoye-ohothozyistvo-wg-backup-channel.md))
MikroTik WireGuard к VPS **ОТКЛЮЧЁН** (ломал интернет, перехватывал default route). WG работает только на Orange Pi → VPS.
---
## Схема сети
```
┌─────────────────────────────────────────────────┐
│ VPS 89.111.140.86 (swtest.ru) │
│ Ubuntu 24.04, 1 vCPU, 990MB RAM, 10GB disk │
│ WG: wg0 10.5.0.1/24 :51821 │
│ Netbird: 100.70.93.36 │
│ DNAT: камеры → интернет (порты 8xxx) │
└──────┬──────────────────┬──────────────────────┘
│ WG (UDP 51821) │ WG (UDP 51821)
┌────────────┘ └───────────┐
│ 10.5.0.3 │ 10.5.0.2
│ 192.168.8.0/24 │ 192.168.88.0/24
▼ ▼
┌─────────────────────────────────────┐ ┌──────────────────────────┐
│ Orange Pi R1 Plus LTS (OpenWrt) │ │ Знаменское 29 │
│ 192.168.8.254 │ │ MikroTik 192.168.88.1 │
│ Netbird: 100.70.63.67 │ │ 1 камера HiWatch .42 │
│ WG wg0 → VPS (0 rx, проблема!) │ │ (отдельная локация) │
│ Маршрут 192.168.8.0/24 в Netbird │ └──────────────────────────┘
└──────────────┬──────────────────────┘
│ br0 (eth0+eth1)
│ DHCP client (.254)
┌──────────────┴──────────────────────────────────────────────────────────┐
│ │
│ MikroTik hAP ax lite LTE6 — 192.168.8.1 │
│ RouterOS 7.22, S/N: HH20AD5NPHJ │
│ ARM 2-core 800MHz, 256MB RAM, 128MB Flash │
│ Timezone: Europe/Moscow (UTC+3) │
│ │
│ ┌──────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌───────┐ │
│ │ lte1 │ │ ether1 │ │ ether2 │ │ ether3 │ │ ether4│ │
│ │ WAN │ │ bridge │ │ bridge │ │ bridge │ │ bridge│ │
│ │ CGNAT │ │ UP ◉ │ │ UP ◉ │ │ DOWN ○ │ │ DOWN ○│ │
│ │7.90.8.47 │ │ 100M │ │ 100M │ │ │ │ │ │
│ └──────────┘ └────────┘ └────────┘ └────────┘ └───────┘ │
│ │
│ ┌──────────────┐ ┌──────────────────┐ │
│ │ wifi1 (AP) │ │ wg-vps │ │
│ │ bridge │ │ DISABLED ✗ │ │
│ │ SSID: Hunter │ │ (ломал интернет) │ │
│ │ WPA2/3-PSK │ │ 10.5.0.3/24 │ │
│ │ pw:12345678a │ │ → VPS :51820 │ │
│ └──────────────┘ └──────────────────┘ │
│ │
│ DHCP: 192.168.8.2-254, lease 30m, DNS: 192.168.8.1 │
│ DNS upstream: 176.59.62.125, 176.59.62.126 (от LTE-оператора) │
│ NAT: srcnat masquerade → lte1 │
│ Firewall filter: все defconf правила DISABLED, forward ACCEPT │
└─────────────────────────────────────────────────────────────────────────┘
│ bridge (192.168.8.0/24)
┌────┴────────────────────────────────────────────────────────────┐
│ LAN-устройства │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ПРОВОДНЫЕ (статические / DHCP reserved): │
│ │
│ .1 — MikroTik (роутер, gateway) │
│ .2 — Камера 1 (24:48:45:85:DC:95) RTSP :554, SDK :8000 │
│ .3 — Камера 2 (24:48:45:85:E0:19) RTSP :554, SDK :8000 │
│ .102 — Камера 3 (—) RTSP :554, SDK :8000 │
│ .110 — Камера 4 (20:BB:BC:5E:80:85) RTSP :554, SDK :8000 │
│ .113 — Камера 5 (—) RTSP :554, SDK :8000 │
│ .120 — Камера 6 (20:BB:BC:6B:02:E5) RTSP :554, SDK :8000 │
│ .247 — NVR (DC:07:F8:4A:F3:69) Web :80, SDK :8000, RTSP :554 │
│ .254 — Orange Pi R1 Plus LTS (OpenWrt, Netbird/WG gateway) │
│ │
│ Wi-Fi КЛИЕНТЫ (динамические): │
│ │
│ .244 — TECNO POVA 7 Ultra 5G (постоянный, сигнал -42) │
│ .150 — POCO X5 Pro 5G (гость, сигнал -51) │
│ .144 — S23 Ultra «Сергей» (гость, сигнал -81) │
│ Ранее: HONOR 400 Pro, OnePlus 8T, Mi 11 Ultra, iPhone, │
│ M2102J20SG, Infinix GT 30 Pro, iPad │
│ │
└──────────────────────────────────────────────────────────────────┘
```
---
## 1. MikroTik hAP ax lite LTE6
| Параметр | Значение |
|----------|---------|
| Модель | hAP ax lite LTE6 (L41G-2axD&FG621-EA) |
| S/N | HH20AD5NPHJ |
| RouterOS | 7.22 (stable), build 2026-03-09 |
| Firmware | 7.15.2 (upgrade available: 7.22) |
| CPU | ARM, 2 cores, 800 MHz |
| RAM | 256 MB (free ~80 MB) |
| Flash | 128 MB (free ~95 MB) |
| Timezone | Europe/Moscow (UTC+3) |
| LAN IP | 192.168.8.1/24 |
| WAN | LTE (lte1), CGNAT IP 7.90.8.47/32 |
| DNS | 176.59.62.125, 176.59.62.126 (dynamic from LTE) |
| Admin | admin / 1qaz!QAZ (REST API + SSH + WebFig) |
### Интерфейсы
| Интерфейс | Тип | Статус | MAC | Назначение |
|-----------|-----|--------|-----|-----------|
| bridge | bridge | UP | F4:1E:57:41:76:24 | LAN (все порты + Wi-Fi) |
| ether1 | ethernet | UP 100M | F4:1E:57:41:76:24 | Bridge port (LAN) |
| ether2 | ethernet | UP 100M | F4:1E:57:41:76:25 | Bridge port (LAN, основной трафик) |
| ether3 | ethernet | DOWN | F4:1E:57:41:76:26 | Bridge port (не подключён) |
| ether4 | ethernet | DOWN | F4:1E:57:41:76:27 | Bridge port (не подключён) |
| wifi1 | wifi AP | UP | F4:1E:57:41:76:28 | Bridge port, SSID "Hunter" |
| lte1 | LTE modem | UP | CA:9D:C9:1B:1C:80 | WAN (интернет) |
| wg-vps | WireGuard | **DISABLED** | — | К VPS (отключён, ломал интернет) |
### Wi-Fi
| Параметр | Значение |
|----------|---------|
| SSID | Hunter |
| Auth | WPA2-PSK + WPA3-PSK |
| Пароль | 12345678a |
| Band | 2.4 GHz (ax/n) |
| FT (Fast Transition) | Включён |
### Маршруты
| Назначение | Gateway | Статус | Комментарий |
|-----------|---------|--------|------------|
| 0.0.0.0/0 | lte1 | **Активен** | Default через LTE |
| 0.0.0.0/0 | wg-vps | Неактивен | Route through VPN (distance 2) |
| 10.0.0.0/24 | wg-vps | Неактивен | VPS WireGuard network |
| 10.5.0.0/24 | wg-vps | Неактивен | WG сеть |
| 89.111.140.86/32 | lte1 | Активен | Direct to VPS |
| 192.168.8.0/24 | bridge | Активен | LAN |
### NAT
| Chain | Action | Правило |
|-------|--------|---------|
| srcnat | masquerade | out-interface-list=WAN, ipsec-policy=out,none |
| srcnat | masquerade | in-interface=wg-vps, out-interface-list=LAN (для WG→LAN) |
### Firewall Filter
Все defconf правила **DISABLED**. Активны только:
- forward: Accept WG VPS → LAN
- forward: Accept LAN → WG VPS (established,related)
### Interface Lists
- **LAN**: bridge
- **WAN**: lte1
---
## 2. Orange Pi R1 Plus LTS (OpenWrt Gateway)
| Параметр | Значение |
|----------|---------|
| Модель | Xunlong Orange Pi R1 Plus LTS |
| Arch | aarch64_generic (rockchip/armv8) |
| OpenWrt | 21.02.1, r16325-88151b8303 |
| Kernel | 5.4.154 SMP PREEMPT |
| Hostname | OpenWrt_ohothozyistvo |
| FQDN | openwrt-ohothozyistvo.netbird.cloud |
| LAN IP | 192.168.8.254 (DHCP от MikroTik) |
| MAC | C0:74:2B:FC:32:20 |
| Netbird IP | 100.70.106.227/16 (было 100.70.63.67, обновлено 2026-04-21) |
| WG IP | 10.5.0.3/24 (wg0 → VPS :51821, РАБОТАЕТ с 2026-04-21) |
| Disk | 29.2 GB (353 MB used, 1%) |
| SSH | root / 1qaz!QAZ (Dropbear, нужен expect) |
### Сетевые интерфейсы
| Интерфейс | IP | Назначение |
|-----------|-----|-----------|
| br0 (eth0+eth1) | 192.168.8.254/24 | Bridge, DHCP client от MikroTik |
| wg0 | 10.5.0.3/24 | WireGuard → VPS 89.111.140.86:51820 |
| wt0 | 100.70.63.67/16 | Netbird WireGuard |
| docker0 | 172.17.0.1/16 | Docker (не используется) |
### WireGuard (wg0)
| Параметр | Значение |
|----------|---------|
| Public Key | QK2SMILEfG+kRccU3QJVDZafuf108z6qPDK1XusLGVI= |
| Peer | VPS (v95Qiu4diw2E...) |
| Endpoint | 89.111.140.86:51821 (исправлено 2026-04-21 с :51820) |
| Allowed IPs | 10.5.0.0/24 |
| Keepalive | 25s |
| Статус | **РАБОТАЕТ** с 2026-04-21 — handshake идёт, DNAT камер доступен |
### Netbird
| Параметр | Значение |
|----------|---------|
| Version | 0.36.5 |
| Status | Connected (Relayed) |
| Relay | rels://streamline-fi-hel1-2.relay.netbird.io:443 |
| Routes | 192.168.8.0/24 (раздаёт в Netbird mesh) |
| Peers | 27/44 Connected |
### Установленные сервисы
adblock, aria2, avahi, banip, collectd, dnsmasq, dockerd, dropbear, luci_statistics, minidlna, mjpg-streamer, **netbird**, nlbwmon, qos, samba4, shadowsocks-libev, sqm, squid, sshd, transmission, ttyd, unbound, vnstat, watchcat, wsdd2, zerotier
---
## 3. VPS (WireGuard Hub + DNAT)
| Параметр | Значение |
|----------|---------|
| Hostname | 89-111-140-86.swtest.ru |
| OS | Ubuntu 24.04.4 LTS |
| IP | 89.111.140.86 (также IPv6: 2a01:d8:4:f:89:111:140:86) |
| Netbird IP | 100.70.93.36 |
| CPU | 1 vCPU |
| RAM | 990 MB (free ~73 MB) |
| Disk | 9.8 GB (84% used!) |
| WG IP | 10.5.0.1/24 |
| WG Port | **51821** (не стандартный) |
| SSH | ключ vps_znam_key с clawdbot (LXC 129) |
| Docker | camera-proxy (running) |
### WireGuard пиры
| Пир | WG IP | Allowed IPs | Endpoint | Статус |
|-----|-------|------------|----------|--------|
| Знаменское 29 | 10.5.0.2 | 10.5.0.2/32, 192.168.88.0/24 | 193.39.160.146:35156 | **UP** ✓ |
| Охотхозяйство (Orange Pi) | 10.5.0.3 | 10.5.0.3/32, 192.168.8.0/24 | 212.233.85.177:* (LTE NAT) | **UP** ✓ (с 2026-04-21, pubkey обновлён на QK2SMILE...) |
| Знаменское Home (OpenWrt_3) | 10.5.0.4 | 10.5.0.4/32, 192.168.1.0/24, 192.168.100.0/24 | 193.39.160.238:1514 | **UP** ✓ (4.37 TiB rx!) |
**Исправлено 2026-04-21:** на VPS было две проблемы — (1) порт на Orange Pi был 51820 вместо 51821, (2) PublicKey пира 10.5.0.3 на VPS был `zZ4UoWNwTxBODr8xZmoCREBL2zXJcmdcxKIPGp/xBC8=` (старый, от MikroTik wg-vps), а Orange Pi шлёт от `QK2SMILEfG+kRccU3QJVDZafuf108z6qPDK1XusLGVI=`. Оба исправлено, туннель работает. Бэкап прежнего конфига VPS: `/etc/wireguard/wg0.conf.bak-20260421-1512`.
### DNAT правила (порты на 89.111.140.86)
#### Охотхозяйство (192.168.8.x) — через WG 10.5.0.3
| Внешний порт | → Локальный адрес | Назначение |
|-------------|-------------------|-----------|
| **8180** | 192.168.8.247:80 | NVR Web |
| **8100** | 192.168.8.247:8000 | NVR SDK (iVMS-4200) |
| **8555** | 192.168.8.247:554 | NVR RTSP |
| **8561** | 192.168.8.2:554 | Камера 1 RTSP |
| **8201** | 192.168.8.2:8000 | Камера 1 SDK |
| **8562** | 192.168.8.3:554 | Камера 2 RTSP |
| **8202** | 192.168.8.3:8000 | Камера 2 SDK |
| **8563** | 192.168.8.102:554 | Камера 3 RTSP |
| **8203** | 192.168.8.102:8000 | Камера 3 SDK |
| **8564** | 192.168.8.110:554 | Камера 4 RTSP |
| **8204** | 192.168.8.110:8000 | Камера 4 SDK |
| **8565** | 192.168.8.113:554 | Камера 5 RTSP |
| **8205** | 192.168.8.113:8000 | Камера 5 SDK |
| **8566** | 192.168.8.120:554 | Камера 6 RTSP |
| **8206** | 192.168.8.120:8000 | Камера 6 SDK |
#### Знаменское 29 (192.168.88.x) — через WG 10.5.0.2
| Внешний порт | → Локальный адрес | Назначение |
|-------------|-------------------|-----------|
| **8080** | 192.168.88.42:80 | Камера HiWatch Web |
| **8082** | 192.168.88.42:8000 | Камера SDK (TCP+UDP) |
| **8554** | 192.168.88.42:554 | Камера RTSP |
#### Знаменское Home (192.168.1.x) — через WG 10.5.0.4
| Внешний порт | → Локальный адрес | Назначение |
|-------------|-------------------|-----------|
| **8280** | 192.168.1.123:80 | NVR Hikvision Web |
| **8282** | 192.168.1.123:8000 | NVR SDK |
| **8284** | 192.168.1.123:554 | NVR RTSP |
---
## 4. Устройства в LAN (192.168.8.0/24)
### Проводные (постоянные)
| IP | MAC | Тип | Порты | DNAT на VPS |
|----|-----|-----|-------|-------------|
| .1 | F4:1E:57:41:76:24 | MikroTik (router) | — | — |
| .2 | 24:48:45:85:DC:95 | Камера 1 | RTSP :554, SDK :8000 | 8561, 8201 |
| .3 | 24:48:45:85:E0:19 | Камера 2 | RTSP :554, SDK :8000 | 8562, 8202 |
| .102 | — | Камера 3 | RTSP :554, SDK :8000 | 8563, 8203 |
| .110 | 20:BB:BC:5E:80:85 | Камера 4 | RTSP :554, SDK :8000 | 8564, 8204 |
| .113 | — | Камера 5 | RTSP :554, SDK :8000 | 8565, 8205 |
| .120 | 20:BB:BC:6B:02:E5 | Камера 6 | RTSP :554, SDK :8000 | 8566, 8206 |
| .247 | DC:07:F8:4A:F3:69 | NVR | Web :80, SDK :8000, RTSP :554 | 8180, 8100, 8555 |
| .254 | C0:74:2B:FC:32:20 | Orange Pi R1+ LTS | SSH :22 | — |
### Wi-Fi клиенты (наблюдались 1216 марта)
| Hostname | MAC | Частота появления |
|----------|-----|-------------------|
| TECNO POVA 7 Ultra 5G | 02:01:A7:CF:49:6A | Постоянный (сигнал -42) |
| HONOR 400 Pro | 2E:D1:87:C2:8D:8F / 84:A1:B7:FE:26:06 | Частый |
| S23 Ultra «Ruptor» | F2:33:DD:3C:87:9E | Периодический |
| S23 Ultra «Сергей» | 36:11:DE:CA:46:BB | Периодический |
| POCO X5 Pro 5G | 72:6F:0D:AF:D9:E0 | Частый гость |
| OnePlus 8T | 9A:DB:87:12:2C:0E | Гость |
| Mi 11 Ultra | A2:72:D7:F7:4C:C5 | Гость |
| Infinix GT 30 Pro | 26:13:C9:EE:CF:3C | Гость |
| M2102J20SG (Xiaomi) | 0E:56:F6:18:06:7A | Редко |
| iPhone | E6:FE:79:8C:9E:F4 | Редко |
| iPad | DA:FB:04:4E:04:C6 | Редко |
| Неизвестный | 36:BA:A2:5B:B6:95 | Частый |
---
## 5. Каналы удалённого доступа
### Канал 1: Netbird (основной)
```
Администратор → Netbird mesh → Orange Pi (100.70.63.67)
│ route 192.168.8.0/24
├→ MikroTik REST API (192.168.8.1)
├→ NVR (192.168.8.247)
└→ Камеры (.2, .3, .102, .110, .113, .120)
```
- Работает через relay (Relayed)
- Latency: ~75-210 ms
- Orange Pi раздаёт маршрут 192.168.8.0/24 в Netbird
### Канал 2: WireGuard VPS (резервный + видеопотоки)
```
Интернет → VPS (89.111.140.86:8xxx)
│ DNAT
WG туннель (10.5.0.1 ↔ 10.5.0.3) :51821/udp
192.168.8.x (камеры/NVR/MikroTik/OrangePi)
```
- **СТАТУС: РАБОТАЕТ** (с 2026-04-21)
- Пример: `curl http://89.111.140.86:8180/` = NVR web, HTTP 200
- Использовать как backup Netbird. Если Netbird упал: `ssh -i ~/.ssh/vps_znam_key root@100.70.93.36` → дальше пинг/ssh в 192.168.8.0/24.
### Канал 3: Прямой доступ через VPS → WG → SSH
```
clawdbot (10.0.0.206)
→ ssh -i vps_znam_key root@100.70.93.36 (VPS Netbird)
→ ssh/curl → 192.168.8.x (через WG, если работает)
→ expect ssh root@192.168.8.254 (Orange Pi, через WG)
```
- Путь VPS → 192.168.8.x работает через WG к OpenWrt_3 (10.5.0.4) при условии, что WG-туннель к охотхозяйству поднят. **На данный момент трафик от VPS к 192.168.8.x идёт, т.к. Orange Pi wg0 отправляет keepalive и VPS знает endpoint.**
---
## 6. Известные проблемы
### ~~WireGuard порт mismatch~~ — РЕШЕНО 2026-04-21
Было: Orange Pi слал на :51820, VPS слушал :51821 + pubkey пира на VPS не соответствовал Orange Pi. Решение см. [decision 2026-04-21](../decisions/2026-04-21-znamenskoye-ohothozyistvo-wg-backup-channel.md).
### MikroTik WireGuard ломает интернет
- wg-vps имеет default route с distance 2 — при включении может перехватить трафик
- **Why:** wg-vps endpoint 89.111.140.86 маршрутизируется через lte1 (отдельный static route), но весь остальной трафик уходит в wg-vps туннель который не работает
- **Решение:** wg-vps оставить disabled, использовать только Orange Pi WG
### VPS диск почти полный
- 9.8 GB, 84% used — нужна очистка
### Последнее отключение питания
- 12 марта 15:25 — `router rebooted without proper shutdown, probably power outage`
- МикроТик потерял и восстановил время (NTP коррекция на ~23 часа)
---
## 7. Учётные данные
| Устройство | Логин | Пароль | Доступ |
|-----------|-------|--------|--------|
| MikroTik | admin | 1qaz!QAZ | REST API http://192.168.8.1/rest/, SSH, WebFig |
| Orange Pi | root | 1qaz!QAZ | SSH (expect, Dropbear) |
| VPS | root | — (ключ) | SSH с Mac: `ssh -i ~/.ssh/vps_znam_key root@100.70.93.36` (ключ RSA от sweb.ru «claude», заведён 2026-04-21). Старый `vps_znam_key` с clawdbot LXC 129 утрачен. |
| NVR (.247) | — | — | Web http://192.168.8.247 |
| Камеры | — | — | RTSP/SDK |
| Знаменское 29 MikroTik | admin | admin01 | 192.168.88.1 |
| Знаменское 29 камера | admin | 1qaz!QAZ | 192.168.88.42 |