Hyper-V qonağı host VPN qoşulanda DNS-i itirir
Qonaq VM hostun tunelini miras almır. Switch və ya NAT rejimini tapın, VPN adapterini təklif olunduğu yerdə paylaşın, olmadıqda portları yönləndirin.
Qonaq bu səhər yaxşı idi. Sonra host Cisco AnyConnect-i işə saldı və VM DNS-i, domen etimadını və paylaşılan qovluğu itirdi, halbuki içində heç nə dəyişməmişdi. Host tuneli ilə qonaq şəbəkəsi ayrı yollardır və birini qoşmaq digərini yeritmir. İşi qonağın içindən bayıra doğru aparın və hər nəyisə dəyişməzdən əvvəl gördüklərinizi yazın.
Qonağın hələ də görə bildiyi şeylər
VM-də ünvanı, standart şlüzü və həlledicini bir dəfə host qoşulmazdan əvvəl, bir dəfə də sonra qeyd edin. Ünvanını saxlayıb yalnız ad həllini itirən qonağın həlledici problemi var. Heç vaxt marşrutu olmayan qonağın yol problemi var və ikisi fərqli iş tələb edir. Hostdan onları ayırd edə bilməzsiniz, buna görə oxunuş içəridən gəlməlidir.
Bu üç oxunuş, iki dəfə götürüldükdə, sizin baza xəttinizdir. Sonrakı hər şey onlarla müqayisə olunur.
Qonaq hansı çıxışdan istifadə edir
Hyper-V buna iki əmrlə cavab verir: Get-VMSwitch switch-ləri sadalayır, və Get-VMNetworkAdapter -VMName TestVM qonağın qoşulduğu adapteri göstərir. Default Switch Windows-un idarə etdiyi NAT şəbəkəsidir; xarici switch trafiki fiziki adapterə ötürür; daxili switch isə kimsə NAT və ya marşrutlaşdırıcı əlavə etməyincə heç nə daşımır. VirtualBox eyni üç fikri NAT, NAT Network və bridged kimi təqdim edir.
Rejim host tunelinin ümumiyyətlə əhəmiyyətli ola biləcəyini müəyyən edir. NAT qonağı WinNAT tərəfindən çevrilir və sonra host yığını tərəfindən ötürülür, buna görə host marşrut cədvəlinə uyğun gəlir; tam tunel müştərisi ilə onun trafiki VPN adapterinə daxil olan trafikdir və müştəri yerli alt şəbəkəni blokladıqda atılır. Xarici switch-də körpülənmiş qonaq host marşrutlaşdırmasına heç vaxt çatmır: kadrları fiziki NIC-dən birbaşa çıxır, buna görə həm tuneli, həm də müştərinin yerli LAN siyasətini yan keçir.
Host tunelini Hyper-V ilə paylaşmaq
Qonaq tunelə ehtiyac duyursa və öz müştərisini işlədə bilmirsə, Windows VPN bağlantısını paylaşa bilər. VPN adapterinin xassələrini açın, Paylaşma bölməsinə keçin və digər şəbəkə istifadəçilərinin onun vasitəsilə qoşulmasına icazə verin. Ev şəbəkəsi bağlantısını Hyper-V adapterinə yönəldin, vEthernet (Default Switch), sonra qonağın içindən təzə sorğu sınaqdan keçirin.
Bu quruluşa laboratoriya həlli kimi yanaşın, çünki o da belə davranır. Bağlantı kəsildikdən, yenidən qoşulduqdan və ya host yenidən başladıqdan sonra yenidən tətbiq olunmalıdır. Bəzi Windows 11 buraxılışlarında adapter açılan siyahıdan tamamilə yox olur və onda bu yol bağlanır.
Hyper-V funksiyasının yenidən quraşdırılması bir neçə inadkar qonağı xilas edib. Bunu sona saxlayın və əvvəlcə qonağın vəziyyətini qeyd edin.
Alt şəbəkə filtrlənəndə port yönləndirmə
Qonağın NAT alt şəbəkəsini filtrləyən host VPN-i ad həllini deyil, birbaşa girişi pozur. VM işləyir, lakin ssh [email protected] asılı qalır, halbuki hipervisor çevrilməsi hələ də işləyir. İşin lazım olan portlarını yönləndirin və bunun əvəzinə host ünvanına qoşulun. Aşağıdakı Vagrantfile sətirləri SSH və bir HTTPS xidmətini əhatə edir; hər ikisi yenidən yükləmədən əvvəl əlavə olunur.
config.vm.network "forwarded_port", guest: 22, host: 22
config.vm.network "forwarded_port", guest: 3443, host: 3443Ad həlli ayrı bir qərardır və öz həllini haqq edir. Həmin NAT adapteri üçün host həlledici funksiyasını işə salın, ya da daxili DNS serverini qonağın içində əl ilə qurun. Qonağı ictimai həllediciyə yönəltmək gəzintini işlədir və hər daxili adı pozur, bu isə kəsintidən pisdir, çünki uğur kimi görünür. Yalnız daxili həlledicinin bildiyi bir adı sınaqdan keçirin.
İşlədiyini bildirən yoxlama
Bu dəyişikliklərdən hər hansı birindən sonra host VPN-i qoşulmuş halda qonağın içindən təzə sorğu işlədin, ondan əvvəl deyil. Yenidən qoşulduqdan və yenidən başladıqdan sonra paylaşmanı yenidən yoxlayın, çünki bunlardan yalnız birinə dözən düzəliş düzəliş deyil. Qonağın həlledici siyahısının onun trafikinin həqiqətən istifadə etdiyi şəbəkəyə uyğun olduğunu təsdiqləyin. Sonra port yönləndirməsini host ünvanından sınaqdan keçirin, çünki onu qonaqdan sınamaq heç nə sübut etmir. Qonağın içindən iki PowerShell yoxlaması həlledicini və yönləndirilmiş portu əhatə edir:
Resolve-DnsName intranet.corp
Test-NetConnection 192.0.2.10 -Port 22Hər switch və ya sürücü dəyişikliyini geri qaytarma addımı ilə birlikdə qeyd edin. Microsoft-un Hyper-V NAT bələdçisi Default Switch-in əslində nə olduğunu izah edir və onunla ziddiyyət təşkil edən ikinci NAT şəbəkəsi yaratmazdan əvvəl oxumağa dəyər.