Du DNS-serviloj sur unu adaptilo ne dividas nomspacojn
Listigi du solvantojn sur unu adaptilo ne donas al ĉiu domajno propran aŭtoritaton. Konstruu du limigitajn regulojn, testu la elekton kaj forigu ĝuste tiujn.
Listigi du solvantojn sur unu adaptilo aspektas kiel maniero sendi unu domajnon al unu servilo kaj alian domajnon al la alia, kaj nenio en la solvanta listo funkcias tiel. Vindozo solvas laŭ nomo, kaj la decido, kiun servilon demandi, venas de politikaj objektoj anstataŭ de ordigita adreslisto. La mensa modelo, kiun oni anstataŭigu, estas la vico: ne ekzistas unua servilo por domajno A kaj dua servilo por domajno B. Ekzistas regularo por ĉiu nomspaco, kiu eksplicite nomas la servilojn, kaj post kiam tiuj reguloj ekzistas, la adaptila listo ĉesas esti interesa.
La mito: du adresoj dividas du domajnojn
La kredo pluvivas ĉar ĝi funkcias hazarde, kiam unu servilo respondas ĉion kaj la dua estas nur rezerva. Kliento demandas la unuan servilon, tiu servilo plusendas aŭ rekursias, kaj la respondo alvenas; neniu rimarkas, kiu solvanto efektive tenis la zonon. La iluzio rompiĝas en la momento, kiam la du nomspacoj loĝas en apartaj privataj zonoj sen plusendado inter ili, ĉar la unua servilo tiam aŭtoritate respondas, ke la nomo ne ekzistas. Negativa respondo de la unua servilo ne ekigas la rezervon, ĉar la kliento ricevis definitivan respondon kaj ne fiaskon.
Ordiginata listo havas neniun koncepton de domajno, do ĝi ne povas esprimi la intencon. Tio, kion la listo efektive regas, estas kiu servilo estas demandata unue kaj kiu provata due, kaj ambaŭ respondoj egale validas por ĉiu nomo.
Kion Vindozo efektive uzas por elekti
La Politika Tabelo de Nomrezolucio komparas nomon kun agorditaj nomspacoj kaj elektas la servilojn kaj opciojn por tiu kongruo. Reguloj povas esti agorditaj loke, liveritaj per Grupa Politiko aŭ provizitaj per VPN-profio, kaj la efektiva politiko estas kombinaĵo anstataŭ unuopa listo. Tial la unua diagnozo ĉiam estas la efektiva stato: loke kreita regulo, kiu malvenkas al administrata politiko, produktas laboratorion, kiu kondutas tute alie ol sia agordo sugestas. Reguloj ankaŭ kongruas laŭ specifeco, do larĝa nomspaca enskribo povas ombri mallarĝan tiel, ke tio ne videblas en listo de agorditaj eroj. Legi la efektivan ordon estas la sola maniero vidi, kiu regulo venkas.
Get-DnsClientNrptRule
Get-DnsClientNrptPolicy -Effective
La unua komando listigas, kio estas agordita sur la maŝino; la dua montras, kion la kliento efektive aplikos, inkluzive de enskriboj, kiuj venis de aliloke. Se la efektiva eligo enhavas administratajn nomspacojn, la posedanto de tiu politiko estas la ĝusta loko por peti la ŝanĝon, ne la loka regula listo. Ambaŭ komandoj nur legas staton, do ruli ilin antaŭ ol iu konsentas pri la ŝanĝo kostas nenion.
Unu regulo por nomspaco, konservu la objekton
Post kiam la efektiva stato estas komprenita, kreu unu regulon por nomspaco kaj konservu la objekton, kiun ĉiu komando redonas. Montraj nomoj estas etikedoj por homoj, kaj la unika identigilo en la redonita objekto estas poste la fidinda foriga celo. Skribu ambaŭ identigilojn en la saman ŝanĝnoton, kiu registras la nomspacojn kaj solvantojn, ĉar la sesio, kiu kreis ilin, ne estos la sesio, kiu purigos.
$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
La komenca punkto markas sufiksa kongruon, do la regulo kovras app.svc.internal.example kaj ĉion alian sub ĝi. La du adresoj ĉi tie apartenas al la propra enkursiga plano de ĉi tiu laboratorio; regulo ne kreas zonon, ne instalas itineron kaj ne rajtigas la aplikaĵon, kiu finfine konektiĝas, kaj la referenco de Add-DnsClientNrptRule dokumentas precize, kiu parametro faras kion.
Rimarku, kion ĉi tiuj komandoj ne faras: ili estas maŝinaj larĝe, ili ne limiĝas al VPN-sesio, kaj ili postvivas fermon de la fenestro. Laboratorio, kiu forgesas tion, postlasas politikon post kiam la tunelo foriras.
Pruvu, ke la kliento elektis la servilon
Demandi specifan servilon, ĉu ĝi konas nomon, pruvas, ke la servilo povas respondi, kio ne estas la sama aserto kiel tio, ke la kliento elektis tiun servilon. La testo, kiu gravas, solvas realan nomon per la ordinara klienta vojo kaj poste konfirmas, kiu solvanto traktis ĝin, ideale dum la tunelo, kiu provizas la itineron, estas aktiva. Se la tunelo estas malaktiva, ĝuste limigita regulo ankoraŭ montras al neatingebla servilo, kio estas enkursiga problemo kaj ne politika problemo. Testu ambaŭ statojn, por ke oni povu poste distingi ilin.
Resolve-DnsName app.svc.internal.example
Resolve-DnsName build.research.internal.example
Resolve-DnsName app.svc.internal.example -DnsOnly -NoHostsFile
Atentu kaŝmemorajn respondojn el la periodo antaŭ ol la reguloj ekzistis, kaj atentu aplikaĵojn, kiuj tute preterpasas la sistem-solvanton per propra ĉifrita DNS. Serĉaj sufiksoj estas alia aparta funkcio: regulo povas elekti solvanton por plena nomo sen instrui al Vindozo vastigi nudan gastigantnomon en tiun nomspacon.
Forigu ĝuste tion, kion vi kreis
Purigado estas la loko, kie laboratorio fariĝas averta rakonto. Forigi ĉiun regulon sur la maŝino estas rapide kaj forigas politikon, de kiu dependas iu alia, do uzu la identigilojn kaptitajn kiam la reguloj estis kreitaj, kaj relegu la efektivan staton poste por konfirmi, ke la maŝino revenis al la komenca punkto. Se la sesio, kiu kreis ilin, foriris, la ŝanĝnoto estas la sola loko, kie la identigiloj ekzistas. Tial oni skribas ilin antaŭ ol la unua komando ruliĝas, ne poste.
Remove-DnsClientNrptRule -Name $svcRule.Name -Force
Remove-DnsClientNrptRule -Name $resRule.Name -Force
Get-DnsClientNrptPolicy -Effective
Por deplojo, ne laboratorio, la demando pri vivodaŭro gravas same kiel la regulo. VPN-profio povas porti la nomspacajn regulojn kaj elekti, ĉu ili daŭras preter la konekto; regulo, kiu daŭras dum la solvanto neatingeblas, lasas klientojn preferi mortan servilon, kaj konekte limigita regulo malaperas, kiam la tunelo malaperas. Decidu, kiun el tiuj kondutoj la servo bezonas, marku, kiu posedas la regulon, kaj lasu la dividon de aŭtoritato dokumentita apud la profilo, ne en ies memoro pri laboratorio.