Raspberry Pi webserver - Statická IP adresa

SSH přístup je důležitý, ale pokud se bude „malině“ nastavovat každou chvíli jiná IP adresa, tak není moc použitelný. Jak tedy nastavit aby Raspberry Pi mělo stále stejnou adresu?

Co máme nastavit?

Nejprve pro jistotu znovu zjistíme, co je potřeba nastavit.
Pomocí příkazu

ifconfig


si vypíšeme aktuální nastavení síťových adaptérů. Potřebujeme najít řádky s inet addr:. Hledání nám opět může usnadnit použití příkazu grep

ifconfig | grep "inet addr:"


Výstup pak vypadá například takto:

inet addr:127.0.0.1 Mask:255.0.0.0
inet addr:192.168.1.104 Bcast:192.168.1.255 Mask:255.255.255.0


Adresa Raspberry Pi je tedy 192.168.1.104.

Jako další krok musíme zjistit nastavení výchozí brány a DNS serveru.
Výchozí bránu zjistíme pomocí příkazu

route -n


Parametr -n nastavuje aby ve výsledku byly IP adresy místo názvů brány.
Výsledek příkazu vypadá například

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    202    0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     202    0        0 eth0


Adresa výchozí brány je tedy 192.168.1.1.

Adresu DNS serveru zjistíme například ze souboru /etc/resolv.conf.

cat /etc/resolv.conf


V tomto souboru se nachází aktuální nastavení DNS serverů. Hledáme řádky obsahující nameserver.
Hledání nám opět může usnadnit grep 🙂

cat /etc/resolv.conf | grep "nameserver"


Výstup pak vypadá například takto

nameserver 192.168.1.1


Adresa 192.168.1.1 je tedy hledaná adresa DNS serveru.

Jak to tedy nastavit?

V tomto okamžiku již máme zjištěny všechny potřebné údaje a můžeme je nastavit napevno.

Nejprve je dobré zálohovat si aktuální nastavení souboru /etc/dhcpcd.conf.

sudo cp /etc/dhcpcd.conf /etc/dhcpcd.conf.bak


Nyní již můžeme tento soubor můžeme zeditovat.

sudo vim /etc/dhcpcd.conf


a doplnit do něj následující statické nastavení.
Pro připojení kabelem:
interface eth0
static ip_address=192.168.1.104/24

static routers=192.168.1.1
static domain_name_servers=192.168.1.1

Pro připojení přes Wi-fi:
interface wlan0
static ip_address=192.168.1.104/24

static routers=192.168.1.1
static domain_name_servers=192.168.1.1

Jako static ip_address nastavíme požadovanou IP adresu pro Raspbery Pi. Jako static routers nastavíme adresu výchozí brány a jako static domain_name_servers nastavíme adresy DNS serverů. Pokud potřebuje zadat více adres DNS serverů oddělujeme je mezerou (například static domain_name_servers=8.8.8.8 8.8.8.4).

Pokud nyní Raspberry Pi restartujeme pomocí příkazu

sudo reboot


Tak při dalším nastartování již bude mít „malina“ statickou IP adresu.

Při nastavování je nutné brát ohled na to, že některé DHCP servery mají pro statické IP adresy vyhrazen určitý rozsah a zbytek pak přidělují. Takže pokud „malině“ nastavíte IP adresu mimo tento rozsah a pak nebude nějakou dobu připojena, tak může dojít ke kolizi v nastavení sítě, protože DHCP server její IP adresu přiřadil jinému počítači.
Například router Turris má rozsah pro statické IP adresy nastaven od 2 do 100 a DHCP přiděluje adresy od 101 do 254.

Webserver

- (28. 5. 2019)

Jsem programátor, horolezec a tak trochu FlexiBee fanatik :-).
Na CharlieBlogu sepisuji své nápady a poznatky už od roku 2006.

Powered by CharlieBlog Engine v2.3 - Login