Raspberry Pi Access Point mit systemd: Unterschied zwischen den Versionen
Nick (Diskussion | Beiträge) |
Nick (Diskussion | Beiträge) |
||
| Zeile 2: | Zeile 2: | ||
==Vorbereitung systemd== | ==Vorbereitung systemd== | ||
Prüfen ob systemd-networkd vorhanden ist. Es sollte Loaded: loaded ... da stehen | Prüfen ob systemd-networkd vorhanden ist. Es sollte Loaded: loaded ... da stehen. | ||
systemctl status systemd-networkd | systemctl status systemd-networkd | ||
Alte Netzwerkkonfigurationen deaktivieren | Alte Netzwerkkonfigurationen deaktivieren. | ||
sudo update-rc.d networking remove | sudo update-rc.d networking remove | ||
DNS systemd-resolved aktivieren und auf (Loaded: loaded ... enabled) prüfen | DNS systemd-resolved aktivieren und auf (Loaded: loaded ... enabled) prüfen. | ||
sudo systemctl enable systemd-resolved | sudo systemctl enable systemd-resolved | ||
sudo systemctl start systemd-resolved | sudo systemctl start systemd-resolved | ||
sudo systemctl status systemd-resolved | sudo systemctl status systemd-resolved | ||
Link für DNS Konfiguration setzen | Link für DNS Konfiguration setzen. | ||
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf | sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf | ||
| Zeile 32: | Zeile 32: | ||
==WLAN AccessPoint== | ==WLAN AccessPoint== | ||
WLAN Netzwerkkonfigurationdatei | Bearbeiten der WLAN Netzwerkkonfigurationdatei. | ||
sudo vim /etc/systemd/network/wlan0_AP.network | sudo vim /etc/systemd/network/wlan0_AP.network | ||
| Zeile 46: | Zeile 46: | ||
sudo apt-get install hostapd -y | sudo apt-get install hostapd -y | ||
Bearbeiten der AccesPoint-Konfigurationdatei. | |||
sudo vim /etc/hostapd/hostapd.conf | sudo vim /etc/hostapd/hostapd.conf | ||
| Zeile 72: | Zeile 72: | ||
wpa_passphrase=testtest | wpa_passphrase=testtest | ||
Ausführbar machen | Ausführbar machen. | ||
sudo chmod 600 /etc/hostapd/hostapd.conf | sudo chmod 600 /etc/hostapd/hostapd.conf | ||
Konfiguration für automatisches starten | Konfiguration für automatisches starten. | ||
sudo vim /etc/default/hostapd | sudo vim /etc/default/hostapd | ||
Mit folgendem Inhalt | Mit folgendem Inhalt: | ||
RUN_DAEMON=yes | RUN_DAEMON=yes | ||
DAEMON_CONF="/etc/hostapd/hostapd.conf" | DAEMON_CONF="/etc/hostapd/hostapd.conf" | ||
==DNS-Server dnsmasq== | ==DNS-Server dnsmasq== | ||
Installation | Installation des DNS-Servers. | ||
sudo apt-get install dnsmasq -y | sudo apt-get install dnsmasq -y | ||
Konfiguration der DNS-Servers | Konfiguration der DNS-Servers. | ||
sudo vim /etc/dnsmasq.conf | sudo vim /etc/dnsmasq.conf | ||
Mit folgenden Inhalt | Mit folgenden Inhalt: | ||
#DHCP-Server aktiv für WLAN-Interface | #DHCP-Server aktiv für WLAN-Interface | ||
interface=wlan0 | interface=wlan0 | ||
| Zeile 103: | Zeile 102: | ||
dhcp-option=option:dns-server,192.168.1.1 | dhcp-option=option:dns-server,192.168.1.1 | ||
Test des DNS-Servers | Test des DNS-Servers. | ||
dnsmasq --test -C /etc/dnsmasq.conf | dnsmasq --test -C /etc/dnsmasq.conf | ||
sudo systemctl restart dnsmasq | sudo systemctl restart dnsmasq | ||
| Zeile 110: | Zeile 109: | ||
==Routing== | ==Routing== | ||
Konfiguration des routings | Konfiguration des routings. | ||
sudo vim /etc/sysctl.conf | sudo vim /etc/sysctl.conf | ||
Mit folgenden Inhalt | Mit folgenden Inhalt: | ||
net.ipv4.ip_forward=1 | net.ipv4.ip_forward=1 | ||
net.ipv6.conf.all.forwarding=1 | net.ipv6.conf.all.forwarding=1 | ||
Firewallkonfiguration | Firewallkonfiguration. | ||
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE | sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE | ||
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT | sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT | ||
Version vom 22. Februar 2018, 11:18 Uhr
Ab Raspbian Jessie läuft der Raspi mit dem Init-Systems "systemd". Auf diesem System wird ein WLAN AccessPoint mit eigenem DHCP realisiert. Die Internetdaten werden vom Ethernet zum AccessPoint geroutet.
Vorbereitung systemd
Prüfen ob systemd-networkd vorhanden ist. Es sollte Loaded: loaded ... da stehen.
systemctl status systemd-networkd
Alte Netzwerkkonfigurationen deaktivieren.
sudo update-rc.d networking remove
DNS systemd-resolved aktivieren und auf (Loaded: loaded ... enabled) prüfen.
sudo systemctl enable systemd-resolved sudo systemctl start systemd-resolved sudo systemctl status systemd-resolved
Link für DNS Konfiguration setzen.
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
Unter systemd kann die Netzwerkkonfiguration in mehreren Dateien eingetragen werden und müssen im Verzeichnis /etc/systemd/network/ liegen. Dabei müssen die Netzwerkkonfigurationdateien auf .network enden. Wie z.B. unsere Ethernetkonfiguration eth0_dhcp.network mit folgendem Inhalt:
[Match] Name=eth0
[Network] DHCP=yes
Das systemd-networkd aktivieren und prüfen. (Configured, Fehler no Hostname -> reboot)
sudo systemctl enable systemd-networkd sudo systemctl start systemd-networkd sudo systemctl status systemd-networkd
In der DNS-Konfigurationsdatei sollte hinter nameserver die IP des DNS-Servers stehen. cat /etc/resolv.conf
WLAN AccessPoint
Bearbeiten der WLAN Netzwerkkonfigurationdatei.
sudo vim /etc/systemd/network/wlan0_AP.network
Mit folgenden Inhalt:
[Match] Name=wlan0
[Network] Address=192.168.1.1/24
Hostpad
Installation
sudo apt-get install hostapd -y
Bearbeiten der AccesPoint-Konfigurationdatei.
sudo vim /etc/hostapd/hostapd.conf
Mit folgendem Inhalt:
# WLAN-Router-Betrieb # Schnittstelle und Treiber interface=wlan0 #driver=nl80211 # WLAN-Konfiguration ssid=SSID channel=1 hw_mode=g ieee80211n=1 ieee80211d=1 country_code=DE wmm_enabled=1 # WLAN-Verschlüsselung auth_algs=1 wpa=2 wpa_key_mgmt=WPA-PSK rsn_pairwise=CCMP wpa_passphrase=testtest
Ausführbar machen.
sudo chmod 600 /etc/hostapd/hostapd.conf
Konfiguration für automatisches starten.
sudo vim /etc/default/hostapd
Mit folgendem Inhalt:
RUN_DAEMON=yes DAEMON_CONF="/etc/hostapd/hostapd.conf"
DNS-Server dnsmasq
Installation des DNS-Servers.
sudo apt-get install dnsmasq -y
Konfiguration der DNS-Servers.
sudo vim /etc/dnsmasq.conf
Mit folgenden Inhalt:
#DHCP-Server aktiv für WLAN-Interface interface=wlan0
#DHCP-Server nicht aktiv für bestehendes Netzwerk no-dhcp-interface=eth0
# IPv4-Adressbereich und Lease-Time dhcp-range=192.168.1.100,192.168.1.150,24h
#DNS dhcp-option=option:dns-server,192.168.1.1
Test des DNS-Servers.
dnsmasq --test -C /etc/dnsmasq.conf sudo systemctl restart dnsmasq sudo systemctl status dnsmasq sudo systemctl enable dnsmasq
Routing
Konfiguration des routings.
sudo vim /etc/sysctl.conf
Mit folgenden Inhalt:
net.ipv4.ip_forward=1 net.ipv6.conf.all.forwarding=1
Firewallkonfiguration. sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
sudo apt-get install iptables-persistent