Wi-Fi-klient og hotspot på én radio: hva som bryter sammen
Et Pi-hotspot kan se friskt ut mens Wi-Fi-oppstrømslenken stopper. Les grensesnittkombinasjonene og kanalgrensene til den installerte radioen før du klandrer VPN-en.
Telefonen din blir værende koblet til hotspoten mens oppstrømslenken ikke slipper noe gjennom. Pi-en rapporterer fortsatt en Wi-Fi-tilknytning, aksesspunktet sender fortsatt beacon, og hver forespørsel går i tidsavbrudd. Én radio betjener to roller samtidig, og én av dem vinner når den andre trenger kanalen. Før du rører VPN-en, må du fastslå om den installerte driveren og fastvaren i det hele tatt godtar det rolleparet.
Symptomet peker på radioen, ikke på tunnelen
Følg feilen i rekkefølge, og den slutter å se ut som en rutingsfeil. En klient kobler til hotspoten, får en adresse og laster en side eller to. Deretter knytter stasjonsgrensesnittet seg på nytt til oppstrømsruteren etter en roaming, en nøkkelny generering eller et kort signaldykk. Aksesspunktet starter enten beacon på nytt eller lar klientene sine stå uten vei, og VPN-loggen fylles av gjenoppkoblingsforsøk som aldri var årsaken.
To grensesnittnavn gir ikke to radioer. wlan0 og aksesspunktets grensesnitt deler én enhet, én kanaltilstandsmaskin og én fastvareplanlegger. Kjernen viser nøyaktig hvilke rolle- og kanalkombinasjoner den enheten støtter, så les den listen i stedet for å anta at paret virker fordi begge grensesnittene kom opp.
Les kombinasjonen før du endrer noe
Den trådløse stakken rapporterer sin egen kontrakt i avsnittet om grensesnittkombinasjoner i iw list. Hver nummererte kombinasjon lister tillatte rolleantall, hvor mange grensesnitt som kan finnes, og hvor mange forskjellige kanaler disse grensesnittene kan oppta samtidig. En kombinasjon som navngir én stasjon og ett aksesspunkt på én kanal, er den denne utrullingen trenger.
iw list | sed -n '/valid interface combinations/,/^$/p'
Les tallene, ikke bare om ordene finnes. En driver kan støtte stasjonsmodus og aksesspunktmodus hver for seg, mens den eneste lovlige kombinasjonen av begge bare tillater én kanal, et lite grensesnittantall eller et beacon-intervall som hotspoten ikke kan oppfylle. Noen fastvarer slipper også én rolle under en skanning eller nøkkelny generering, noe som ser ut som en ustabil oppstrømslenke snarere enn en kapasitetsgrense. Hvis ingen kombinasjon lister begge rollene, støttes ikke paret, uansett hva hotspot-knappen på skrivebordet foreslår.
cfg80211-dokumentasjonen for grensesnittkombinasjoner beskriver feltene og beacon-begrensningen. Verdier fra én adapter sier ingenting om en annen, så ta vare på utdataene sammen med maskinen i stedet for å generalisere dem.
Kanal- og adresseplanen avgjør resten
Et aksesspunkt må ligge på en kanal radioen kan betjene, og en stasjonsoppstrømslenke må følge oppstrømsaksesspunktet. Når de to beslutningene er uenige, må én rolle starte på nytt. På mange enkeltradio-adaptere speiler hotspoten derfor stasjonskanalen, og en kanalendring oppstrøms tar hotspoten med ned en kort stund.
Planlegg IP-siden atskilt fra radioen. En rutet hotspot bruker vanligvis et privat subnett som 192.168.50.0/24 med Pi-en på 192.168.50.1, en DHCP-pool i det subnettet og Pi-en som resolver-videresender. NetworkManagers delte modus setter opp videresending og adresseoversettelse for det subnettet, men den legger ikke til radiokapasitet og gjør ikke tunnelen til den eneste utgangen. Skriv ned om klientene er broet på lag to eller rutet på lag tre, før du diskuterer VPN-policy.
Testrekkefølge som skiller radio fra ruting
Arbeid utover fra enheten og stopp ved det første trinnet som feiler. Disse avlesningene er trygge på et kjørende system og endrer ingen konfigurasjon. Kjør dem mens en klient er tilknyttet og oppstrømslenken er i den tilstanden du feilsøker.
iw dev
iw dev wlan0 link
nmcli -t -f DEVICE,STATE,CONNECTION device status
ip -br addr show
sysctl net.ipv4.ip_forward
Hvis iw dev wlan0 link ikke viser noen tilknytning, kommer radioproblemet først, og tunnelen er irrelevant. Hvis oppstrømslenken er tilknyttet og klienten ikke har noen adresse, er tilkoblingen og DHCP-autoriteten feil. Hvis klienten har en adresse men ingen tilgjengelighet, mangler videresending, oversettelse eller resolver-levering. Først når både hotspot-veien og oppstrømsveien virker, blir en sviktende tunnel det neste som skal testes.
Noter adapter, driver og fastvare sammen med den godtatte kombinasjonen og kanalregelen. En senere kjerne- eller fastvareoppdatering kan endre den støttede listen, og den noten er det som gjør et mysterium om til en kjent begrensning.