Router na Banana Pi M1, czyli LEDE na pokładzie

Całkiem niedawno pisałem o fajnym sofcie LEDE na routery. Przeszukując obszerną tabelę wspieranego sprzętu, natrafiłem na Banana Pi M1. Od razu pobrałem obraz (spakowany to tylko kilka MB), zapisałem go na kartę. Troszkę pokonfigurowałem i od kilku miesięcy mam szybki router na Banana Pi. Poniższy wpis, to tak w skrócie instrukcja budowy własnego routera, który posiada ogromne możliwości rozbudowy.

Router na Banana Pi M1 – co otrzymujemy?

Instalując LEDE na Banana Pi M1 dostajemy do dyspozycji router, który posiada jeden port ethernet, skonfigurowany jako interfejs LAN. Do tego podłączyłem modem LTE ZTE MF823, który skonfigurowałem po stronie WAN, wpiąłem kartę TP-Link TL-WN722N, która pracuje w trybie access point. Tym sposobem mam wszystko co jest mi potrzebne.

Banana pi m1 jako router

Pierwsze uruchomienie i konfiguracja

Całą zabawę należy zacząć od pobrania obrazu ze strony https://lede-project.org/toh/views/toh_fwdownload. Najwygodniej przeszukać obszerną tablę korzystając z funkcjonalności przeglądarki (ctrl+f). Jest i Banana Pi M1:

Banana Pi obraz LEDE

Obraz po rozpakowaniu należy zapisać na karcie SD. Tutaj: Jak przygotować bootowalną kartę SD lub pendrive? znajdziesz dość obszerny opis jak to zrobić. Ja na szybko wykorzystałem narzędzie dd w systemie Linux:

Przygotowanie karty z LEDE

No i czas na pierwsze uruchomienie. Do portu Ethernet Banana Pi podłączyłem patchcord, którego drugi koniec wpiąłem w komputer. Po chwili dostałem adres IP, czyli mój jeszcze upośledzony routerek, uruchomił się. Pierwsze logowanie przez SSH wygląda tak:

Logowanie do LEDE SSH

Jest też wygodny interfejs LuCI dostępny przez przeglądarkę internetową. Wystarczy wpisać adres 192.168.1.1 i oto jest:

Główne okno Luci

System ostrzega nas, że do konta root nie jest przypisane hasło, którego ustawienie zostawimy sobie na koniec. Teraz trzeba zająć się interfejsem WAN. Cała procedura będzie praktycznie identyczna jak w przypadku routera TP-Link MR3420, którą opisałem tutaj: Router TL-MR3420, modem MF823 LTE i firmware LEDE. W tym przypadku część ustawień wykonam z poziomu wygodnego interfejsu www. Zaczynam od wpięcia modemu LTE ZTE MF823 do portu usb. Sprawdzam czy w systemie jest do niego sterownik:

No i nie ma:

Urządzenia USB w LEDE

Podobnie jak w przypadku LEDE na TL-MR3420, trzeba pobrać paczkę ze sterownikami i zależności, pliki które są nam potrzebne to:

  • kmod-nsl-base_
  • kmod-mii_
  • kmod-usb-core_
  • kmod-usb-net_
  • kmod-usb-net-cdc-ether_

Po podkreślniku (‚_’) znajduje się wersja paczki i architektura, pod jaką została skompilowana. Są one do pobrania tutaj: https://downloads.lede-project.org/releases/17.01.2/targets/sunxi/generic/packages/. Teraz, korzystając z scp (w Windows polecam WinSCP) należy wysłać paczki do Banana pi, komenda w linuksie wygląda tak:

I w efekcie:

scp - wysłanie plików

Teraz można przelogować się po ssh do lede i sprawdzić, czy pliki znajdują się  w folderze tmp:

tmp - przesłane pliki

Są, więc można je zainstalować, będą w folderze tmp, wystarczy wydać polecenie:

Pakiety - instalacja

Wszystko przebiegło bez problemów, możemy więc zrobić restart Banana Pi i sprawdzić, czy mamy nowy interfejs usb0, do którego jest podłączony modem:

Banana Pi ifconfig -a

Teraz można przełączyć się na interfejs graficzny i tam wyklikać sobie resztę konfiguracji. Tak więc otwieramy przeglądarkę i wklepujemy adres http://192.168.1.1, przechodzimy do ‚Network -> Interfaces‚:

Zakładka Network Interfaces

I wybieramy ‚Add new interface…‚. W nowym oknie ustawiamy nazwę na ‚wan’, dla modemu ZTE MF823 protokół na DHCP client, i przypisujemy go do fizycznego interfejsu usb0:

Tworzenie interfejsu w LEDE

Po kliknięciu ‚Submit‚, na stworzonym interfejsie WAN klikamy ‚Edit‚ i w zakładce ‚Advance Settings‚ ustawiamy checkboxy jak niżej i wpisujemy swoje serwery DNS (tutaj googlowe: 8.8.8.8 i 8.8.4.4):

Własne dnsy

Upewniamy się jeszcze, że w zakładce Firewall Settings interfejs mamy przypisany do profilu WAN:

Firewall Settings

Po zatwierdzeniu przyciskiem ‚Save & Apply‚ zakładka z interfejsami wygląda tak:

Zakładka interfejsy

Od teraz mamy internet na porcie eth0 :). Czas na sieć bezprzewodową. Ja użyłem popularnej i taniej karty TP-Link TL-WN722N. Również ona wymaga zainstalowania sterowników, przechodzimy więc do zakładki ‚System -> Software‚ i wybieramy Update lists:

LEDE aktualizacja listy pakietów

Karta TL-WN722N zbudowana jest na chipie AR9271, klikamy na zakładkę Available Package i w okienko search wpisujemy ar9271, wynik wyszukiwania to dwa pakiety ath9k-htc-firmware i kmod-ath9k-htc, które należy zainstalować:

Instalacja sterowników

Wraz z nimi zostaną zainstalowane inne pakiety, wymagane zależnościami. Dodatkowo należy jeszcze doinstalować pakiet hostapd, który umożliwi nam szyfrowanie sieci WiFi. Przechodzimy teraz do zakładki ‚Network -> Wireless‚, która powinna wyglądać tak:

Network -> Wireless

Wybieramy ‚Edit‚ by zmienić ustawienia sieci bezprzewodowej. Ważne, by w Channel ustawić konkretny kanał, bo na auto nie chciało działać, dodatkowo na zakładce ‚Advanced Settings‚ zmieniamy ustawienie kraju z CN (Chiny) na PL:


Konfiguracja karty bezprzewodowej

W części Interface Configuration ustawiamy nazwę sieci (ESSID), tryb (mode) na Access Point,  przypisujemy go do sieci LAN:

Sieć wlan konfiguracja

W zakładce Wireless Security ustawiamy zabezpieczenia sieci i klucz (hasło):

Wireless security

Po zapisaniu ustawień, możemy podłączyć urządzenia do sieci bezprzewodowej i podejrzeć je:

Wireless Overview

Czas na ustawienie hasła roota, w menu wybieramy ‚System -> Administration‚ i ustawiamy hasło:

Nowe hasło Luci / Lede

Można też zrobić za pomocą komendy passwd root, będąc w konsoli.

LEDE/LuCI – dodatkowe pakiety

Do LEDE jak i interfejsu LuCI można doinstalować sporo różnych pakietów, które znacznie rozszerzą możliwości routera. Np. instalacja Samby i podpięcie dysku pozwoli nam uruchomić prosty NAS, jest też Asterisk dający funkcjonalność centralki VoIP. Można też spolszczyć interfejs, instalując paczkę luci-i18n-base-pl:

LuCI spolszczenie

Są też wykresy pokazujące obciążenie poszczególnych interfejsów, czy procesora:

LuCi wykresy

Jeśli ktoś tęskni za pulsowaniem zielonej diody LED, to wystarczy przejść do ‚System -> LED Configuration‚ i przypisać jej aktywność przy wysyłaniu i odbieraniu pakietów przez modem:

Dioda LED - konfiguracja

Warto przejrzeć dostępne pakiety i ich opis. W dość prosty sposób można uruchomić adblocka, słuchać wprost z Banana Pi radia internetowego czy strumieniować telewizję DVB-T, po doposażeniu całości w tuner na usb.

Podsumowanie

Router na Banana Pi to dość ciekawe rozwiązanie. Duża ilość pamięci RAM i dość mocny procesor pozwalają na budowę wydajnego urządzenia. Zastosowana karta WiFi ma wpływ na stabilność i prędkość połączenia bezprzewodowego. Wydajność prądowa portów USB jest wystarczająca do zasilania modemu ZTE MF823, osiągane transfery bez problemu przekraczały 50Mb/s podczas małego obciążenia sieci LTE. Płytka, modem i karta pobierały łącznie 1,2A, co przy zasilaniu 5V daje około 6W. Uptimy bez problemu wynosiły po 20 dni i wynikały ze świadomego resetowania lub odłączania od prądu. Jeśli ktoś potrzebuje więcej portów ethernet, może zastosować specjalną odmianę Banana Pi R1. Router początkowo złożyłem z ciekawości, ale ostatecznie zastąpił typowego tp-linka i do dziś pracuje bezproblemowo.

Wpis “Router na Banana Pi M1, czyli LEDE na pokładzie” komentowano 2 razy

  1. U mnie za router robi Nexx WT3020, ale jeszcze na domyślnym oprogramowaniu – nie doczekał się zmiany na openwrt.

    Z tego co pamiętam, płytka R1 wyjścia ma już 100mb, a nie giga? Chętnie bym dorwał coś niedrogiego pod otwartą platformę oprogramowania, ale właśnie z wyjście i wejście 1G

    • Nexx właśnie do mnie leci, więc pewnie zrobię jakiś wpis o wgrywaniu LEDE z LuCI. Co do Banana Pi R1 to tak jak piszesz – porty Ethernet są gigabitowe i do tego jeszcze miejsce na dysk, więc masz router i nas w jednym.

Dodaj komentarz