Mae cleientiaid ar y tiwnel yn gallu cyrraedd y giât, ac mae'r giât yn gallu cyrraedd y datryswr mewnol, felly dylai DNS weithio. Nid yw'n gweithio, oherwydd dau ganiatâd gwahanol yw'r rhain ac mae gwasanaeth DNS sy'n gweithio yn drydydd peth. Rhaid i'r gwrandäwr fodoli ar gyfeiriad y gall cleientiaid ei gyrraedd, rhaid i'r wal dân ganiatáu ymholiadau i'r cyfeiriad hwnnw, a rhaid dweud wrth y cleient i'w ddefnyddio. Mae agor y tiwnel yn y ddau gyfeiriad yn datrys y ddau gyntaf ar hap ac yn gadael y trydydd heb ei wneud.

Mae'r gwrandäwr yn wasanaeth lleol â dau gyfeiriad

Tuag i mewn, mae cleient yn anfon ymholiad i gyfeiriad tiwnel y giât ar borth 53. Tuag allan, mae'r daemon yn anfon yr ymholiad hwnnw ymlaen i'w uwch-gyflenwyr cyfluniedig. Rhaid i'r ddau hanner weithio, ac maent yn methu mewn ffyrdd gwahanol.

Nid yw terfyn amser a adroddir gan y cleient a therfyn amser a welir ar y giât yr un nam.

Rhwymwch gyfeiriad y tiwnel, nid pob cyfeiriad

Mae angen cyfeiriad gwrando penodol, modd rhwymo sy'n goddef y tiwnel yn ymddangos ar ôl dechrau, ac un uwch-gyflenwr clir ar enghraifft dnsmasq bwrpasol ar gyfer y gwaith hwn. Dyma'r fersiwn lleiaf a ddefnyddiaf:

listen-address=127.0.0.1,10.90.0.1
bind-dynamic
no-resolv
no-hosts
server=192.168.50.53

bind-dynamic yn rhwymo'r cyfeiriadau unigol ac yn ymdopi pan fydd tun0 yn ymddangos yn ddiweddarach, sy'n bwysig ar westeiwr lle mae'r gwasanaeth VPN yn ailgychwyn. Mae rhestru loopback yn cadw offerynnau lleol i weithio heb ychwanegu gwrandäwr cyhoeddus. no-resolv yn atal y daemon rhag etifeddu uwch-gyflenwyr o ffurfweddiad datryswr y gwesteiwr, ac no-hosts yn atal yr enghraifft hon rhag cyhoeddi ffeil hosts y giât. Nid yw'r un o'r opsiynau hyn yn rhoi caniatâd i unrhyw un ymholi'r gwasanaeth.

Gwiriwch am wrandäwr sy'n bodoli eisoes ar borth 53 cyn dechrau ail ddaemon, a defnyddiwch berchennog ffurfweddiad y dosbarthiad yn hytrach na ffeil grwydredig yn y cyfeiriadur anghywir.

Caniatáwch fewnbwn DNS, nid tramwy'r tiwnel

Y rheolau wal dân sy'n gwneud hyn yn gweithio yw rheolau mewnbwn lleol wedi'u cwmpasu i ryngwyneb y tiwnel, pwll y cleientiaid, cyfeiriad y giât a phorth 53. Mae dwy reol, un i bob protocol, yn ddigon:

sudo ufw allow in on tun0 proto udp from 10.90.0.0/24 to 10.90.0.1 port 53
sudo ufw allow in on tun0 proto tcp from 10.90.0.0/24 to 10.90.0.1 port 53

Mae DNS yn rhedeg dros TCP yn ogystal ag UDP, felly mae rheol UDP yn unig yn gadael atebion mawr yn methu mewn ffordd sy'n edrych yn ysbeidiol. Nid y rhain yw ufw route caniatadau, ac ni ddylent ddod yn ganiatâd eang ar tun0. Mae trefn yr un mor bwysig â chynnwys: mae rheol gynharach sy'n gollwng pob mewnbwn o tun0 yn dal i ennill, ac nid yw ychwanegu caniatâd o dan ollwng terfynol yn creu dim.

Os yw DNS y giât bellach yn rhan o'r dyluniad, adolygwch y polisi cynharach hwnnw yn fwriadol a chofnodwch pam.

Mae hanner yr uwch-gyflenwyr yn llwybr ar wahân

Mae ymholiadau'n gadael y giât o'i chyfeiriad ei hun tuag at y datryswr uwch, felly rhaid i lwybr y giât a'r polisi allbwn tuag at y datryswr hwnnw ganiatáu'r cyfnewid. Mae hon yn rheol wahanol i'r un sy'n gadael cleientiaid gyrraedd y gwrandäwr, ac mae'n methu â symptom gwahanol.

Peidiwch ag ychwanegu allbwn tiwnel heb gyfyngiad i wneud i atebion weithio; nid oes angen hynny ar atebion a olrheinir.

Gwthiwch yr opsiwn, yna gwiriwch y trosglwyddiad

Gall y gweinydd hysbysebu'r datryswr i gleientiaid ag opsiwn a wthir. Opsiwn yw hwn, nid cyfarwyddyd y mae'n rhaid i'r system weithredu ei ufuddhau iddo:

push "dhcp-option DNS 10.90.0.1"

Efallai y bydd angen integreiddiad datryswr ei reolwr cysylltiadau ar gleient Linux o'r llinell orchymyn, ac efallai y bydd angen diweddaru proffil rheoli ar ddyfais a reolir. Cadarnhewch y datryswr gweithredol ar y cleient ar ôl cysylltu yn lle tybio bod y gwthiad wedi'i gymhwyso. Pan fydd dau fecanwaith yn ceisio gosod DNS ar yr un pryd, cewch ras sy'n ymddangos fel datrysiad sy'n fflachio.

Un perchennog ar gyfer ffurfweddiad datryswr y cleient yw'r nod, a'r gwthiad yw'r perchennog hwnnw fel arfer dim ond pan fydd platfform y cleient yn cytuno.

Profwch yr hyn a adeiladwyd gennych mewn gwirionedd

Ymholwch un enw preifat cwbl gymwys ac un enw allanol a ganiateir yn uniongyrchol yn erbyn cyfeiriad y tiwnel, dros UDP a TCP. Yna ailadroddwch trwy lwybr ymchwilio arferol yr ap.

Os yw'r ymholiadau uniongyrchol yn gweithio ac mae'r ap yn dal i fethu, mae'r nam yn y trosglwyddiad yn hytrach nag ar y gweinydd:

  • Ni chymhwysodd y cleient yr opsiwn a wthiwyd erioed.
  • Gosodwyd datryswr arall yn ddiweddarach ac enillodd y ras.
  • Mae'r ap yn defnyddio ei lyfrgell datryswr ei hun neu ateb wedi'i gache.

Gorffennwch trwy gadarnhau na all ffynhonnell y tu allan i lwybr VPN a gymeradwywyd ddefnyddio'r gwrandäwr o gwbl. Nid yw datrysiad llwyddiannus yn awdurdodi'r cyfeiriad a ddychwelwyd, felly cadwch y ddau gwestiwn ar wahân.

Erthyglau cysylltiedig