So was
Internet <=> [Router WifiAP] <~~~> [(wlan0) RPi (eth0)] <=> [Wired LAN Device(Kabelgebundenes LAN-Verbindungsgerät)]
TL;DR
Brennen Sie Raspbian (2020-02-13-raspbian-buster-lite
) auf microSD.
Laden Sie die [Zip-Datei (mt08-rpibridge-20200416-1.zip
)] herunter und entpacken Sie sie (https://github.com/mt08xx/files/raw/master/mt08-rpibridge-20200416-1.zip). Machen
-- rpibridge.sh
: Konfigurationsskript
--ssh
: ssh Login zulassen
--wpa_supplicant.conf
: <= SSID und Passwort bearbeiten. An einigen Stellen country =
```bash:wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP
network={
ssid="---SSID---"
psk="---password---"
}
```
Kopieren Sie die drei ↑ auf das Laufwerk (FAT32), wo Sie die Dateien von Windows auf der microSD sehen können.
Setzen Sie es in die Raspeltorte ein und starten Sie es. (Die Konfigurationsdatei sollte eine Verbindung zu Wifi herstellen.)
Melden Sie sich mit ssh an (Standardkennwort ist raspberry
) ssh pi @ raspberrypi.local
Führen Sie ↓ aus, um
sudo / boot / rpibridge.sh
herunterzuladen, zu konfigurieren und neu zu starten
Oben
--Raspberry Pi 4B
(Ich denke, es funktioniert mit 3B / 3B + / 2B und USB Wifi Dongle, aber ich frage mich, ob die Leistung gut ist.)
2020-02-13-raspbian-buster-lite
wlan0
)eth0
)
--IP wird mit derselben Netzmaske / 32 (z. B. 192.168.1.5/32) gesetzt, die wlan0
zugewiesen ist[Hinweis] WiFi-Eth Bridge AP auf Raspberry Pi 3 https://qiita.com/mt08/items/8eca5e2535abce9297a4
Workaround for a wifi bridge on a Raspberry Pi with proxy arp https://raspberrypi.stackexchange.com/q/88954/79866
--Wenn du es brauchst
rpibridge.sh
#!/usr/bin/env bash
set -e
[ $(id -u) -ne 0 ] && echo "try: sudo $0" >&2 && exit 1
apt-get update && apt-get install -y parprouted dhcp-helper
grep '^denyinterfaces eth0' /etc/dhcpcd.conf || echo denyinterfaces eth0 | tee -a /etc/dhcpcd.conf
sed -i -e 's/^#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/' /etc/sysctl.conf
systemctl stop dhcp-helper
systemctl enable dhcp-helper
echo DHCPHELPER_OPTS=\"-b wlan0\" | tee /etc/default/dhcp-helper
# Avahi: enable-reflector=yes
sed -i -e 's/^#enable-reflector=no/enable-reflector=yes/' /etc/avahi/avahi-daemon.conf
cat <<'EOF' >/etc/systemd/system/parprouted.service
[Unit]
Description=proxy arp routing service
Documentation=https://qiita.com/mt08/items/00102a6d513194ea5a92
After=dhcpcd.service
[Service]
Type=forking
# Restart until wlan0 gained carrier
Restart=on-failure
RestartSec=5
TimeoutStartSec=30
ExecStartPre=/bin/echo 'parprouted: wlan0 is online'
# clone the dhcp-allocated IP to eth0 so dhcp-helper will relay for the correct subnet
ExecStartPre=/sbin/ip addr flush dev eth0
ExecStartPre=/bin/bash -c '/sbin/ip addr add $(/sbin/ip -4 addr show wlan0 | /bin/grep -Po "\\d+\\.\\d+\\.\\d+\\.\\d+\/")32 dev eth0'
ExecStartPre=/sbin/ip link set dev eth0 up
ExecStartPre=/sbin/ip link set wlan0 promisc on
# v minus sign
ExecStart=-/usr/sbin/parprouted eth0 wlan0
ExecStopPost=/sbin/ip link set wlan0 promisc off
ExecStopPost=/sbin/ip link set dev eth0 down
ExecStopPost=/sbin/ip addr flush dev eth0
[Install]
WantedBy=multi-user.target
EOF
systemctl enable parprouted.service
systemctl daemon-reload
reboot
Recommended Posts