OpenWrt - nowe życie starszego sprzętu


Poziom 32, Pasjonat Galaktyczny
  • 3995
  • 18857
  • 96

OpenWrt - nowe życie starszego sprzętu

OpenWrt to alternatywne oprogramowanie dla routerów. Nie każde urządzenie jest wspierane, jednak lista kompatybilnych modeli jest bardzo długa i stale się powiększa.

Wyszukiwarka dostępnych wersji oprogramowania znajduje się pod adresem:
https://firmware-selector.openwrt.org

Dostępny jest również polski fork OpenWrt, zawierający dodatkowe pakiety i modyfikacje:
https://dl.eko.one.pl/firmware/.

 

Osobiście polecam oprogramowanie z eko.one, ponieważ domyślnie zawiera język polski oraz szeroki zestaw sterowników do modemów, dzięki czemu nie ma potrzeby ich dodatkowej instalacji po wgraniu systemu.

 

W zdecydowanej większości routerów, szczególnie modeli firmy TP-Link, OpenWrt wgrywa się bezpośrednio z poziomu panelu administracyjnego. Istnieją jednak urządzenia, w których instalacja wymaga dostępu do konsoli szeregowej i odbywa się za pomocą interfejsu UART.

atlas_cudow_9-1781721658459.png

 

W tym poradniku opiszę właśnie taki sposób instalacji na przykładzie routera ZTE MF286R.

 

1.  Demontujemy obudowę i szukamy pinów konsoli UART. Informacje o rozmieszczeniu pinów dla konkretnego modelu routera należy wyszukać na stronie OpenWrt. Na stronach poszczególnych urządzeń często znajdują się zdjęcia płyty głównej, opis wyprowadzeń UART oraz dodatkowe wskazówki dotyczące instalacji i odzyskiwania urządzenia.

Strona projektu OpenWrt: https://openwrt.org

2. Należy pamiętać, że piny należy połączyć krzyżowo: TX routera z RX konwertera, RX routera z TX konwertera, natomiast GND z GND. Nie należy podłączać pinu VCC (zasilania), chyba że dokumentacja danego urządzenia wyraźnie tego wymaga.

3. Podłączamy konwerter UART do komputera. Następnie sprawdzamy numer portu COM, pod którym urządzenie jest widoczne w systemie. W moim przypadku jest to COM9.

atlas_cudow_0-1781719731767.png

4. Włączamy dowolny program do komunikacji przez port szeregowy — ja używam PuTTY. Następnie ustawiamy wszystko zgodnie z przykładową grafiką, pamiętając jednak, aby wybrać własny numer portu COM (w moim przypadku jest to COM9).

atlas_cudow_1-1781719891550.png

atlas_cudow_2-1781719899729.png

atlas_cudow_10-1781721839898.png

 

5. Włączamy router i w logach sprawdzamy, jaki dokładnie mamy model oraz wariant urządzenia. W zdecydowanej większości przypadków producenci mogą stosować oznaczenia, które nie zawsze w pełni odzwierciedlają rzeczywisty wariant sprzętu, dlatego informacje o urządzeniu musimy zweryfikować samodzielnie w logach startowych. Szukamy np. takiej linii: 

[ 22.120000] cfg init, /home/scl/ci/workspace/Soft4_MF286R1_TMOPL_CPE/qsdk/build_dir/linux-ar71xx_generic/cfg-1.0/cfg_param.c 577. 

W moim przypadku to model MF286R1, czyli tzn. wariant R.

6. Wyłączamy router, pozostawiając włączoną konsolę UART.

7. Łączymy kablem LAN router z komputerem.

8. Ustawiamy kartę sieciową zgonie z poniższą grafiką. 

atlas_cudow_3-1781720286347.png

9. Do katalogu serwera tftpd64 wrzucamy plik "InitRams", u mnie to plik o nazwie: openwrt_initramfs_image.bin

10. Włączamy serwer TFTP i ustawiamy interfejs na 192.168.0.22. Następnie na komputerze wyłączamy wszystkie pozostałe interfejsy sieciowe, w tym Wi-Fi, aby uniknąć konfliktów i zapewnić poprawną komunikację podczas transferu.

11. Włączamy router. Po bardzo krótkiej chwili pojawi się komunikat „Hit any key to stop autoboot”. W tym momencie przerywamy proces startu (boot), aby zatrzymać U-Boot i uzyskać dostęp do trybu bootloadera.

atlas_cudow_4-1781720584184.png

12. Wpisujemy komendę, która wczyta obraz OpenWrt do pamięci RAM, aby możliwe było jego uruchomienie z poziomu bootloadera (U-Boot)

tftpboot 0x81000000 openwrt_initramfs_image.bin

 

atlas_cudow_5-1781720817485.png

13. Po pojawieniu się znaku zachęty wpisujemy kolejną komendę, która uruchamia system z pamięci RAM, czyli startujemy OpenWrt w trybie tymczasowym (bez zapisu do pamięci flash).

 bootm 0x81000000

14. Po dłuższej chwili router powinien uruchomić się z nowym systemem. Aby umożliwić dostęp do panelu administracyjnego, przywracamy ustawienia karty sieciowej do domyślnych (np. automatyczne pobieranie adresu IP przez DHCP).

atlas_cudow_6-1781721081481.png

15. Wchodzimy do panelu OpenWrt,  następnie do sekcji System -> Backup / Flash Firmware

atlas_cudow_7-1781721150997.png

16. W sekcji „Flash new firmware” wskazujemy plik z pełnym obrazem systemu OpenWrt.

17. Zaznaczamy Force upgrade, aby wymusić instalację.  

atlas_cudow_8-1781721256406.png

18. Po kilku minutach oprogramowanie powinno zostać wgrane, a router uruchomi się ponownie z nowym systemem zapisanym w pamięci stałej (flash).

19. Składamy obudowę, odłączamy kable UART i uruchamiamy router.

 

W drugiej części poradnika pokażę, jak skonfigurować interfejsy WAN, WWAN oraz Wi-Fi.

4 ODPOW. 4

Poziom 26, Entuzjasta Przestworzy
  • 422
  • 1993
  • 39

OpenWrt - nowe życie starszego sprzętu

Dokładny opis nawet dla laika.

Ale jako laik w takich tematach, chciałbym się dowiedzieć dokładniej co to za nowe życie będzie miał ten router i co zyska (on i ja też)? 😉


Poziom 32, Pasjonat Galaktyczny
  • 3995
  • 18857
  • 96

OpenWrt - nowe życie starszego sprzętu

Cóż, ciężko wymienić wszystkie zalety OpenWrt. Chyba najważniejszą cechą jest stabilność i uniwersalność. Mam router, który ma uptime kilka miesięcy.  Ponadto: nieskończona ilość pluginow, tzw. paczek.  W zasadzie na każdy pomysł jaki powstanie w głowie jest jakaś paczka. Ja zrobiłem tutorial na routerze za 70zl. Teraz zyskał funkcjonalność wiele droższych urządzeń. Można zrobić mulitwan,  pod złącze USB można podłączyć inne modemy LTE.  Można emulować inne urządzenia ( przydane u TMO). Stawiać serwery plików na routerze. Dodawać własne

skrypty.  Dodawać wiele sieci wi-fi, z szyfrowaniem WPA3. Tak naprawdę limitują nas tylko ograniczenia sprzętowe. W kontekście Orange, np łatwiej na takim systemie skonfigurować IPTV itp. Sky is the limit... 🙂 


Poziom 32, Pasjonat Galaktyczny
  • 2530
  • 11197
  • 99

OpenWrt - nowe życie starszego sprzętu

Fajny i szczegółowy tutorial!

Kwintesencją OpenWrt jest root a więc można robić zrobić o wiele wiele więcej niż stockowym oprogramowaniu routera (również więcej popsuć :)). Przymierzam się dopiero do niskopoziomego dotykania hardware i wzięcia lutownicy do ręki, do tej pory robiłem wgrywanie OpenWrt i unbricki routerów jedynie przy przy pomocy TFTP lub nawet tylko wgrywanie softu bezpośrednio z GUI oryginalnego oprogramowania a więc najprostsze. 

Zgłoszone routery z OpenWrt i ich ilość można sprawdzić w statystykach które są dobrowolne, wystarczy dodać skrypt w cronie

"Bebechy" softu można sobie podejrzeć w otwartym repozytorium kodu

Co warto odnotować to niektórzy producenci bazują na OpenWrt urządzenia które wypuszczają na rynek.


Poziom 32, Pasjonat Galaktyczny
  • 3995
  • 18857
  • 96

OpenWrt - nowe życie starszego sprzętu

@tolek Dzięki.  Dokładnie. Taka ciekawostka, że modem w routerze, który przerobiłem jest oparty na OpenWrt. Jest to wydanie  przerobione przez producenta, ale daje bardzo duże możliwości. Bardzo łatwo sterować i zarządzać nim przez komendy AT.