Ten tutorial opisuje jak skonfigurować networking używając domyślnego menedżera sieci dhcpcd zawartego w Raspbian od 2015-05-05.
Odnosi się do wydań Foundation Raspbian Buster, Raspbian Stretch, Raspbian Jessie i ostatniego Raspbian Wheezy.
Ustawienia Buster są identyczne jak Stretch.

Jeśli używasz połączenia Ethernet z routerem nie powinno być żadnej konfiguracji wymagane i powinno działać po wyjęciu z pudełka.

Pi3B+ i Pi4 mają interfejsy Gigabit Ethernet i będzie działać tylko na Gigabit Ethernet (1000BASE-T) router, jeśli 8 kabel CAT 5E jest używany. Wcześniejsze modele Pi, które obsługiwały tylko 100BASE-T działają na kablu 6 przewodowym.

UWAGA Pi3/Pi Zero W wbudowane WiFi nie obsługuje sieci 5GHz i może nie połączyć się z Ch 12,13 w sieciach 2,4GHz do czasu ustawienia domeny regulacyjnej sieci bezprzewodowej.

WiFi na urządzeniach obsługujących 5GHz jest wyłączone do czasu ustawienia domeny regulacyjnej sieci bezprzewodowej (Pi4B, Pi3B+, Pi3A+)

  • Domenę można ustawić poprzez Raspberry Pi Configuration (rc_gui), raspi-config lub ustawiając country= na odpowiedni kod kraju ISO 3166 alpha2 w /etc/wpa_supplicant/wpa_supplicant.conf.

Jeśli używasz WiFi i GUI skonfigurowanego zgodnie z wytycznymi Fundacji

Jeśli używasz WiFi z wiersza poleceń skonfigurowanego zgodnie z wytycznymi FundacjiJest to jedyny sposób na skonfigurowanie sieci, która nie rozgłasza SSID.

To może być również użyte do skonfigurowania systemu 'Headless’ np. używając kabla konsoli szeregowej, ale jest to o wiele łatwiejsze, jeśli możesz pożyczyć monitor i klawiaturę do konfiguracji. Zobacz poniżej dla innej możliwej metody przy użyciu kabla Ethernet do komputera.

Headless Raspbian WiFi Setup

Raspbian, od maja 2016, sprawdza zawartość katalogu startowego dla pliku o nazwie wpa_supplicant.conf, i skopiuje plik do /etc/wpa_supplicant, zastępując każdy istniejący plik wpa_supplicant.conf, który może tam być. Plik w katalogu startowym jest następnie usuwany. Może to być wykorzystane do włączenia headless konfiguracji, przy użyciu wpa_supplicant.conf ustawienia szczegółowo poniżej lub Konfigurowanie Raspberry Pi headless (prawdopodobnie będziesz chciał włączyć ssh, jak również.)

Co to jest mój adres IP?

Jeśli chcesz po prostu wiedzieć IP Address twój Pi używa wpisz hostname -I w wierszu poleceń.

SSH

Od wydania listopad 2016, Raspbian ma serwer SSH wyłączony domyślnie. Będziesz musiał włączyć go ręcznie.

Wprowadź sudo raspi-config w terminalu, najpierw wybierz advanced options, następnie przejdź do ssh, naciśnij Enter i wybierz Włącz lub wyłącz serwer ssh.

W przypadku konfiguracji bezgłowej, SSH może być włączony przez umieszczenie pliku o nazwie 'ssh’, bez żadnego rozszerzenia, na partycji rozruchowej karty SD.

Pliki sieciowe

Jeśli używasz najnowszego Raspbiana /etc/network/interfaces powinien być taki jak poniżej. Jeśli go zmieniłeś, WSTAW GO Z POWROTEM. (Lub na Stretch po prostu usuń go – to skutecznie NIE ROBI NIC.)

# interfaces(5) file used by ifup(8) and ifdown(8)# Please note that this file is written to be used with dhcpcd# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'# Include files from /etc/network/interfaces.d:source-directory /etc/network/interfaces.d

Plik /etc/wpa_supplicant/wpa_supplicant.conf zostanie utworzony/modyfikowany przez zalecane metody konfiguracji, ale może być skonfigurowany ręcznie. Ostatnie Raspbian mają opcję w raspi-config do wprowadzenia SSID i hasła. Powinien on zawierać coś takiego jak poniższe:-

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdevupdate_config=1country=AUnetwork={ ssid="ESSID" psk="Your_wifi_password"}

Jeśli potrzebujesz połączyć się z prywatną siecią (tj. bez rozgłaszania SSID) dołącz linię scan_ssid=1 wewnątrz network={⋯}.

UWAGA Jeśli chcesz połączyć się z różnymi sieciami (np.

Jeśli masz dostęp do wielu sieci i chcesz się połączyć z konkretną siecią, umieść wiersz priority=100 wewnątrz wpisu network={⋯}.
Możesz wybrać inny priorytet dla każdej sieci, wybrana zostanie sieć o najwyższym priorytecie; domyślnie 0.

Istnieje wiele innych opcji, których można użyć zobacz man wpa_supplicant.conf.

Uwagi na temat przestarzałych systemów operacyjnych

Jessie nie zawiera haka 10-wpa_supplicant do zarządzania interfejsami WiFi, więc potrzebne są linki do wpa_supplicant. Te ustawienia są niekompatybilne z Predictable Network Interface Names.

Ustawienie /etc/network/interfaces używane przez Jessie powinno być:-

# interfaces(5) file used by ifup(8) and ifdown(8)# Please note that this file is written to be used with dhcpcd# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'# Include files from /etc/network/interfaces.d:source-directory /etc/network/interfaces.dauto loiface lo inet loopbackiface eth0 inet manualallow-hotplug wlan0iface wlan0 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.confallow-hotplug wlan1iface wlan1 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

NOTE wywołanie dhcp w /etc/network/interfaces wyłączy dhcpcd.

Predictable Network Interface Names

Stretchwprowadziło1 przewidywalne nazwy interfejsów sieciowych, które były używane w innych dystrybucjach od jakiegoś czasu.

Interfejsy sieciowe będą miały nazwy utworzone z przedrostka en – Ethernet lub wl – wlan, po którym następuje x wskazujące na MAC i MAC np. enxb827eb123456 lub wlx00c140123456.Wbudowany WiFi Pi4, Pi3 i PIZeroW, który jest podłączony przez sdio będzie jednak używać nazwy wlan0

To może być korzystne dla tych, którzy korzystają z wielu interfejsów sieciowych, jednak dla większości użytkowników Pi, z jednym interfejsem Ethernet i WiFi będzie niewielka różnica. Poprzednie nazwy eth0 i wlan0 mogą zostać przywrócone, jeśli przekażesz net.ifnames=0 w wierszu poleceń jądra w /boot/cmdline.txt.

Istnieje opcja w raspi-config, aby włączyć przewidywalne nazwy interfejsów sieciowych.

1. Z jakiegoś niezrozumiałego powodu Fundacja zdecydowała się na „Wyłączenie przewidywalnych nazw interfejsów sieciowych dla urządzeń Ethernet” zaledwie 3 tygodnie po wprowadzeniu długo oczekiwanej funkcji. Istnieje opcja pod Advanced Options w raspi-config, aby przełączyć to ustawienie.

Setup a Static IP Address

Jeśli chcesz Pi być przypisany przewidywalny adres IP można albo zarezerwować jeden w routerze LUB poprosić serwer DHCP, aby przypisać go.
E.g. następujące zażąda adresu na wlan0.

interface wlan0request 10.1.2.99

request
Zażądaj adresu w wiadomości DHCP DISCOVER. Nie ma gwarancji, że jest to adres, który serwer DHCP rzeczywiście poda. Jeśli nie podano żadnego adresu, używany jest pierwszy adres aktualnie przypisany do interfejsu.

Jeśli zażądasz adresu IP z zakresu zarządzanego przez serwer DHCP, który jest dostępny, powinno to być honorowane, w przeciwnym razie serwer DHCP przydzieli adres w normalny sposób.

Jeśli NAPRAWDĘ potrzebujesz statycznego adresu IP zobacz osobną odpowiedź Statyczny adres IP

Zaawansowana konfiguracja dhcpcd

Raspbian, domyślnie, używa dhcpcd do zarządzania interfejsami sieciowymi. Jest to automatyczne, a większość użytkowników nie musi robić nic więcej niż określić SSID i hasło dla sieci bezprzewodowych.

Możliwe jest skonfigurowanie sposobu działania dhcpcd przez wprowadzenie opcji w /etc/dhcpcd.conf; zobacz man dhcpcd.conf.Istnieje dobry artykuł na temat dhcpcd pod adresem https://wiki.archlinux.org/index.php/dhcpcd

Następujące opisy niektórych bardziej powszechnych konfiguracji:-

Profil awaryjny

Możliwe jest skonfigurowanie statycznego profilu w ramach dhcpcd i powrót do niego, gdy dzierżawa DHCP nie powiedzie się. Jest to przydatne szczególnie dla maszyn bezgłowych, gdzie profil statyczny może być użyty jako profil „recovery”, aby zapewnić, że zawsze jest możliwe połączenie z maszyną. Profil statyczny jest skonfigurowany jak każdy inny statyczny adres IP

 # define static profile profile static_eth0 static ip_address=⋯ static routers=⋯ static domain_name_servers=⋯ # fallback to static profile on eth0 interface eth0 fallback static_eth0

Prevent dhcpcd from configuring an interface

This is often done to enable the Pi to act as an Access Point (which needs to be configured using other files), while allowing normal DHCP configuration on other interfaces.

Add denyinterfaces wlan0 to the end of the file (but above any other added interface lines).

Prevent dhcpcd from configuring a gateway on an interface

Jeśli chcesz, aby interfejs nie instalował żadnych domyślnych tras (często używane w połączeniu ze statycznym adresem IP) określ

 nogateway

Host Specific Configuration

dhcpcd może skonfigurować interfejsy w zależności od sieci hosta. To używa protokołu ARP (Address Resolution Protocol) do sondowania hostów na podstawie adresu MAC lub IP przed próbą rozwiązania DHCP.

 interface bge0 arping 192.168.0.1 # My specific 192.168.0.1 network profile dd:ee:aa:dd:bb:ee static ip_address=192.168.0.10/24 # A generic 192.168.0.1 network profile 192.168.0.1 static ip_address=192.168.0.98/24

Możesz przyspieszyć DHCP przez wyłączenie sondowania ARP, jeśli nie używasz tych funkcji i masz prostą sieć.

 noarp

Używaj różnych plików wpa_supplicant

Możliwe jest skonfigurowanie dhcpcd tak, aby używał różnych plików wpa_supplicant.conf dla określonego interfejsu bezprzewodowego.

Utwórz plik o nazwie wpa_supplicant-"$interface".conf w /etc/wpa_supplicant/ np. wpa_supplicant-wlan0.conf będzie używany tylko przez wlan0

/etc/wpa_supplicant/wpa_supplicant.conf będzie używany dla wszelkich innych interfejsów bezprzewodowych.

Podłączanie komputera do Pi

Ostatnie wersje Raspbiana (które używają dhcpcd) pozwalają ssh pracować nad adresem link-local, a avahi (który jest implementacją zeroconf) umożliwia programom odkrywanie hostów działających w sieci lokalnej.

To oznacza, że można podłączyć Pi do komputera (za pomocą kabla Ethernet) lub routera sieci lokalnej i połączyć się bez znajomości adresu IP.

Możesz łatwo połączyć się z Linux i OS X z ssh [email protected] (domyślna nazwa hosta to raspberrypi) To powinno działać z popularnych programów GUI ssh.This jest czasami problematyczne z niektórych wersji systemu Windows i sieci, które używają .local w niestandardowy sposób. (Patrz https://en.wikipedia.org/wiki/.local)

UWAGA .localrozdzielczość nie zawsze działa np. w rsync. Poniższe powinny rozwiązać IP (i mogą być zawarte w bash skryptów)
RemotePi=$(getent hosts hostname.local | awk '{ print }')

Jeśli twój system nie ma getent do zapytania hosts np. macOS można użyć następujących:-
RemotePi=$(arp -n hostname.local | awk '{x = ; gsub(//, "", x); print x }')

Jeśli masz wiele Pi musisz upewnić się, że każdy Pi ma unikalną nazwę hosta.

Możesz użyć kabla krosowanego, ale nie jest to konieczne (większość nowoczesnych interfejsów automatycznie wykrywa).

Jedną z wad bezpośredniego połączenia jest to, że Pi nie będzie miał dostępu do Internetu, a data nie zostanie ustawiona. Możesz skopiować datę z hosta, uruchamiając ssh [email protected] sudo date -s$(date -Ins) przed połączeniem.

Zakres:

Tutorial ten jest o ustawieniu normalnej instalacji Raspbian, aby uzyskać dostęp do Internetu za pomocą dołączonego oprogramowania. Obejmuje on również połączenia z innymi komputerami w tej samej sieci.

Jest on przede wszystkim skierowany do nowych użytkowników, którzy mają problemy z uruchomieniem swojego Pi (zwłaszcza WiFi).

Nie obejmuje on:-

  • Innych menedżerów sieci.
  • Uruchamianie zaawansowanych sieci na Pi (np. serwery DHCP, tunelowanie, VPN, punkt dostępu).
  • Używanie ipv6 (chociaż jeśli masz sieć ipv6, to powinno działać).
  • Alternatywne konfiguracje sieci. (Istnieje wiele różnych sposobów konfigurowania sieci.)

.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.