Jak na Raspberry PI 3 vytvořit WiFi hotspot

Raspberry PI 3 krom dalších vylepšení oproti předchozí verzi dostalo WiFi, které je integrované přímo na desce. Což se přímo nabízí z něj udělat WiFi hotspot.

V tomto článku si ukážeme jak na to… =)


Návod

Balíčky

V prvním kroku si popíšeme s jakými balíčky budeme pracovat.

  • hostapd – Tento balíček umožnuje vytvoření WiFi hotspotu.
  • dnsmasq – Je to kombinace DHCP a DNS serveru.

Balíčky nainstalujeme následujícím příkazem

Konfigurace sítového rozhraní

Nejprve musíme nastavit na rozhraní wlan0 statickou IP adresu.

Nejprve musíme upravit konfigurační soubor dhcpcd tak aby rozhraní wlan0 ignoroval.

Na poslední řádek vložíme:

Dále musíme nastavit naší statickou IP adresu.

Kde z editujeme sekci wlan0 tak aby vypadala takto:

Jako poslední krok restartujeme dhcpcd

A přenačteme nastavní wlan0

Konfigurace hostapd

Jako další musíme nastavit hostapd. Vytvoříme tedy nový konfigurační soubor

a vložíme do něj tento obsah, který následně upravíte dle vlastních požadavků (#8 ssid – název wifi a #41 wpa_passphrase – heslo do wifi). Pokud použijete mezeru vložte celý řetězec do uvozovek.

Po uložení konfiguračního souboru můžeme zkusit zda vše funguje jak má. A to příkazem:

Během několika sekund by jste měli vidět vaší WiFi síť. Pokud se na ní budete pokoušet připojit Váš pokus bude neúspěšný jelikož Vám nebude přidělena žádná IP adresa. Ale to zařídíme níže. Takže vypneme běžící proces WiFi AP kombinací kláves Ctrl+C a budeme pokračovat.

Ještě musíme v konfiguraci hostapd udělat poslední věc. A to aby se WiFi spustila po nabootování. Otevřeme si tento konfigurační soubor

Najděme řádek na kterém se nachází tento zakomentovaný text:

a obsah toho řádku nahradíme tímto:

To nám zajistí že se WiFi AP zapne vždy po startu systému.

Konfigurace dnsmasq

Konfigurační soubor dnsmasq obsahuje velké množství pro nás nepodstatných informací. A proto původní soubor přejmenujeme. A vytvoříme si vlastní…

Do vložíme tento obsah:

Konfigurace IPv4 Forwarding

Aktuálně máme funkční WiFi hotspot na který se mohou připojovat klientská zařízení, kterým je přidělena IP adresa. Zbývá na této síti zprovoznit internet. V našem případě se bude jednat ethernet (eth0).

Nejprve musíme povolit IPv4 Forvarding.

Otevřete si sysctl.conf

A odkomentujte (odstraňte #) řídek na kterém se nachází:

Toto nastavení se projeví až po restartu systému takže buď to restartujte systém a nebo zadejte následující příkaz

Již nám zbývá jen nastavení iptables. Musíme nastavit NAT mezi wlan0 a eth0 (WiFi a Ethernetem). To uděláme jednoduše těmito příkazy:

Toto nastavení se s každým restartem systému smaže. Aby k tomu nedocházelo uložíme si aktuální konfiguraci

Zajistíme aby se s každým startem systému znovu načetla. Upravíme tedy soubor rc.local

a před řádek exit 0 přidáme následující řádek:

Aktuálně jsme hotovy!

Po restartu by vše mělo fungovat jak má.

Pokud se Vám z nějakého důvodu do restartu nechce tak stačí spustit tyto 2 služby.


Poznámka

Pokud Vám něco nefunguje:

  • WiFi hotspot hledejte chybu sekci konfigurace hostapd.
  • WiFi vidíte ale není Vám přidělena IP adresa – sekce Konfigurace dnsmasq.
  • K WiFi se připojíte je Vám přidělena IP ale není funkční internet tak:
    • Zkontrolujte sítové připojení zdrojového adaprétu (v tomto případě eth0).
    • Konfiguraci v sekci IPv4 Forwarding.

Lukáš Vlček

Autor je SW vývojář primárně se zaměřující na platformu .NET Framework/.NET Core. Avšak jiné moderní technologie mu nejsou cizí. Mezi jeho koníčky paří vedle sportu i amatérské "bastlení" s Arduinem a Raspberry Pi.