OpenWRT

Konsola szeregowa, adapter USB-UART i uszkodzony router TP-LINK

Każdy z nas słyszał o alternatywnym firmware na bezprzewodowe routery WiFi. Mam tutaj na myśli oczywiście OpenWRT/LEDE oraz jego GUI Gargoyle i LUCI. Przy zabawach z takim oprogramowaniem bardzo łatwo jest uszkodzić router w sytuacji, gdy tak na dobrą sprawę nie wiemy co robimy. Mi się jeszcze nie zdarzyło ubić żadnej z moich maszyn, a mam ich kilka. Problem w tym, że tak naprawdę nie wiem jak wygląda proces odzyskiwania routera w przypadku zaistnienia takiego złego scenariusza. Dlatego też postanowiłem zainicjować zdarzenie, które doprowadziło do ubicia systemu w moim TL-WR1043ND V2 od TP-LINK. Co zrobić w takim przypadku, gdy system routera nie chce wystartować, a na obudowie diody sygnalizują nieprawidłową pracę urządzenia? W takiej sytuacji będziemy musieli rozebrać sprzęt i podłączyć się do portu szeregowego na PCB za pomocą adaptera USB-UART, najlepiej na układzie CP2102, który bez problemu działa pod linux. Ten artykuł nie powstałby (tak szybko), gdyby nie pomoc ze strony @Heinz.

Instalacja i konfiguracja firmware OpenWRT (Chaos Calmer)

Ten post ma na celu zebranie wszystkich wpisów dotyczących instalacji i konfiguracji alternatywnego firmware OpenWRT, które znajdują się na tym blogu i umieszczenie ich w jednym wpisie. Chodzi generalnie o to, by wszystkie te artykuły były dostępne na jednej stronie w formie spisu treści odwołującego się do poszczególnych tekstów. Na tplinkforum.pl znajduje się post "OpenWRT w pigułce", z tym, że tamten artykuł dotyczy wydania Barrier Breaker. Artykuły, do których linki znajdują się poniżej, odwołują się do wydania Chaos Calmer i rozwiązania opisane w nich powinny na tej wersji firmware działać bez problemu. Mogą natomiast pojawić się problemy w przypadku konfiguracji starszych wersji OpenWRT na naszym routerze WiFi.

Blokowanie reklam z adblock na domowym routerze WiFi

Na sporej części stron internetowych są nam prezentowane reklamy w miej lub bardziej nachalny sposób. Takie banery są w stanie w dużej mierze przesłonić faktyczną treść serwisu albo też wręcz uniemożliwić nam spokojne czytanie tekstu, który się w takiej witrynie znajduje. By walczyć z tego typu praktykami, powstała cała masa dodatków do przeglądarek, np. adblock czy ublock, które są w stanie odfiltrować praktycznie wszystkie reklamy. Możemy pokusić się o zaimplementowanie takiego adblock'a bezpośrednio na naszym routerze WiFi, z tym, że by taki filtr reklam wdrożyć w naszej sieci domowej, na routerze musimy zainstalować alternatywny firmware OpenWRT/LEDE.

OpenWRT: Dwa różne adresy MAC na porcie WAN

Na forum eko.one.pl pojawił się ciekawy temat dotyczący problemów z adresami MAC w OpenWRT. Chodzi o to, że by uzyskać połączenie u pewnych ISP, trzeba im podać adres MAC tego urządzenia, które będzie wpięte bezpośrednio w strukturę sieci ISP. Niby normalna sprawa ale w pewnych przypadkach, ISP potrafi uwalić połączenie, gdy inne urządzenie zostanie podpięte do sieci w miejscu starego. Zwykle wystarczy telefon do ISP z prośbą o aktualizację adresu MAC ale w przypadku firmware OpenWRT może to być ździebko problematyczna kwestia. Wychodzi na to, że OpenWRT identyfikuje się dwoma adresami MAC na porcie WAN. Jeden z nich to ten standardowy MAC, który powinien być wykorzystywany i podany ISP. Drugim zaś jest MAC, który pojawia się przy rozgłaszaniu trybu failsafe podczas fazy startu routera WiFi. Ja nigdy nie zaobserwowałem problemów z tego powodu. Niemniej jednak, postanowiłem sprawdzić, jak ta sytuacja dokładnie wygląda i jak sobie z nią poradzić już teraz, na wypadek, gdyby w przyszłości trafił mi się jeden z takich dziwnych ISP.

OpenWRT: Konfiguracja anten via txantenna/rxantenna

Przeglądając forum eko.one.pl wpadł mi w oko taki oto temat. Problem, który został w nim poruszony dotyczył wykorzystywania pewnej określonej anteny routera. Zakładając, że przeciętny router ma trzy anteny, powiedzmy, że chcemy wykorzystywać tylko jedną z nich. Dlaczego mielibyśmy rozważać w ogóle taką sytuację? Przy trzech antenach, teoretyczny transfer w paśmie 2,4 GHz to, w zależności od routera, 450-600 mbit/s. Przy jednej antenie będziemy mieli max 150-200 mbit/s. Z tego co czytałem wcześniej w różnych źródłach, uszkodzenie w jakiś sposób toru antenowego może drastycznie pogorszyć lub wręcz uniemożliwić routerowi transmisję sygnału. Opisana w podlinkowanym wyżej wątku sytuacja dotyczyła właśnie tego typu zdarzenia, gdzie jedno z gniazd antenowych routera zostało uszkodzone. Firmware OpenWRT/LEDE jest nam w stanie umożliwić wybór określonych anten przy pomocy parametrów diversity , txantenna oraz rxantenna . W tym wpisie zobaczymy jak skonfigurować sobie anteny na przykładzie routera TL-WR1043ND V2 od TP-LINK.

Kształtowanie ruchu z qos-scripts w OpenWRT

Każdy bardziej zaawansowany administrator sieci prędzej czy później będzie chciał wdrożyć na swoim routerze wyposażonym w firmware OpenWRT pewien mechanizm QoS umożliwiający kształtowanie ruchu sieciowego. Ci, którzy się za ten temat zabierali, wiedzą, że nie jest on prosty w realizacji. Zwłaszcza, gdy chce się cały ten system zarządzania pakietami skonfigurować od podstaw przy pomocy narzędzi takich jak iptables , tc oraz ip . Z tego też względu OpenWRT umożliwia nam nieco prostszą w konfiguracji alternatywę polegającą na zainstalowaniu narzędzi zawartych w pakietach wshaper , qos-scripts lub sqm-scripts . Trzeba przy tym pamiętać, że mechanizm, który zostanie stworzony z wykorzystaniem jednego z tych w/w pakietów nie będzie tak elastyczny jak przy ręcznej konfiguracji od podstaw. Niemniej jednak, w tym artykule postaramy się ogarnąć kształtowanie ruchu przy pomocy tych pakietów.

Różne adresy LAN i WLAN w OpenWRT (Routed AP)

W standardowej konfiguracji OpenWRT, hosty łączące się za pomocą sieci bezprzewodowej jak i tej przewodowej są spięte razem za pomocą mostka (bridge) i tworzą jedną sieć lokalną. Nie ma w tym nic dziwnego, bo przecie chcemy, aby komunikacja między wszystkimi hostami w sieci LAN odbywała się bez większych przeszkód. Przynajmniej takie jest standardowe podejście przy konfiguracji sieci domowej. Niemniej jednak, w pewnych przypadkach istnieje potrzeba oddzielenia maszyn, które nawiązują połączenie za pomocą sieci WiFi od tych, które łączą się przewodowo. Generalnie chodzi o różne adresy, które zostaną przypisane sieciom LAN i WLAN. Rozwiązanie, które zostanie opisane w tym artykule jest podobne do tworzenia bezprzewodowej sieci gościnnej (guest WLAN), z tą różnicą, że w tym przypadku będziemy mieli do czynienia tylko z jedną siecią WiFi (tzw. Routed AP).

Bezprzewodowa sieć gościnna (guest WLAN)

Routery WiFi zwykle oferują jedną sieć bezprzewodową, do której użytkownicy mogą się łączyć po podaniu nazwy ESSID oraz hasła. W przypadku znanych nam osób chcących korzystać z udostępnianego przez nas AP, taka sieć powinna nam w pełni wystarczyć. Problem jednak zaczyna się w przypadku tych użytkowników, którym chcemy zezwolić na dostęp do naszej sieci WiFi ale nie darzymy ich zbytnio wysokim kredytem zaufania. By ten problem rozwiązać, w OpenWRT możemy skonfigurować mechanizm zwany "guest WLAN", czyli bezprzewodowa sieć gościnna. W tym artykule zobaczymy jak odseparować od siebie hosty w sieci LAN od tych w sieci gościnnej.

Konfiguracja DMZ w OpenWRT

Strefa zdemilitaryzowana (DMZ, demilitarized zone) to taki mechanizm, który ma na celu poprawę bezpieczeństwa usług w sieci lokalnej. Generalnie chodzi o podział sieci na kilka mniejszych podsieci i oddzielenie ich od siebie fizycznie lub logicznie. W OpenWRT możemy wydzielić taką strefę DMZ przy pomocy VLAN'ów. Z kolei odpowiednio skonfigurowany firewall odseparuje nam tę strefę od pozostałych maszyn pracujących w sieci LAN. W taki sposób nawet w przypadku włamania mającego miejsce w strefie DMZ, maszyny w pozostałych segmentach sieci będą bezpieczne. W tym wpisie postaramy się skonfigurować strefę zdemilitaryzowaną na routerze wyposażonym w firmware OpenWRT.

Sieciowy system plików w OpenWRT (NFS)

Network File System) to sieciowy system plików, za pomocą którego maszyny mające na pokładzie system operacyjny linux, w tym tez OpenWRT, są w stanie udostępniać pliki w sieci. Zatem NFS to głównie domena linux'ów. W przypadku windowsów można korzystać z protokołu SMB (samba). Sposób udostępniania zasobów przy pomocy tego sieciowego systemu plików jest bardzo podobny do tego, który jest realizowany w przypadku protokołu SSHFS. Zasadniczą różnicą między NFS i SSHFS jest brak szyfrowania komunikacji. W warunkach domowej sieci, ta cecha raczej nie stanowi większego problemu. Poza tym, trzeba też brać pod uwagę fakt, że szyfrowanie znacznie obciążyłoby router, co przełożyłoby się na spadek prędkości transferu. W tym wpisie zobaczymy jak na routerze z OpenWRT zaimplementować protokół NFS i udostępnić za jego pomocą zasoby w sieci lokalnej.