Comme ça
Internet <=> [Router WifiAP] <~~~> [(wlan0) RPi (eth0)] <=> [Wired LAN Device(Dispositif de connexion LAN filaire)]
--Je souhaite utiliser un périphérique de connexion LAN filaire dans une pièce où seul le LAN sans fil peut être utilisé. C'est comme le partage Internet dans Windows, mais Raspai ne devient pas un serveur DHCP, mais obtient une adresse IP du serveur DHCP d'origine. Le sous-réseau n'est pas non plus divisé.
TL;DR
Gravez Raspbian (2020-02-13-raspbian-buster-lite
) sur microSD.
Téléchargez et décompressez le fichier zip (mt08-rpibridge-20200416-1.zip
) Faire
-- rpibridge.sh
: Script de configuration
--ssh
: ssh Autoriser la connexion
--wpa_supplicant.conf
: <= Modifier le SSID et le mot de passe. Dans certains endroits, country =
```bash:wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP
network={
ssid="---SSID---"
psk="---password---"
}
```
Copiez les trois ↑ sur le lecteur (FAT32) où vous pouvez voir les fichiers de Windows sur la microSD.
Insérez-le dans la tarte à la râpe et démarrez-le. (Le fichier de configuration doit se connecter au Wifi)
Connectez-vous avec ssh (le mot de passe par défaut est raspberry
) ssh pi @ raspberrypi.local
Exécutez ↓ pour télécharger, configurer et redémarrer
sudo / boot / rpibridge.sh
Ci-dessus
--Raspberry Pi 4B
(Je pense que cela fonctionne avec 3B / 3B + / 2B et une clé USB Wifi, mais je me demande si les performances sont bonnes.)
2020-02-13-raspbian-buster-lite
wlan0
)eth0
)
--IP est défini avec le même masque de réseau / 32 (par exemple 192.168.1.5/32) attribué à wlan0
[Note] WiFi-Eth Bridge AP sur 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
--Si tu en as besoin
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