Li tibgħat il-mistoqsija DNS ta' klijent WireGuard lejn resolver ieħor jidher bħala regola waħda u jġib ruħu bħala tliet deċiżjonijiet. Id-destinazzjoni trid tinkiteb mill-ġdid, il-pakkett irid jiġi mgħoddi, u r-risposta trid issib triqha lura mill-istat tat-traduzzjoni li ħoloq il-gateway. Aqbeż it-tielet u l-mistoqsija toħroġ nadifa filwaqt li l-klijent jistenna għal dejjem.

Ħu l-eżempju ta' klijenti awtorizzati f'10.77.0.0/24 li jaslu minn wg0, jistaqsu dwar l-indirizz imħabbar 10.77.0.1 u jeħtieġu resolver f'203.0.113.53. L-indirizz upstream huwa placeholder tad-dokumentazzjoni, mhux servizz li qed jaħdem.

Ir-ridirezzjoni ta' mistoqsija tbiddel biss id-destinazzjoni tagħha

Regola NAT tad-destinazzjoni f'PREROUTING tikteb mill-ġdid l-indirizz qabel ma tittieħed id-deċiżjoni tar-routing, għalhekk il-pakkett imbagħad jiġi routed lejn id-destinazzjoni l-ġdida minflok dik l-antika. L-indirizz tas-sors tal-klijent ma jiġix mittiefes minn dik l-operazzjoni. Huwa għalhekk li regola li tidher kompluta xorta tista' tipproduċi silenzju: it-talba issa tivvjaġġa lejn resolver li qatt ma sama' dwar il-firxa privata tal-klijent. Il-gateway ittraduċa qasam wieħed u iret it-tieni problema.

Iż-żewġ trasporti DNS jeħtieġu regoli li jaqblu, għax klijent jerġa' lura għal TCP meta risposta tinqata'.

Ir-regoli hawn taħt jagħżlu interface waħda li tidħol, firxa waħda ta' klijenti u indirizz wieħed tad-destinazzjoni oriġinali. Xejn ieħor fuq il-gateway ma jiġi affettwat, u mistoqsija mill-gateway stess ma taqbel xejn.

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A PREROUTING -i wg0 -s 10.77.0.0/24 -d 10.77.0.1 -p udp --dport 53 -j DNAT --to-destination 203.0.113.53:53
iptables -t nat -A PREROUTING -i wg0 -s 10.77.0.0/24 -d 10.77.0.1 -p tcp --dport 53 -j DNAT --to-destination 203.0.113.53:53

Il-mogħdija tar-risposta hija deċiżjoni separata

Żewġ arranġamenti jħallu r-risposta tirritorna, u li tagħżel waħda kmieni jiffranka sessjoni tad-debugging. Jew ir-resolver upstream għandu rotta lura lejn 10.77.0.0/24 permezz ta' dan il-gateway, jew il-gateway jittraduċi s-sors fil-ħruġ sabiex ir-risposta tasal f'indirizz li l-upstream diġà jaf. It-tnejn jaħdmu; wieħed biss jaqbel mal-kontroll li għandek fuq l-upstream.

Ir-routing jistħoqqlu l-ewwel tentattiv, għax iżomm l-indirizz tal-klijent viżibbli għar-resolver u jevita t-tieni saff tat-traduzzjoni. Meta l-upstream ikun barra mill-kontroll tiegħek, it-traduzzjoni tas-sors fuq l-interface tal-ħruġ speċifika hija l-għażla prattika.

Illimita dik it-traduzzjoni daqstant dejqa tar-ridirezzjoni, inkella r-regola ssir NAT għall-użu ġenerali għal kull ma jiġri jaqbel magħha:

iptables -t nat -A POSTROUTING -s 10.77.0.0/24 -d 203.0.113.53 -o eth0 -p udp --dport 53 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.77.0.0/24 -d 203.0.113.53 -o eth0 -p tcp --dport 53 -j MASQUERADE

It-traċċar tal-konnessjonijiet iżomm il-mapping imqabbel, għalhekk ir-risposta tinkiteb mill-ġdid lura għat-tuple oriġinali tal-klijent fit-triq lura. Mingħajr ir-regola tal-ħruġ, ir-resolver jibgħat ir-risposta tiegħu lejn indirizz privat li ma jistax jilħaq, u l-klijent jara timeout minflok żball.

Ikteb ir-regoli idjaq milli tidher il-mansjoni

Il-permess tal-forwarding jappartjeni għall-istess ambitu. Ħalli l-fluss mill-klijent għar-resolver u t-traffiku tar-ritorn li conntrack diġà jirrikonoxxi, minflok taċċetta kull konnessjoni DNAT fuq il-magna. Aċċettazzjoni ġenerali tawtorizza wkoll forwarding tal-ports li m'għandhomx x'jaqsmu ma' DNS.

Ir-resolver tal-gateway stess huwa triq tal-kodiċi differenti. Mistoqsija maħruġa lokalment tgħaddi minn OUTPUT, għalhekk it-testjar mill-shell tal-gateway ma jeżerċita la r-regola PREROUTING u lanqas il-politika tal-forwarding. Huwa għalhekk li test lokali jista' jgħaddi filwaqt li kull klijent jonqos, u l-maqlub huwa daqstant komuni.

Xejn hawn ma jkopri DNS fuq HTTPS fil-port 443 jew DNS fuq TLS fil-port 853, u xejn ma jkopri IPv6. Klijent b'resolver IPv6 ikkonfigurat se jinjora bil-ferħ l-arranġament kollu.

X'juri mistoqsija friska

It-traċċar tal-konnessjonijiet jiftakar mappings preċedenti, għalhekk mistoqsija mibgħuta qabel bidla fir-regola tista' tiġi mwieġba mill-istat antik u tagħmel ir-regola l-ġdida tidher miksura. Ibda b'port tas-sors ġdid u, fejn il-klijent jaħżen ir-risposti, b'isem ġdid.

dig @10.77.0.1 example.com A +short
conntrack -L -p udp --dport 53 | head

L-ewwel kmand juri jekk il-mogħdija tal-klijent tissolvix xejn, u t-tieni juri t-traduzzjoni li l-gateway fil-fatt installa, inklużi ż-żewġ direzzjonijiet tat-tuple. Mapping li jindika lejn ir-resolver it-tajjeb b'counter tar-risposti mwaħħal fiż-żero hija problema tal-mogħdija tar-ritorn u mhux tal-filtrazzjoni.

Ikkonferma li r-resolver jaf l-ismijiet li tistenna qabel ma tirridiriexi xejn. Sostitut li jwieġeb għal ismijiet pubbliċi imma mhux għaż-żona privata tiegħek jibdel tfittxija li taħdem fi NXDOMAIN li tidher bħal tunnel miksur. Ittestja r-resolver direttament, mill-gateway, qabel ma tkun involuta l-mogħdija tal-klijent. U ir-referenza tal-estensjonijiet tal-iptables jiddokumenta s-semantika tad-DNAT u l-masquerade li jiddependu fuqha dawn ir-regoli.

Artikli relatati