Konfiguracja sieci w Raspberry Pi
W dzisiejszym wpisie poświęconym Raspberry Pi pokażę jak skonfigurować połączenie sieciowe. Okazuje się, że wiele osób zaczynających swoją przygodę z komputerkiem właśnie w tym miejscu napotyka problemy, szczególnie w przypadku WiFi. Rozwiązanie jest proste, sprowadza się do edycji jednego pliku.
Adres IP w Raspberry Pi
Nasz komputerek najczęściej będzie podłączony do sieci i warto poświęcić chwilę uwagi na adres IP z jakim będzie pracował. Domowe routery najczęściej mają włączony serwer DHCP, co oznacza, że adres zostanie przyznany automatycznie. Jednak za kilka dni ten sam host może otrzymać inne IP. Router, serwer czy drukarka świadczą różne usługi w sieci i mają zazwyczaj skonfigurowany adres na stałe. Raspberry Pi też można zaliczyć do takich urządzeń i IP nie powinno się zmieniać. Co prawda możemy komunikować się po nazwie sieciowej, ale to dobrą praktyką będzie ustawienie stałego adresu. Mamy przynajmniej dwie możliwości – przypisać w serwerze DHCP (routerze) konkretne IP do MAC’a malinki, lub ustawić w niej stały adres. I tą drugą opcję można zobaczyć poniżej.
Raspian i sieć czyli /etc/network/interfaces
No właśnie, Raspian to po prostu Debian przystosowany do hardware’u. W linuksach konfiguracja sieci znajduje się najczęściej w pliku /etc/network/interfaces. Dokładnie tak samo jest i w naszym przypadku. Defaultowo skonfigurowane Raspberry podłączone do routera za pośrednictwem skrętki otrzyma adres IP z serwera DHCP. Można go sprawdzić, logując się do routera:
lub wpisując ifconfig w terminalu:
Przy okazji wpisałem też iwconfig, które dotyczy połączeń bezprzewodowych. Zajrzyjmy teraz do pliku interfaces, czyli sudo nano /etc/network/interfaces:
Interfejs przewodowy, eth0 jest ustawiony na pobieranie konfiguracji z DHCP – zapis w trzeciej linijce, jeśli zmienimy dhcp na static, to trzeba dopisać address (adres IP), netmask (maskę) i gateway (bramę). Ja ustawiłem sobie 10.0.0.25, 255.255.255.0 i 10.0.0.1. Tu ważna uwaga – ustawiając IP musicie mieć pewność, że serwer DHCP nie nada takiego samego adresu innemu urządzeniu, kiedy raspberry będzie wyłączone. Warto by ręcznie wpisane IP było jak najdalej od początku puli DHCP lub najlepiej poza nią.
Mając już otwarty plik można jeszcze skonfigurować WiFi. Na tym etapie karta nie musi być wpięta w USB. Szczątkowa konfiguracja już jest: allow-hotplug wlan0 oznacza, że karta wpięta w dowolnej chwili w urządzenie zostanie skonfigurowana. W linijce iface wlan0 inet manual zmienimy na iface wlan0 inet static. Dwie kolejne linie zakomentujemy haszem (#). Tu również należy wpisać address, netmask i gateway oraz wpa-ssid nazwa_sieci wpa-psk klucz_do_sieci. Zawartość mojego pliku wygląda tak:
Po zapisaniu pliku nowe ustawienia można uaktywnić na dwa sposoby: restart Rasberry (sudo reboot), lub ładniej:
sudo /etc/init.d/networking restart
I teraz można sprawdzić, czy Raspberry podłączone skrętką odpowiada na pingi:
Po uwolnieniu malinki od kabla, można wpiąć kartę WiFi na USB.
Wiele chipsetów jest obsługiwanych plug&play, bez konieczności doinstalowywania firmware’u. Czy karta działa prawidłowo? Ifconfig i iwconfig prawdę Ci powie:
Mogą Cię jeszcze zainteresować dwa, a właściwie trzy pliki. Nazwę sieciową zmienisz edytując zawartość /etc/hosts i /etc/hostname. Jeśli masz problem z rozpoznawaniem nazw, zobacz co jest w pliku /etc/resolv.conf.
Istnieje jeszcze coś takiego jak przypisanie konkretnego adresu IP do adresu MAC (rezerwacja), wtedy można sterować adresami z poziomu serwera DHCP. Bardzo ułatwia to konfigurację 🙂
Hmm, pisałem o tym: “…Mamy przynajmniej dwie możliwości – przypisać w serwerze DHCP (routerze) konkretne IP do MAC’a malinki, lub ustawić w niej stały adres. I tą drugą opcję można zobaczyć poniżej….”