Wyszukiwanie w witrynie

Usunąłem wbudowane funkcje mojego routera i odbudowałem je za pomocą Dockera


Nowoczesne routery uwielbiają chwalić się blokowaniem reklam, inteligentnym DNS, kontrolą ruchu, warstwami zabezpieczeń, AI-tu i chmurą-ówdzie. Jeśli dam mu kolejną aktualizację oprogramowania, prawdopodobnie zacznie oferować usługi coachingu życiowego. I przez pewien czas w to wszystko wierzyłem. Pozwoliłem mojemu routerowi prowadzić większość mojej sieci domowej jak jakiś zbyt pewny siebie średni menedżer, który właśnie odkrył panele kontrolne. On „optymalizował ruch”. On „chronił urządzenia”. Podejmował decyzje, o które nigdy go wprost nie prosiłem. Również losowo psuł rzeczy: strony internetowe przestawały działać bez powodu, DNS zwalniał jakby potrzebował przerwy na wapowanie, a urządzenia zachowywały się inaczej w zależności od tego, w którym kącie domu się znajdowały, jakby moje Wi-Fi nagle nabrało nastrojów.

Za każdym razem, gdy otwierałem ustawienia, wszystko wyglądało w porządku. Bo oczywiście tak było. Wtedy zorientowałem się w czymś nieco niezręcznym. Nie miałem pojęcia, co tak naprawdę robi moja własna sieć. Więc zrobiłem jedną rozsądną rzecz i wyłączyłem ją w całości.

Przestałem ufać mojemu routerowi

Kiedy „po prostu działa” powoli przestaje działać

Nie zawaliło się od razu. To byłoby zbyt łatwe. Zamiast tego była to śmierć przez tysiąc drobnych irytacji. Strona, która ładuje się natychmiast… chyba że nie; reklamy, które znikają… chyba że wślizgną się, jakby były tutaj u siebie, i jedno urządzenie działa idealnie, podczas gdy inne zachowuje się, jakby było podłączone przez ziemniaka. Nic nie było całkowicie zepsute, ale wszystko wydawało się nie tak. I to jest najgorszy rodzaj problemu, ponieważ nie możesz na niego wskazać. Po prostu go czujesz. Jakby coś w twoim zestawie było lekko przeklęte.

Więc sprawdzasz router. Wszystko wygląda nieskazitelnie, z czystym interfejsem użytkownika, bez ostrzeżeń i bez logów, które mówiłyby cokolwiek użytecznego. Masz uprzejmy mały interfejs pokazujący „Wszystko w porządku tutaj :)”, podczas gdy Twoja sieć oczywiście Cię zmyla. W pewnym momencie przestałem rozwiązywać problemy i zacząłem zgadywać, co, najwyraźniej, było moim limitem. Poszedłem na całość, w moim bardzo spokojnym, szwedzkim stylu. Wyłączyłem każdą „inteligentną” funkcję. Koniec z filtrowaniem, magią DNS i dodatkami bezpieczeństwa. Zostawiłem trasowanie i Wi-Fi tam, gdzie były. I tak po prostu, wszystko się ustabilizowało. Nie idealnie, ale stabilnie. I to wystarczyło, by powiedzieć mi dokładnie, gdzie mieszkał problem.

Przeniosłem wszystko z routera

Jedno urządzenie nie powinno próbować robić wszystkiego






Gdy to zobaczysz, nie da się tego 'odzobaczyć'. Routery są naprawdę świetne w byciu routerami. Przenoszą pakiety cały dzień, nie narzekając.

Ale w momencie, gdy próbują być czymś innym? Wtedy robi się dziwnie. Dostajesz ograniczone sterowanie, półujawnione funkcje i ustawienia, które wyglądają na konfigurowalne, ale w rzeczywistości takie nie są. To tak, jakby podano ci kierownicę, która czasami działa. Więc przestałem oczekiwać, że router będzie sprytny.

Dałem mu jedno zadanie i przeniosłem wszystko inne gdzieś, gdzie naprawdę chce być skonfigurowane. W moim przypadku był to stary komputer stacjonarny Lenovo 310S, który przez zdecydowanie za długi czas nie robił nic użytecznego. Teraz działa na Ubuntu 24.04 LTS, podłączony przez Ethernet i wreszcie wykonuje prawdziwą pracę, zamiast udawać, że jest na emeryturze. I oto zabawna część: Dodanie kolejnego komputera nie skomplikowało sprawy; sprawiło, że wszystko zaczęło mieć sens. Ponieważ teraz każdy element ma swoją rolę bez nakładania się, dziwnego zachowania czy momentów "dlaczego to nagle się zmieniło". Po prostu systemy robią to, co im każą. Szalona koncepcja.

Odbudowałem DNS i routing za pomocą Dockera

Pi-hole, Unbound i Nginx Proxy Manager zastąpiły wszystko, co „inteligentne”

Pierwszą rzeczą, która poszła, były DNS i blokowanie reklam. Pożegnaliśmy się z opcją „zaufaj mi, blokuję rzeczy” w routerze. Na jej miejsce pojawił się Pi-hole i Unbound działające w Dockerze jak dorośli. Pi-hole blokuje reklamy w całej sieci, co jest fajne. Ale prawdziwa magia polega na tym, że pokazuje wszystko: każde zapytanie, każdą blokadę i każde urządzenie, które pyta o coś, czego prawdopodobnie nie powinno. Koniec z domysłami i obwinianiem „czegoś w sieci”. Albo to się dzieje, albo nie, ponieważ Pi-hole chętnie to ujawni.

Unbound obsługuje rozwiązywanie DNS lokalnie, co brzmi nudno, dopóki nie zdasz sobie sprawy, że usuwa kolejny zewnętrzny element zależny, który może losowo spowalniać działanie lub zawodzić w kreatywny sposób. Razem są szybkie, ale co ważniejsze, są uczciwe.

Potem przyszło routowanie. Przekierowywanie portów na routerach konsumenckich to jedna z tych rzeczy, które technicznie działają, ale wydaje się, że zostały zaprojektowane, by testować twoją cierpliwość. Otwórz ten port, przekieruj na ten adres IP i miej nadzieję, że za dwa tygodnie będziesz pamiętać po co. Wszystko to zamieniłem na Nginx Proxy Manager. Teraz wszystko dostaje czystą subdomenę. Usługi działają za odpowiednimi URL-ami. SSL po prostu ... działa. I zarządzam tym wszystkim z interfejsu, który nie sprawia, że czuję się, jakbym cofnął się w czasie do 2009 roku.

Ustawiłem to bez nadmiernego komplikowania spraw

Mała skrzynka Ubuntu, kilka kontenerów i jedna kluczowa zmiana w routerze

To jest ta część, w której ludzie spodziewają się, że wszystko zacznie się komplikować. Nie dzieje się tak. Komputer Lenovo działa na Ubuntu z Dockerem i Docker Compose. To cała podstawowa konfiguracja bez nadmiernego komplikowania i bez momentu typu „daj mi dodać Kubernetes, skoro tu jestem”. Każda usługa działa w swoim własnym kontenerze:

  • Pi-hole wykonuje filtrowanie DNS.
  • Unbound rozwiązuje DNS lokalnie.
  • Nginx Proxy Manager obsługuje trasowanie.

Nie walczą ze sobą i nie nakładają się na siebie. Po prostu siedzą tam i wykonują swoje zadania jak dobrze wychowane introwertyki. Jedyną prawdziwą zmianą na routerze było skierowanie DHCP, aby używało Pi-hole jako serwera DNS. Jedno ustawienie to moment, w którym zmieniło się zasilanie. Po tym wszystkim zaczęło się zachowywać jak system, a nie jak zbiór uprzejmych kłamstw. Żadnych aktualizacji oprogramowania układowego wprowadzających nowe zachowanie ani żadnej logiki producenta robiącej „pomocne” rzeczy za kulisami.

Wydajność się poprawiła, ale prawdziwym zwycięstwem jest widoczność

Zapytania DNS są szybsze, strony ładują się bez wahania, a losowe przycinki zniknęły. Ale szczerze? Szybkość nie jest tutaj najważniejsza; liczy się zrozumienie. Po raz pierwszy naprawdę mogę zobaczyć, co robi moja sieć. Jeśli coś zostanie zablokowane, Pi-hole pokazuje mi to od razu. Jeśli DNS szwankuje, Unbound jest tam od razu. Jeśli usługa jest niedostępna, wiem dokładnie, gdzie szukać, zamiast wykonywać rytualne restarty i mieć nadzieję na najlepsze. Już nie trzeba zgadywać.

Nie da się odświeżać tej samej strony trzy razy, jakby nagle miała zdecydować się współpracować, ani obwiniać Wi-Fi, dostawcy internetowego czy Merkurego w retrogradzie. Albo działa, albo mogę zobaczyć, dlaczego nie działa. A gdy już masz taki poziom przejrzystości, bardzo trudno jest wrócić do poprzedniego stanu. Ponieważ prawdziwą poprawą tutaj nie jest prędkość, ale kontrola. A oddać ją z powrotem jednemu plastikowemu urządzeniu, które odmawia wyjaśnienia samego siebie? Tak, to już nigdy się nie zdarzy.

Powiązane artykuły