M'hemm l-ebda swiċċ għal kull apparat fuq VPN tar-router; is-swiċċ li qed tfittex huwa shortcut li jikteb regoli tal-policy routing f'ismek. Fil-mument li laptop wieħed, firxa ta' ports waħda, lista ta' indirizzi waħda jew segment LAN wieħed irid juża t-tunnel waqt li kollox ieħor jibqa' fuq il-WAN, inti qed tibni policy route u mhux qed tattiva funzjoni. Ix-xogħol għandu tliet partijiet li jiċċaqilqu, u kull waħda tfalli b'mod differenti: tabella mmarkata mingħajr rotta tidher bħal silenzju, mark applikat fil-chain żbaljat jidher bħallikieku ma ġara xejn, u regola NAT neqsin tidher bħal tunnel li jgħaqqad u ma jġorr xejn. Żewġ partijiet oħra jintilfu għax qatt ma jidhru fir-regola mangle, u dawk huma DNS u IPv6.

Il-mit: it-tunnel hija setting tal-klijent

Klijent VPN fuq in-naħa tar-router jagħmel ħaġa waħda goffa tajjeb: ipoġġi 0.0.0.0/0 fit-tabella ewlenija tar-routing u jdawwarha lejn it-tunnel. WireGuard joħroġha mill-AllowedIPs, OpenVPN minn redirect-gateway imbuttat mis-server, u t-tnejn ibiddlu l-mogħdija għal kull host wara r-router. Id-dħul ta' AllowedIPs jew iż-żieda ta' route-nopull ibiddlu dak li jinstallah il-klijent. Ma jbiddlux lil min tapplika dik l-installazzjoni, għax il-klijent qatt ma jara apparati. Jara biss pakketti.

L-għażla bis-sors jew bid-destinazzjoni hija deċiżjoni tar-routing, għalhekk tappartjeni lis-saff tal-policy tar-router: regola mangle flimkien ma' tabella oħra fuq RouterOS, MARK flimkien ma' ip rule fuq OpenWrt jew DD-WRT, jew regola tal-firewall li l-gateway tagħha huwa t-tunnel fuq pfSense. Ir-riċetta tal-klijent WireGuard ta' Netgate hija dik li għandha tinqara qabel ma wieħed jaqta' bl-addoċċ, għax fuq dik il-pjattaforma l-gateway tar-regola, l-assenjazzjoni tal-interface u l-entrata NAT tal-ħruġ iridu jaqblu qabel ma klijent wieħed juża t-tunnel.

In-nofs l-ieħor tal-mit huwa t-tieni router. Li tixtri kaxxa oħra, jew li ċċaqlaq l-apparat fuq SSID tal-mistednin, spiss jaħdem, u r-raġuni mhix il-hardware: ipoġġi l-apparat fuq is-subnet tiegħu stess, li jagħtik is-selettur tas-sors li l-firmware diġà jifhem. Jekk tista' tiddefinixxi dak is-segment fuq ir-router tiegħek, il-kaxxa żejda ssolvi problema li ma kellekx.

L-ewwel biċċa: tunnel li mhux ir-rotta default

Fuq RouterOS, żid il-klijent mingħajr rotta default u agħti lit-tunnel tabella tiegħu. L-ewwel rotta hija d-default immarkat; it-tieni hi n-nofs tal-falliment.

/ip route add dst-address=0.0.0.0/0 gateway=VPN_GATEWAY_IP routing-mark=vpn distance=1
/ip route add dst-address=0.0.0.0/0 type=unreachable routing-mark=vpn distance=2

Ir-rotta unreachable hija r-raġuni għaliex tabella mmarkata tegħleb lista ta' eċċezzjonijiet fit-tabella ewlenija. Meta t-tunnel jaqa', il-pakketti mmarkati jieħdu minnufih unreachable minflok ma jinżlu bil-kwiet lura għall-WAN, għalhekk il-falliment jidher fil-messaġġ ta' żball tal-applikazzjoni u mhux f'paġna tal-ġeolokazzjoni li tikkontrolla siegħa wara.

RouterOS 7 jifred dak li 6.x żamm flimkien: tiddikjara t-tabella b'/routing table add name=vpn fib, imbagħad tirreferi għaliha b'isem fuq ir-rotta u fir-regola mangle. Snippet 6.x li jikteb routing-mark mingħajr ma jiddefinixxi t-tabella jitgħabba ndif u ma jaqbel ma' xejn. Il-klassiku l-ieħor huma żewġ nofsijiet 0.0.0.0/1, jew żewġ defaults fl-istess distanza f'tabella waħda: il-kernel jagħżel waħda, u l-imġiba tista' tinbidel wara reboot.

It-tieni biċċa: immarka qabel it-tfittxija tar-rotta

Is-selettur jiddeċiedi liema pakketti jidħlu f'dik it-tabella. RouterOS normalment jibda b'lista ta' indirizzi għall-policy tad-destinazzjoni, jew b'indirizz tas-sors għall-policy tal-apparat:

/ip firewall mangle add chain=prerouting src-address=192.168.88.50 action=mark-routing new-routing-mark=vpn
/ip firewall mangle add chain=prerouting dst-address-list=via-vpn action=mark-routing new-routing-mark=vpn
/ip firewall address-list add list=via-vpn address=203.0.113.10

Il-firmware Linux jagħmel l-istess b'mark netfilter u regola li ddawwar pakketti mmarkati fi tabella li mlejtha int:

iptables -t mangle -A PREROUTING -p tcp --dport 27000:27050 -j MARK --set-mark 0x200
ip route add default dev tun0 table 100
ip rule add fwmark 0x200 table 100

Il-chain mhix għażla ta' stil. Meta pakkett jasal għal FORWARD it-tfittxija tar-rotta tkun diġà seħħet, għalhekk MARK jew DROP hemmhekk jistgħu biss jiktbu mill-ġdid jew jarmu. Il-mark irid jinżel f'PREROUTING għat-traffiku mgħoddi u f'OUTPUT għat-traffiku li r-router stess joħloq, fejn jgħixu d-DNS, in-NTP u l-kontrolli tal-aġġornamenti tar-router. Dak il-perkors tal-output huwa r-raġuni tas-soltu għaliex installazzjoni kompletament tunnellata xorta twieġeb mir-resolver tal-ISP fi test ta' tnixxija.

Il-policy tal-apparat teħtieġ qbil li ma jiżloqx. Irriżerva l-indirizz fid-DHCP, jew qabbel interface għal segment iddedikat; indirizz li aktar tard jgħaddi għal apparat ieħor japplika bil-kwiet it-tunnel lill-klijent żbaljat. Pont għal kull SSID bis-subnet tiegħu huwa l-verżjoni aktar durabbli tal-istess idea, u jagħti lir-regoli IPv6 post fejn joqogħdu wkoll.

It-tielet biċċa: NAT, DNS u l-eċċezzjoni LAN

It-traffiku li joħroġ mit-tunnel jeħtieġ indirizz tas-sors li n-naħa l-oħra twieġeb. Illimita t-traduzzjoni għall-interface tat-tunnel: out-interface=VPN_NAME fuq RouterOS, -o tun0 fuq Linux, entrata NAT tal-ħruġ li taqbel fuq pfSense. Regola masquerade mingħajr dak l-iskop terġa' tikteb traffiku li ridt tħalli, u s-sintomu huwa li l-apparat mingħajr tunnel jitlef l-indirizz pubbliku tiegħu.

L-eċċezzjoni LAN tikkawża aktar ħjut ta' appoġġ mit-tunnel innifsu. Jekk it-tabella mmarkata żżomm biss rotta default, destinazzjoni ta' printer jew NAS mill-apparat magħżul taqbel ma' dak id-default u tisparixxi fit-tunnel. Żid ir-rotta LAN fl-istess tabella, jew eskludi s-subnet lokali fis-selettur; it-tnejn jaħdmu, u l-esklużjoni hija aktar faċli tinżamm korretta meta żżid VLANs aktar tard.

DNS jieħu perkors separat. Mistoqsijiet li r-router jgħaddi huma oriġinati mir-router u jsegwu OUTPUT, mhux il-mark mgħoddi, għalhekk laptop kompletament tunnellat xorta jista' jissolva permezz tal-ISP. Idderieġi l-klijenti lejn resolver li jintlaħaq mit-tunnel, jew immarka t-traffiku port-53 tar-router stess, imbagħad iċċekkja l-indirizz solvut minflok ma tassumi li t-tweġiba vvjaġġat mat-talba tal-web.

Meta r-regola taqbel iżda l-app xorta tuża l-WAN

Il-listi tad-destinazzjonijiet jixjieħu ħażin. Isem jissolva f'indirizz li mhuwiex fil-lista, għalhekk it-talba tieħu l-WAN waqt li kull test li għamilt fuq l-indirizz fil-lista ħadem. Aġġorna l-lista mill-istess resolver li juża l-klijent, u ppreferixxi selettur ibbażat fuq is-sors meta tassew trid it-traffiku kollu minn apparat wieħed.

IPv6 hija l-bypass kwiet. L-apparat għandu t-tieni familja ta' indirizzi bir-rotta default u s-sett ta' regoli tiegħu stess, u li tqabbel biss l-indirizz IPv4 huwa nofs il-policy. Applika l-istess selettur għal ip6tables jew l-ekwivalenti nftables, jew iddiżattiva IPv6 f'dak is-segment apposta minflok b'inċident.

Anke l-konnessjonijiet stabbiliti jgħoddu. Entrata conntrack maħluqa qabel il-bidla tkompli ssegwi l-perkors l-antik sakemm tiskadi, għalhekk browser li baqa' miftuħ waqt l-editjar jidher eżattament bħal regola li qatt ma ġiet applikata. Iftaħ konnessjoni ġdida, jew ikklerja l-istat, qabel ma tiġġudika l-policy.

Ivverifika b'żewġ apparati u reboot

Ittestja l-apparat li għandu jkun fit-tunnel u dak li m'għandux, u qabbel it-tieni hop minflok numru tal-veloċità. Traceroute minn kull wieħed juri jew il-gateway tat-tunnel jew il-gateway tal-ISP fit-tieni hop; jekk it-tnejn jidhru l-istess, il-mark jew it-tabella mhux qed jagħmlu dak li tgħid ir-regola. Uża konnessjonijiet ġodda għat-test.

Imbagħad reboot. L-ordni tal-boot hija fejn policy li taħdem issir miksura, għax il-klijent irid ikun ħaj qabel ma tiġi installata r-rotta unreachable, u snapshot salvat li jġib lura s-sett l-antik ta' regoli se jikteb fuq it-tabella tiegħek. Iċċekkja li kull regola tinsab fil-konfigurazzjoni salvata u li d-default immarkat jeżisti wara l-boot, mhux biss wara li ktibtu.

Jekk xi ħaġa tfalli, neħħi l-mark l-ewwel u ara jekk it-traffiku normali jerġax lura, imbagħad neħħi t-tabella. Dak l-ordni jgħidlek jekk qed tiġri wara problema tar-routing jew tal-firewall, u jħalli lill-familja printer jaħdem waqt li tlesti x-xogħol.

Artikli relatati