Софт:
Поставил Debian, потому что порох закончился для OpenBSD и прочих интересных ОС. Сетью управляет systemd-networkd, DHCP/DNS — dnsmasq, фаервол — голый nftables. Зная себя, настроил etckeeper, который бэкапит /etc на гит-сервер. Правда, если роутер сдохнет, то я на гит не попаду, но упустим этот момент.
Зоны:
Раз уж у меня 9 дырок, чего бы не накрутить зон. Сделал так:
room 192.168.10.0/24 — админю отсюда
iot 192.168.20.0/24 — китайский умный зоопарк, которому не доверяю
dmz 192.168.30.0/24 — то, что смотрит наружу, и для гостей
srv 192.168.40.0/24 — серверы
IoT появился из-за телевизора Haier: я ему не доверяю, но периодически запускаю на нём Яндекс Музыку, так что пусть ходит в тырнет, но локалку мою видеть не должен. Между зонами ходит только то, что явно разрешено в nftables. Wi-Fi раздаёт тот же Archer, но уже как тупая точка: VLAN-ы приходят транком, каждый SSID — в свою зону. Разжалован из роутеров в АП — на это его ещё хватает.
Split-routing — ради чего всё затевалось. RU-адреса идут напрямую через провайдера, всё остальное через VPN. Так уж вышло, что в момент пердолинга VPN-ов у меня сгорела жопа от xray-core, а позже и от sing-box, поэтому я просто купил в России VPS-ку, поднял на ней WG, а трафик с неё заворачиваю в Европу.
На роутере:
- исходящий WireGuard wg0 с Table=off;
- в nftables — сет RU-префиксов (~8600), обновляется по таймеру из списка на GitHub;
- всё, что НЕ попало в сет, метится fwmark 0x1 → ip rule шлёт помеченное в отдельную таблицу с default dev wg0;
- killswitch: oifname wan0 meta mark 0x1 drop — лёг туннель, и «зарубежка» просто падает, а не утекает мимо VPN в открытую.
Итог: YouTube идёт через VPN, банки и Госуслуги — напрямую. И наконец-то можно не долбать себе мозги с VPN-ами на устройствах в локалке.
Post #1146
271
блог q00 Видать, в ближайшем квартале я эти сопли уже не уберу, поэтому сейчас расскажу про свой роутер. Так получилось, что я теперь не живу с родителями, а боевой ASUS остался у них Спасибо камраду Чаку, что подогнал Archer C6 v2, и пару месяцев я жил как человек:…
- ❤🔥 13
- 🔥 1