Интерна апликација се разрешава на Windows домаћину у тренутку када се VPN повеже, а гост Ubuntu иза NAT-а VirtualBox-а је још увек не проналази. Гост има сопствени резолвер, а NAT адаптер може да обрађује DNS на више од једног начина. Замена резолвера госта јавним сервером чини обичне сајтове функционалним, а приватна имена неуспешним, што проблем преусмерава уместо да га реши. Извршите четири провере по реду и зауставите се на првој која не важи.

Потврдите који режим адаптера отклањате

Само адаптер у обичном режиму NAT се понаша како овај чланак описује. Мостни адаптер стоји на физичкој мрежи са сопственим идентитетом, NAT мрежа је именовани виртуелни прекидач са сопственим DHCP и DNS подешавањима, а VPN клијент унутар госта додаје сасвим други резолвер. Потврдите режим пре него што наставите да читате, јер се поправка разликује у сваком од тих случајева.

Једна виртуелна машина може да носи два адаптера у различитим режимима, а погођени није увек први.

Потврдите и да домаћин уопште разрешава име. Отворите исту апликацију на домаћину са подигнутим тунелом, користећи исто потпуно квалификовано име које ће гост користити. Ако и домаћин не успе, гост није крив и никаква промена виртуелне мреже то неће поправити.

Пратите једно име кроз резолвер госта

Изаберите једно интерно име и једно јавно контролно име, затим тестирајте оба на оба места. Јавно име које се разрешава док приватно не, лоцира квар на приватну путању, а не на разрешавање имена уопште. Тестирање само приватног имена не оставља вам могућност да разликујете покварен резолвер од покварене руте.

Унутар госта погледајте за шта је резолвер заиста конфигурисан. На госту Ubuntu са systemd-resolved, статус по вези приказује сервере који су стигли, а датотека resolv.conf може да садржи само stub адресу, што је тачно, а не сумњиво. Ручно уређена датотека или засебан клијент за шифровани DNS могу да шаљу упите сасвим другде. Запишите шта сте нашли пре него што то промените.

resolvectl status
resolvectl query app.internal.example

Овде одвојте разрешавање од доступности. Адреса која стигне док услуга остаје недоступна је питање рутирања или политике, не DNS-а.

Пробајте режим резолвера домаћина на том адаптеру

Опције NAT DNS у VirtualBox-у описују различите механизме, а разлика је важна када се сопствени резолвер домаћина промени са тунелом. DNS прокси прослеђује захтеве госта серверима који су му дати. Режим резолвера домаћина пресреће захтеве и позива DNS API домаћина, а то је режим који следи Windows резолвер преконфигурисан VPN клијентом.

Укључите погрешан механизам и команда ће и даље успети док се понашање не мења, што је збуњујућ начин да изгубите поподне.

VBoxManage modifyvm "work-ubuntu" --natdnshostresolver1 on

Запишите тренутна подешавања виртуелне машине, искључите је и усмерите се на адаптер који сте раније потврдили. Последња цифра у опцији је број адаптера, а не константа, па је њена примена на машину чији је погођени адаптер други тиха операција без ефекта. Покрените госта и проверите конфигурацију резолвера коју је заиста добио, јер ручно подешавање у госту надјачава све што NAT слој нуди. Запамтите да режим резолвера домаћина такође претпоставља да је сопствена DNS путања домаћина она коју сте хтели да делите.

Поновите исте тестове кроз поновно повезивање VPN-а

Поновите оба упита у госту, затим отворите праву апликацију и пустите је да сама провери сертификат. Тест само по адреси је користан за изоловање разрешавања имена и није једнак радној TLS сесији, зато не заустављајте се на ping-у. Затим, у одобреном прозору, прекините и поново повежите тунел домаћина и поновите још једном. Понашање које се задржава само на првој вези након подизања је проблем животног циклуса о коме треба известити, а не DNS мистерија коју треба јурити другим резолвером.

То што јавно разрешавање ради не доказује да су приватни упити остали на путањи коју ваша политика захтева.

Када режим резолвера домаћина ништа не мења, вратите забележену конфигурацију и задржите четири запажања: шта је домаћин вратио, шта је гост вратио, режим адаптера и стање резолвера. Недоступан интерни сервер, филтер који искључује саобраћај хипервизора и преписивање на страни госта захтевају сваки другачију исправку. Претварање адаптера у мост мења дизајн мреже и није ресетовање DNS-а.

Повезани чланци