Bir adaptördə iki həlledici sadalamaq bir domeni bir serverə, başqa domeni isə digərinə göndərməyin yolu kimi görünür və həlledici siyahısında heç nə bu cür işləmir. Windows adla həll edir və hansı serverdən soruşulacağına dair qərar sıralı ünvan siyahısından deyil, siyasət obyektlərindən gəlir. Əvəz edilməli zehni model növbədir: A domeni üçün birinci server, B domeni üçün ikinci server yoxdur. Serverləri açıq şəkildə adlandıran hər ad məkanı üçün qayda dəsti var və bu qaydalar mövcud olduqdan sonra adapter siyahısı maraqlı olmaqdan çıxır.

Mif: iki ünvan iki domeni bölür

Bu inanc yaşayır, çünki bir server təsadüfən hər şeyə cavab verəndə və ikincisi yalnız ehtiyat variant olanda o, təsadüfən işləyir. Müştəri birinci serverdən soruşur, o server yönləndirir və ya rekursiya edir və cavab gəlir; heç kim zonanı hansı həlledicinin saxladığını görmür. İki ad məkanı aralarında yönləndirmə olmayan ayrı şəxsi zonalarda yaşamağa başlayan anda illüziya dağılır, çünki birinci server o zaman adın mövcud olmadığını səlahiyyətli şəkildə cavablandırır. Birinci serverdən gələn mənfi cavab ehtiyat variantı işə salmır, çünki müştəri uğursuzluq deyil, qəti cavab alıb.

Sıralı siyahının domen anlayışı yoxdur, ona görə niyyəti ifadə edə bilmir. Siyahının həqiqətən idarə etdiyi şey hansı serverdən əvvəl, hansından sonra soruşulmasıdır və bu cavabların hər ikisi bütün adlara bərabər şəkildə aiddir.

Windows seçim üçün əslində nədən istifadə edir

Ad Həlli Siyasəti Cədvəli adı konfiqurasiya edilmiş ad məkanları ilə uyğunlaşdırır və həmin uyğunluq üçün serverləri və seçimləri seçir. Qaydalar yerli olaraq konfiqurasiya edilə, Qrup Siyasəti ilə çatdırıla və ya VPN profili ilə verilə bilər və effektiv siyasət tək siyahı deyil, birləşmədir. Buna görə ilk diaqnostika həmişə effektiv vəziyyətdir: idarə olunan siyasətə uduzan yerli qayda konfiqurasiyasının vəd etdiyindən tamamilə fərqli davranan laboratoriya yaradır. Qaydalar həm də dəqiqliyə görə uyğunlaşdırılır, ona görə geniş ad məkanı qeydi dar bir qeydi konfiqurasiya edilmiş elementlər siyahısında görünməyən şəkildə üstələyə bilər. Effektiv sıranı oxumaq hansı qaydanın qalib gəldiyini görməyin yeganə yoludur.

Get-DnsClientNrptRule
Get-DnsClientNrptPolicy -Effective

Birinci əmr maşında nəyin konfiqurasiya edildiyini sadalayır; ikincisi müştərinin həqiqətən tətbiq edəcəyini, o cümlədən başqa yerdən gələn qeydləri göstərir. Əgər effektiv çıxışda idarə olunan ad məkanları varsa, dəyişikliyi tələb etmək üçün düzgün yer yerli qayda siyahısı deyil, həmin siyasətin sahibidir. Hər iki əmr yalnız vəziyyəti oxuyur, ona görə dəyişiklik barədə kimsə razılaşmadan əvvəl onları işə salmaq heç nəyə başa gəlmir.

Hər ad məkanı üçün bir qayda, obyekti saxlayın

Effektiv vəziyyət anlaşıldıqdan sonra hər ad məkanı üçün bir qayda yaradın və hər əmrin qaytardığı obyekti qoruyun. Görünmə adları insanlar üçün etiketlərdir və qaytarılan obyektdəki unikal identifikator sonradan etibarlı silmə hədəfidir. Hər iki identifikatoru ad məkanlarını və həllediciləri qeyd edən eyni dəyişiklik qeydinə yazın, çünki onları yaradan sessiya təmizləyəcək sessiya olmayacaq.

$svcRule = Add-DnsClientNrptRule -Namespace ".svc.internal.example" -NameServers "10.60.0.53" -DisplayName "VPN lab services" -PassThru
$resRule = Add-DnsClientNrptRule -Namespace ".research.internal.example" -NameServers "10.61.0.53" -DisplayName "VPN lab research" -PassThru
$svcRule | Select-Object Name, Namespace, NameServers
$resRule | Select-Object Name, Namespace, NameServers

Baştaki nöqtə şəkilçi uyğunluğunu bildirir, ona görə qayda app.svc.internal.example və onun altındakı hər şeyi əhatə edir. Buradakı iki ünvan bu laboratoriyanın öz marşrut planına aiddir; qayda zona yaratmır, marşrut quraşdırmır və nəhayət qoşulan tətbiqə icazə vermir, və Add-DnsClientNrptRule sənədi hansı parametrlərin nə etdiyini dəqiq göstərir.

Bu əmrlərin nə etmədiyinə diqqət yetirin: onlar bütün maşın üçün etibarlıdır, VPN sessiyası ilə məhdudlaşmır və pəncərə bağlandıqdan sonra da qalır. Bunu unudan laboratoriya tunel getdikdən sonra arxasında siyasət qoyur.

Müştərinin serveri seçdiyini sübut edin

Müəyyən bir serverdən adı bilib-bilmədiyini soruşmaq həmin serverin cavab verə bildiyini sübut edir, bu isə müştərinin o serveri seçməsi ilə eyni iddia deyil. Əhəmiyyətli sınaq real adı adi müştəri yolu ilə həll edir və sonra hansı həlledicinin onunla işlədiyini təsdiqləyir, idealdır ki, marşrutu verən tunel açıq olsun. Tunel bağlıdırsa, düzgün əhatəli qayda yenə əlçatmaz serverə işarə edir və bu, siyasət problemi deyil, marşrut problemidir. İkisini sonradan ayırmaq üçün hər iki vəziyyəti sınayın.

Resolve-DnsName app.svc.internal.example
Resolve-DnsName build.research.internal.example
Resolve-DnsName app.svc.internal.example -DnsOnly -NoHostsFile

Qaydalar mövcud olmadan əvvəlki dövrün keşlənmiş cavablarına və sistem həlledicisini öz şifrəli DNS-i ilə tamamilə yan keçən tətbiqlərə diqqət yetirin. Axtarış şəkilçiləri başqa ayrı funksiyadır: qayda tam ad üçün həlledici seçə bilər, lakin Windows-a çılpaq host adını həmin ad məkanına genişlətməyi öyrətmədən.

Yaratdığınızı dəqiq silin

Təmizləmə laboratoriyanın ibrət hekayəsinə çevrildiyi yerdir. Maşındakı hər qaydanı silmək sürətlidir və başqasının asılı olduğu siyasəti aradan qaldırır, ona görə qaydalar yaradılarkən tutulan identifikatorlardan istifadə edin və sonra maşının başladığı yerə qayıtdığını təsdiqləmək üçün effektiv vəziyyəti yenidən oxuyun. Onları yaradan sessiya getmişsə, identifikatorların mövcud olduğu yeganə yer dəyişiklik qeydidir. Buna görə onları ilk əmr işə düşməzdən əvvəl yazmaq lazımdır, sonra deyil.

Remove-DnsClientNrptRule -Name $svcRule.Name -Force
Remove-DnsClientNrptRule -Name $resRule.Name -Force
Get-DnsClientNrptPolicy -Effective

Laboratoriya deyil, yerləşdirmə üçün ömür məsələsi qayda qədər vacibdir. VPN profili ad məkanı qaydalarını daşıya və onların bağlantıdan sonra qalıb-qalmayacağını seçə bilər; həlledici əlçatmaz ikən qalan qayda müştəriləri ölü serveri üstün tutmağa qoyur, bağlantı ilə məhdud qayda isə tunel getdikdə yox olur. Xidmətin bu davranışlardan hansına ehtiyacı olduğunu qərar verin, qaydanın kimə aid olduğunu qeyd edin və səlahiyyət bölgüsünü kiminsə laboratoriya yaddaşında deyil, profilin yanında sənədləşdirilmiş şəkildə qoyun.

Əlaqəli məqalələr