Aracılığıyla paylaş


Azure Stack Hub'da iDNS kullanma

iDNS, dış DNS adlarını çözümlemenizi sağlayan bir Azure Stack Hub ağ özelliğidir (örneğin, https://www.bing.com.) iç sanal ağ adlarını kaydetmenize de olanak tanır. Bunu yaparak aynı sanal ağdaki sanal makineleri (VM) IP adresi yerine ada göre çözümleyebilirsiniz. Bu yaklaşım, özel DNS sunucusu girdileri sağlama gereksinimini ortadan kaldırır. DNS hakkında daha fazla bilgi için bkz. Azure DNS'ye Genel Bakış.

iDNS ne yapar?

Azure Stack Hub'da iDNS ile, özel DNS sunucusu girdileri belirtmenize gerek kalmadan aşağıdaki özellikleri elde edersiniz:

  • Kiracı iş yükleri için paylaşılan DNS ad çözümleme hizmetleri.
  • Kiracı sanal ağı içinde ad çözümleme ve DNS kaydı için yetkili DNS hizmeti.
  • Kiracı VM'lerinden İnternet adlarını çözümlemek için özyinelemeli DNS hizmeti. Kiracıların artık internet adlarını çözümlemek için özel DNS girişleri belirtmesi gerekmez (örneğin, www.bing.com.)

Yine de kendi DNS'nizi getirebilir ve özel DNS sunucularını kullanabilirsiniz. Ancak, iDNS kullanarak özel DNS girdileri oluşturmanıza gerek kalmadan İnternet DNS adlarını çözümleyebilir ve aynı sanal ağdaki diğer VM'lere bağlanabilirsiniz.

iDNS ne işe yaramaz?

iDNS, sanal ağın dışından çözümlenebilen bir ad için DNS kaydı oluşturmanıza izin vermez.

Azure'da genel IP adresiyle ilişkilendirilmiş bir DNS adı etiketi belirtme seçeneğiniz vardır. Etiketi (ön ek) seçebilirsiniz ancak Azure, genel IP adresini oluşturduğunuz bölgeyi temel alan son eki seçer.

DNS ad etiketi örneği

Önceki görüntüde gösterildiği gibi Azure, bölge westus.cloudapp.azure.com altında belirtilen DNS adı etiketi için DNS'de bir "A" kaydı oluşturur. Ön ek ve sonek, genel İnternet'te herhangi bir yerden çözümlenebilen tam etki alanı adı (FQDN) oluşturmak için birleştirilir.

Azure Stack Hub yalnızca iç ad kaydı için iDNS'yi desteklediğinden aşağıdaki işlemleri yapamaz:

  • Var olan bir barındırılan DNS bölgesi altında bir DNS kaydı oluşturun (örneğin, local.azurestack.external.)
  • DNS bölgesi oluşturma (Contoso.com gibi).)
  • Kendi özel DNS bölgeniz altında bir kayıt oluşturun.
  • Etki alanı adlarının satın alımını destekleyin.

iDNS'nin nasıl çalıştığını gösteren tanıtım

Sanal Ağlardaki VM'lerin tüm konak adları aynı bölge altında DNS Kaynak Kayıtları olarak depolanır, ancak vm'nin dağıtıldığı SDN altyapısındaki sanal ağ kimliğiyle bağıntılı bir GUID olarak tanımlanan kendi benzersiz bölmeleri altında depolanır. Kiracı VM Tam Etki Alanı Adları (FQDN'ler), bilgisayar adından ve Sanal Ağ için DNS soneki dizesinden (GUID biçiminde) oluşur.

Aşağıda bunun nasıl çalıştığını gösteren basit bir laboratuvar yer alır. Bir sanal ağda 3 VM ve ayrı bir sanal ağda başka bir VM oluşturduk:

VM sanal ağ Özel IP Genel IP DNS Etiketi
VM-A1 Sanal Ağ 10.0.0.5 172.31.12.68 VM-A1-Label.lnv1.cloudapp.azscss.external
VM-A2 Sanal Ağ 10.0.0.6 172.31.12.76 VM-A2-Label.lnv1.cloudapp.azscss.external
VM-A3 Sanal Ağ 10.0.0.7 172.31.12.49 VM-A3-Label.lnv1.cloudapp.azscss.external
VM-B1 VNetB 10.0.0.4 172.31.12.57 VM-B1-Label.lnv1.cloudapp.azscss.external
Sanal Ağ GUID DNS sonek dizesi
Sanal Ağ e71e1db5-0a38-460d-8539-705457a4cf75 e71e1db5-0a38-460d-8539-705457a4cf75.internal.lnv1.azurestack.local
VNetB e8a6e386-bc7a-43e1-a640-61591b5c76dd e8a6e386-bc7a-43e1-a640-61591b5c76dd.internal.lnv1.azurestack.local

iDNS'nin nasıl çalıştığını daha iyi anlamak için bazı ad çözümleme testleri yapabilirsiniz:

VM-A1'den (Linux VM): VM-A2'ye bakma. VNetA için DNS son ekinin eklendiğini ve adın Özel IP'ye çözümlendiğini görebilirsiniz:

carlos@VM-A1:~$ nslookup VM-A2
Server:         127.0.0.53
Address:        127.0.0.53#53
 
Non-authoritative answer:
Name:   VM-A2.e71e1db5-0a38-460d-8539-705457a4cf75.internal.lnv1.azurestack.local
Address: 10.0.0.6

FQDN'yi sağlamadan VM-A2-Label arama işlemi beklendiği gibi başarısız oluyor:

carlos@VM-A1:~$ nslookup VM-A2-Label
Server:         127.0.0.53
Address:        127.0.0.53#53
 
** server can't find VM-A2-Label: SERVFAIL

DNS etiketi için FQDN sağlarsanız, ad Genel IP'ye çözümlenir:

carlos@VM-A1:~$ nslookup VM-A2-Label.lnv1.cloudapp.azscss.external
Server:         127.0.0.53
Address:        127.0.0.53#53
 
Non-authoritative answer:
Name:   VM-A2-Label.lnv1.cloudapp.azscss.external
Address: 172.31.12.76

Bu kayıt bu bölgede mevcut olmadığından VM-B1 (farklı bir sanal ağdan gelen) çözümlenmeye çalışılıyor.

carlos@caalcobi-vm4:~$ nslookup VM-B1
Server:         127.0.0.53
Address:        127.0.0.53#53
 
** server can't find VM-B1: SERVFAIL

Bu kayıt farklı bir bölgeden olduğundan, VM-B1 için FQDN'nin kullanılması işe yaramaz.

carlos@VM-A1:~$ nslookup VM-B1.e8a6e386-bc7a-43e1-a640-61591b5c76dd.internal.lnv1.azurestack.local
Server:         127.0.0.53
Address:        127.0.0.53#53
 
** server can't find VM-B1.e8a6e386-bc7a-43e1-a640-61591b5c76dd.internal.lnv1.azurestack.local: SERVFAIL

DNS etiketi için FQDN kullanırsanız, bu çözüm başarıyla çözülür:

carlos@VM-A1:~$ nslookup VM-B1-Label.lnv1.cloudapp.azscss.external
Server:         127.0.0.53
Address:        127.0.0.53#53
 
Non-authoritative answer:
Name:   VM-B1-Label.lnv1.cloudapp.azscss.external
Address: 172.31.12.57

VM-A3'ten (Windows VM). Yetkili ve yetkili olmayan yanıtlar arasındaki farka dikkat edin.

İç kayıtlar:

C:\Users\carlos>nslookup
Default Server:  UnKnown
Address:  168.63.129.16
 
> VM-A2
Server:  UnKnown
Address:  168.63.129.16
 
Name:    VM-A2.e71e1db5-0a38-460d-8539-705457ª4cf75.internal.lnv1.azurestack.local
Address:  10.0.0.6

Dış kayıtlar:

> VM-A2-Label.lnv1.cloudapp.azscss.external
Server:  UnKnown
Address:  168.63.129.16
 
Non-authoritative answer:
Name:    VM-A2-Label.lnv1.cloudapp.azscss.external
Address:  172.31.12.76

Kısacası, yukarıdakilerden şunları görebilirsiniz:

  • Her sanal ağın, sanal ağ adından ve SANAL ağın DNS sonekinden (GUID'i) oluşan tüm özel IP adresleri için A kayıtları içeren kendi bölgesi vardır.
    • <vmname>.<vnetGUID.internal>.<bölge.><stackinternalFQDN>
    • Bu işlem otomatik olarak yapılır
  • Genel IP adresleri kullanıyorsanız, bunlar için DNS etiketleri de oluşturabilirsiniz. Bunlar diğer dış adresler gibi çözülür.
  • iDNS sunucuları, iç DNS bölgeleri için yetkili sunuculardır ve kiracı VM'leri dış kaynaklara bağlanmaya çalıştığında ortak adlar için çözümleyici görevi görür. Dış kaynak için bir sorgu varsa, iDNS sunucuları isteği çözümlemek üzere yetkili DNS sunucularına iletir.

Laboratuvar sonuçlarından görebileceğiniz gibi, hangi IP'nin kullanıldığını denetleyebilirsiniz. VM adını kullanırsanız, özel IP adresini alırsınız ve DNS etiketini kullanırsanız genel IP adresini alırsınız.

Sonraki adımlar

Azure Stack Hub'da DNS kullanma