Telefonen på din broede hotspot får sin adresse og sin gateway et eller andet sted fra, og det er ikke Pi'ens standardrute. At ændre Pi'ens standard ændrer, hvor Pi'en sender sin egen trafik. Telefonen bliver ved med at bruge den gateway, den fik at vide, og når den gateway ligger på det fjerne LAN, krydser dens rammer blot broen. To forbrugere, to beslutninger. Adskillelsen forklarer de fleste rapporter om en hotspot uden internet, mens Pi'en selv har det fint.

To enheder, to forskellige gatewaybeslutninger

Pi'en har sin egen IP-stak og sin egen standardrute. Telefonen har sin egen IP-stak og sin egen standardrute.

ConsumerWho chooses its gatewayWhat carries the traffic
Phone on the bridged APThe remote LAN router, delivered in its client configurationAn Ethernet frame toward that router crosses the AP and TAP bridge
Pi's encrypted connectionThe travel uplink's route toward the VPN peerThe Pi sends its own outer transport packets over the underlay

Den tabel er hele modellen. Telefonens gateway er en adresse på det fjerne LAN, og dens rammer videresendes på lag 2 mod den router. Pi'ens standardrute angår Pi'ens egen ydre transport, som skal nå VPN-peer'en over rejse-uplink'en.

En bro videresender rammer, den router ikke pakker

En Linux-bro videresender Ethernet-rammer efter destinations-MAC, og det er alt, den gør mellem sine porte. Telefonens ramme adresseret til den fjerne routers MAC svitsjes til TAP-porten og krydser tunnelen uden at røre Pi'ens routingtabel. Derfor kan en brudt standardrute på Pi'en efterlade telefonen fungerende, og derfor kan en korrekt ikke reparere en telefon, der fik den forkerte gateway.

TAP bærer Ethernet-rammer og kan være en broport. TUN bærer IP-pakker og kan ikke. Hvis dit design erstattede den ene med den anden, er broen ikke en bro, og resten af dette gælder ikke.

Beslut, hvem der uddeler telefonens lease

DHCP-indstilling 3 er routerindstillingen, og den fortæller klienten, hvilken gateway den skal bruge til sit subnet. Når det fjerne LAN's DHCP-server er den eneste uddeler, får telefonen en fjern gateway, og designet er konsistent. Når noget andet på rejsesiden svarer først, får telefonen en lokal gateway, dens internettrafik forlader via rejse-uplink'en, og dens trafik til det fjerne LAN har slet ingen vej.

Kør én uddeler for det broadcast-domæne, og notér, hvad den uddeler.

Pi'en er et særskilt tilfælde, selv når den tager en adresse fra det samme lease. Beslut bevidst, om den skal installere de ruter, som leaset tilbyder, for en importeret fjernstandard kan trække Pi'ens egen VPN-transport ind i den tunnel, den forsøger at holde i live. Med systemd-networkd er den beslutning UseRoutes= under DHCP-afsnittet; med dhclient er det routers-indstillingen i anmodningslisten.

Hold uplink'en uden for det broede LAN

Den grænseflade, der bærer Pi'ens ydre VPN-forbindelse, må ikke blive en broport. Hvis den gør, svitsjes den krypterede transport ind i det udvidede LAN, og tunnelen ender med at bære sine egne ydre pakker, hvilket fejler på en måde, der ligner pakketab i stedet for en løkke. Hold også AP-evne og brostøtte eksplicitte. En trådløs grænseflade i stationstilstand kan normalt ikke være en broport, fordi 802.11-headeren ikke har plads til den anden MAC-adresse, en bro har brug for.

Definér det udvidede broadcast-domæne, én adresseplan og den rammefiltrering, du faktisk vil have. At tillade VPN-lytteren på Pi'en giver ikke hver broet klient adgang til Pi'ens administrationsservices. Det er særskilte regler, og at behandle dem som én er, hvordan en hotspot stille bliver en åben dør.

Test de fire ting hver for sig, når det bryder

Når telefonen ikke kan nå det fjerne LAN, adskiller fire observationer årsagerne. Kør dem i denne rækkefølge, og stop ved den første, der fejler.

ip route show default
bridge link show
ip -4 neigh show dev br0
tcpdump -ni br0 arp or icmp

Start med leaset: har telefonen en adresse og en gateway på det fjerne subnet? Se derefter på broen, og bekræft, at AP-porten og TAP-porten begge videresender. Læs derefter nabo tabellen, fordi en uopklaret post for den fjerne router betyder, at rammer forlader, og intet svarer. Se til sidst på rammerne på broen, mens telefonen pinger, hvilket fortæller dig, om fejlen overhovedet er under IP.

Notér, hvilken enhed der ejer hver standard, når du er færdig. Én linje dokumentation gør lokal versus fjern udgang til en bevidst klientbeslutning, og broreferencen er værd at have ved siden af.

Relaterede artikler