Loggið sýnir valkostinn sem þjónninn ýtti, göngin eru uppi, og innri nöfn mistakast enn. Fyrirspurn beint til uppflettisins svarar, svo þjónninn er í lagi, en hvert forrit heldur áfram að spyrja staðbundna beininn. Það sem barst biðlaranum er tilboð, ekki breyting á uppflettinum, og einingin sem á nafnaupplausnina er mismunandi á Linux, Windows og macOS. Um leið og þú aðskilur valkostinn frá eiganda hans ná fjögur mistök næstum hverri skýrslu: ekkert hook, tvö keppinautar hook, skipt DNS sem virkar eins og hannað var, eða stutt nafn sem þarf viðskeyti en ekki þjón.

Ýttur valkostur er tilboð, ekki uppsetning

Á þjóninum lýsa tvær tilskipanir áformi, ekki áhrifum:

push "dhcp-option DNS 10.8.0.1"
push "dhcp-option DOMAIN corp.example"

Biðlarinn fær ekki uppsettann uppfletti. Hann fær umhverfisbreytur, foreign_option_1 og fleiri, eina fyrir hverja ýtta línu, og eitthvað staðbundið verður að lesa þær og endurskrifa stöðu uppflettisins í stýrikerfinu. Á Linux gerir ekkert þetta sjálfgefið, þess vegna geta réttur þjónn og tengdur biðlari enn leyst nöfn um LAN.

Þrjú stig liggja milli endanna: ýtingin verður að komast, biðlarinn verður að afhjúpa hana, og hook verður að beita henni. Lestu miðstigið í loggi biðlarans og síðasta stigið í stöðu uppflettisins, aldrei öfugt, því logglína sannar aðeins fyrstu tvö.

Staðfestu að ýtingin hafi komist og finndu eigandann

Byrjaðu á að nefna ræsirann: ber openvpn skipun, systemd-tilvik, NetworkManager eða biðlari framleiðanda. Það ræður því hvar hook getur búið. Á hýsli með systemd-resolved, resolvectl status listar hvert tengi með DNS-þjónunum og leitarsvæðunum sem það notar í raun, og göngutengið heitir ekki alltaf tun0.

Ef ýtta heimilisfangið birtist í logginu en á engu tengi, vantar samþættinguna. Ef það birtist á tenginu og fyrirspurnir fara samt út annars staðar, er vandamálið hvaða fyrirspurnir velja það tengi. NetworkManager dns=dnsmasq í skránni /etc/NetworkManager/NetworkManager.conf keyrir staðbundinn framsenda sem beitir skiptu DNS viljandi: nöfn innan VPN-svæðis fara til VPN-uppflettisins, allt annað heldur fyrri leið sinni. Þessi hegðun virðist mistök þegar þú bjóst við að allur umferð flyttist; athugaðu stillingar fyrir hverja tengingu með nmcli connection show "My VPN", þar sem ipv4.dns og ipv4.dns-search halda gildunum bak við það sem tækið tilkynnir, áður en þú kallar það bilað. Ef hver fyrirspurn á sannarlega að ná til VPN-uppflettisins, fjarlægðu dns=dnsmasq úr NetworkManager.conf og endurræstu NetworkManager, sem skilar upplausninni í stillingar tengingarinnar; annars haltu skiptu DNS og leiðréttu ýttu lénslistann.

Linux: fáðu uppflettinum valkostina

Dreifingarpakkar koma með hook fyrir þetta, og biðlaranum verður að vera heimilt að keyra hann. Dæmigert fyrirkomulag á hýsli án systemd-resolved:

script-security 2
up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf

Með systemd-resolved breytir eldra resolv.conf-skriftan kannski engu mikilvægu, því stub-uppflettirinn heldur stöðu fyrir hvert tengi. update-systemd-resolved hjálparinn skjalfestir hook-form sem notar up-restart og down-pre, sem skiptir máli þegar viðmót lifir einni tengingartilraun. Hvað sem þú velur verður ein eining að eiga stöðuna. Að bæta ótengdu hook við hlið NetworkManager gefur tvo rithöfunda á sama tengi, og útkoman fer þá eftir röðinni en ekki stillingunni þinni.

Einnig er tilvik þar sem NetworkManager hunsaði ýtta valkostinn alveg þar til þjónaheimilisfangið var slegið inn í IPv4-stillingar tengingarinnar, en eftir það sýndi staða uppflettisins að hann væri í notkun. Það er þess virði að prófa áður en skriftur eru endurskrifaðar, því það færir vandamálið frá shell-hook yfir í tengingarsniðið sem þegar ber göngin.

Windows og macOS beita mismunandi hlutum

Windows-biðlarinn stillir vissulega DNS-þjóna VPN-millistykksins, en Windows velur samt viðmót eftir mæligildi og þarf samt viðskeyti til að stækka stutt nafn. Staðfestu stöðu millistykkisins en ekki sniðsins:

Get-DnsClientServerAddress -InterfaceAlias "My VPN"
Get-DnsClientNrptPolicy

Ef heimilisfangið vantar, stilltu það með Set-DnsClientServerAddress -InterfaceAlias "My VPN" -ServerAddresses 10.8.0.1, bættu svo viðskeytinu við IPv4-eiginleika millistykkisins svo fileserver verði fileserver.corp.example. Gildi SearchList fyrir alla vélina undir Tcpip\Parameters gerir það sama. Þar sem langa nafnið leysist en bera ekki, er uppflettirinn þegar réttur og leitarlistinn er sökudólgurinn. Lagfæringarnar, í röð: ýttu DOMAIN svo biðlarinn læri viðskeytið, bættu því viðskeyti við leitarlista millistykkisins eða tengingarinnar, og festu nafnið til bráðabirgða í hosts, eða LMHOSTS á Windows; NetBIOS-vafur fer ekki yfir bein og því nær útsendingin sem finnur stutt nafn á skrifstofu-LANinu aldrei til göngubiðlara.

block-outside-dns block-outside-dns er hegðun Windows-biðlarans, ekki færanleg sniðslína, og að afrita hana í Linux- eða macOS-snið endurgerir hana ekki þar. Ef opinber nöfn virka og innri mistakast á Windows, berðu saman röð millistykka undir Ítarlegum stillingum við ipconfig /all. Á macOS tilheyrir röð uppfletta fyrir hverja þjónustu kerfinu, svo notaðu scutil --dns til að sjá hvaða uppflettir er spurður fyrir hvert lén, og líttu á hverja einstaka tilkynnta sniðslögun sem háða biðlaranum frekar en almenna.

Sýndarvél á sama fartölvunni erfir ekkert af þessu. Gefðu gestinum sína eigin uppflettisfærslu fyrir innra lénið, eða leyfðu NAT hypervisors að senda fyrirspurnir sínar í gegnum hýsilinn, sem er aðeins rétt meðan göng hýsilsins eru uppi.

Sagan er þriðja orsökin. DNS-þjónar eða viðskeytisstillingar frá fyrra sniði geta lifað endurtengingar, svo þegar millistykkið lítur rétt út og uppflettingar mistakast enn, berðu saman lifandi millistykkið við Get-VpnConnection og hreinsaðu eða skrifaðu yfir úreltu færsluna áður en þú snertir þjóninn.

Sannaðu hvert fyrirspurnin fór

Upptaka í einni uppflettingu útkljáir deiluna: tcpdump -ni eth0 port 53 sýnir fyrirspurnir á líkamlega viðmótinu, sem þýðir að þær fara út fyrir göngin og uppflettinum var aldrei skipt. dig @10.8.0.1 name.corp.example aðgreinir svo tvö eftir tilvik. Ef beina fyrirspurnin svarar virkar uppflettirinn og biðlarinn notar hann ekki; ef hún tímast út er uppflettirinn óaðgengilegur um göngin og engin staðbundin breyting hjálpar.

Ef uppflettirinn sem enn er notaður er sá sem þjónustuveitandinn úthlutaði, dulkóðar göngin umferðina á meðan nöfnin eru áfram sýnileg þeim veitanda. Þetta er lekaspmál en ekki virknispurning, og sama upptakan svarar því: fyrirspurn á líkamlega viðmótinu fer til einhvers utan gonganna.

Aðgengi nær til eldveggjar á VPN-hýslinum, sem verður að leyfa UDP og TCP 53 úr lauginni. Lokaður portur lítur nákvæmlega út eins og brotin ýting, og svo gerir uppflettir sem svarar aðeins að innan göngunetsins. Endurtaktu upptökuna eftir eina aftengingu og endurtengingu, því stillingar sem birtast á fyrstu tengingu og hverfa á þeirri annarri eru galli í lífsferli hooksins, ekki vantar valkostur.

Haltu einum eiganda og staðfestu í röð

Skrifta sem endurskrifar DNS millistykkisins út frá giskgildri stöðu gonganna tvöfaldar stillingu sem sniðið ber þegar, og mistakast hljóðlega í fyrsta sinn sem giskið er rangt. Veldu eigin DNS-stillingar tengingarinnar eða eitt skjalfest hook, og skráðu hvort þú valdir svo næsta manneskja bæti ekki öðru við.

Lokaðu hringnum með fjórum athugunum: ýtta heimilisfangið til staðar á göngutenginu, innra nafnið leyst sem fullt hæft nafn, sama nafn leyst án viðskeytisins, og bæði enn sönn eftir eina endurtengingu. Ein upptaka segir þér hver fjögurra mistókst. Handbók OpenVPN 2.6 listar dhcp-option og skriftutilskipanir með vettvangsathugasemdum sínum.

Tengdir greinar