Gaste-Wi-Fi bly die hoofroete gebruik: gee dit sy eie uitgang
'n SSID is nie 'n roete nie. Gaste bly deur die WAN uitgaan totdat 'n aparte subnet, 'n reël op grond van die bron en 'n passende antwoordpad almal na die tonnel wys.
Jy het 'n gasnetwerk geskep, 'n roete daarvoor bygevoeg, en die gaste gaan steeds deur jou normale internetverbinding uit. Die tonnel is op, die hoof-LAN werk, en die gaste-toestelle rapporteer 'n adres in die reeks wat jy toegewys het, so niks lyk stukkend nie. Wat gewoonlik ontbreek, is nie 'n roete nie, maar 'n keurder: die router besluit die pad voordat dit oorweeg op watter koppelvlak die pakkie aangekom het, en tensy iets gasverkeer eksplisiet pas, erf daardie verkeer die verstek. Die oplossing is 'n segment, 'n beleidsreël en 'n antwoordpad, in daardie volgorde.
Die simptoom: gaste gaan steeds deur die WAN uit
Die aanduiding is die uitgangsadres. 'n Gastoestel wat die internet deur die tonnel bereik, sal die tonnelverskaffer se adres rapporteer, en een wat die verstek geërf het, sal jou normale verbinding rapporteer. Vergelyk 'n gastoestel en 'n hoof-LAN-toestel langs mekaar, want die interessante geval is wanneer hulle verskil van wat jy opgestel het en met mekaar ooreenstem.
Die tweede aanduiding is die afwesigheid van enige verkeer op die tonnelkoppelvlak terwyl gaste blaai. As die tellers nie beweeg nie, is die beleid nooit toegepas nie, en om die tonnel self aan te pas kan nie help nie.
Stap 1: 'n regte segment, nie net 'n naam nie
'n SSID-naam skep nie isolasie nie. Kontroleer dat die gasnetwerk op sy eie koppelvlak, VLAN of brug eindig, en dat die adresreeks verskil van die vertroude LAN. Op baie verbruikerstoegangspunte word die gas-SSID in dieselfde segment as alles anders oorbrug, wat die res van hierdie werk onmoontlik maak totdat dit reggestel is.
Bevestig dan die gasreeks en sy DHCP-bediener, en hou die oplosser-instellings by daardie segment eerder as by die hele router. 'n Gassubnet wat net as 'n opmerking in 'n firewall-reël bestaan, is nie 'n segment nie, en die router sal geen koppelvlak hê om teen te pas nie.
Moet nie gaste in die hoof-LAN oorbrug om die VPN makliker op te stel nie. Dit ruil die isolasie wat jy wou hê vir 'n roetekortpad, en dit is die gewone rede waarom 'n gasnetwerk toegang tot die drukker en die NAS kry.
Stap 2: kies die tonnel volgens bron
Roetetabelle word volgens bestemming gekies, so 'n reël wat sê dat 0.0.0.0/0 na die tonnel gestuur moet word, geld vir almal. Beleidsroetering voeg 'n tweede dimensie by: kies die tabel volgens bronadres. Op 'n Linux-gebaseerde router is dit 'n bykomende reël plus 'n toegewyde tabel, en die volgorde maak saak omdat die eerste passende reël wen:
ip rule add from 192.168.60.0/24 lookup 100 priority 1000
ip route add default dev wg0 table 100
ip route get 1.1.1.1 from 192.168.60.10
Daardie laaste opdrag antwoord die vraag direk: watter koppelvlak sal hierdie bron vir hierdie bestemming gebruik. Voer dit voor en ná die verandering uit en jy sal weet of die beleid in werking getree het sonder om 'n blaaier aan te raak.
Die meeste router-firmware druk dieselfde ding uit as 'n koppelvlakreël of 'n brongebaseerde gateway-keuse. Watter sintaksis jou platform ook al gebruik, die beginsel is dieselfde: pas op die inkomende koppelvlak of bronvoorvoegsel, en oorheers dan die roete net vir daardie passing. 'n Reël wat op die bestemming pas, kan nie 'n gas van 'n huishoudelike toestel onderskei nie.
Stap 3: die antwoordpad en vertaling
'n Pakkie wat deur die tonnel uitgaan, moet terugkom. Óf die tonnel-eweknie ken 'n roete terug na die gasvoorvoegsel, óf die router vertaal die gasbron in die tonneladres. Kies een en skryf dit neer, want die foutmodusse lyk anders: 'n ontbrekende terugroete gee jou 'n verbinding wat vestig en nooit antwoord nie, terwyl ontbrekende vertaling dikwels glad niks lewer nie.
nft add rule ip nat POSTROUTING ip saddr 192.168.60.0/24 oifname "wg0" masquerade
As jy vertaling kies, onthou dat die eweknie nou een adres vir elke gas sien, so enige beleid per kliënt aan die ander kant is weg. As jy eerder adresse bewaar, het beide kante die gasvoorvoegsel in hul roetering en hul beleid nodig, wat meer werk en meer voorspelbaar is.
IPv6 het sy eie reël nodig. 'n Beleid wat vir IPv4 geskryf is, dek nie die ander familie nie, en 'n gastoestel met werkende IPv6 sal dit graag gebruik terwyl jou sorgvuldig geroteerde IPv4-pad ledig sit. Roet beide families of skakel IPv6 op die gassegment af, maar moenie aanvaar dat die gekombineerde reël wat jy geskryf het dek wat die toestel werklik doen nie. Toets met 'n kliënt wat beide families geaktiveer het, want dit is die geval waarvoor die ontwerp moet oorleef. 'n Skootrekenaar wat IPv6 verkies, lyk reg in 'n slegs-IPv4-toets en lek in die werklike een.
Toets isolasie, nie net blaai nie
Blaai bewys dat die uitgang verander het. Dit bewys nie dat die segment geïsoleer is nie, en isolasie is die rede waarom die gasnetwerk bestaan. Probeer van 'n gastoestel af die router se administrasiekoppelvlak, 'n vertroude LAN-gasheer en 'n diens wat geweier behoort te word bereik; al drie behoort te misluk, en die mislukking behoort 'n beleidsbesluit te wees eerder as 'n tydsverloop wat niemand kan verduidelik nie.
Toets dan 'n hoof-LAN-toestel en bevestig dat sy uitgang nie verander het nie. Dit is die regressie wat hierdie ontwerp die meeste veroorsaak: 'n breë reël bedoel vir gaste, toegepas op elke koppelvlak omdat die passing op die bestemming geskryf is.
Laastens, besluit wat gebeur wanneer die tonnel af is. Gaste kry óf geen internet nie óf val terug na 'n pad wat jy goedkeur, en om dit onbeslis te laat beteken 'n stil terugval na die normale verbinding, wat presies die lek is wat die gasbeleid moes voorkom. Die resep vir roetering van internetverkeer verduidelik dieselfde padkeuse vir 'n router gebaseer op pfSense.
DNS wat deur die router begin word, is die geval wat mense laaste verras. As gaste die router as hul oplosser gebruik, volg die router se eie navrae die router se roete eerder as die gasreël, so opsoektogte kan deur die normale verbinding uitgaan terwyl die toepassingverkeer dit nie doen nie. Hou die segment, die oplosser en die foutbeleid in een nota, en die volgende persoon kan al drie nagaan sonder om die ontwerp weer af te lei.