Megosztás a következőn keresztül:


DNS-névfeloldási lehetőségek Linux rendszerű virtuális gépekhez az Azure-ban

A következőkre vonatkozik: ✔️ Linux rendszerű virtuális gépek rugalmas méretezési ✔️ csoportjai

Az Azure alapértelmezés szerint dns-névfeloldást biztosít az egyetlen virtuális hálózaton lévő összes virtuális géphez. Saját DNS-névfeloldási megoldást úgy valósíthat meg, hogy konfigurálja saját DNS-szolgáltatásait az Azure által üzemeltetett virtuális gépeken. Az alábbi forgatókönyvek segítenek kiválasztani a helyzetnek megfelelőt.

A használt névfeloldás típusa attól függ, hogy a virtuális gépeknek és a szerepkörpéldányoknak hogyan kell kommunikálniuk egymással.

Az alábbi táblázat a forgatókönyveket és a megfelelő névfeloldási megoldásokat mutatja be:

Forgatókönyv Megoldás Toldalék
Névfeloldás szerepkörpéldányok vagy virtuális gépek között ugyanabban a virtuális hálózaton Az Azure által biztosított névfeloldás állomásnév vagy teljes tartománynév (FQDN)
Névfeloldás a különböző virtuális hálózatok szerepkörpéldányai vagy virtuális gépei között Ügyfél által felügyelt DNS-kiszolgálók, amelyek lekérdezéseket továbbítanak a virtuális hálózatok között az Azure által történő megoldás érdekében (DNS-proxy). Lásd: Névfeloldás saját DNS-kiszolgáló használatával. Csak teljes tartománynév
Helyszíni számítógépek és szolgáltatásnevek feloldása szerepkörpéldányokból vagy virtuális gépekről az Azure-ban Ügyfél által felügyelt DNS-kiszolgálók (például helyszíni tartományvezérlő, helyi írásvédett tartományvezérlő, vagy zónaátvitelekkel szinkronizált másodlagos DNS). Lásd: Névfeloldás saját DNS-kiszolgáló használatával. Csak teljes tartománynév
Helyszíni számítógépekről származó Azure-gazdagépnevek feloldása Lekérdezések továbbítása az ügyfél által felügyelt DNS-proxykiszolgálóra a megfelelő virtuális hálózaton. A proxykiszolgáló továbbítja a lekérdezéseket az Azure-nak megoldás céljából. Lásd: Névfeloldás saját DNS-kiszolgáló használatával. Csak teljes tartománynév
Belső IP-címek DNS-ének megfordítása Névfeloldás saját DNS-kiszolgáló használatával n.a.

Az Azure által biztosított névfeloldás

A nyilvános DNS-nevek feloldása mellett az Azure belső névfeloldást biztosít az ugyanazon a virtuális hálózaton található virtuális gépekhez és szerepkörpéldányokhoz. Az Azure Resource Manageren alapuló virtuális hálózatokban a DNS-utótag konzisztens a virtuális hálózaton; nincs szükség a teljes tartománynévre. A DNS-nevek a hálózati adapterekhez és a virtuális gépekhez is hozzárendelhetők. Bár az Azure által biztosított névfeloldás nem igényel konfigurációt, nem minden üzembe helyezési forgatókönyv esetében megfelelő választás, ahogy az az előző táblázatban látható.

Funkciók és szempontok

Funkciók:

  • Az Azure által biztosított névfeloldás használatához nincs szükség konfigurációra.
  • Az Azure által biztosított névfeloldási szolgáltatás magas rendelkezésre állású. Nem kell saját DNS-kiszolgálók fürtöit létrehoznia és kezelnie.
  • Az Azure által biztosított névfeloldási szolgáltatás a saját DNS-kiszolgálóival együtt használható a helyszíni és az Azure-beli gazdagépnevek feloldásához.
  • A névfeloldás a virtuális hálózatok virtuális gépei között történik, és nincs szükség a teljes tartománynévre.
  • Az automatikusan létrehozott nevek használata helyett olyan gazdagépneveket használhat, amelyek a legjobban leírják az üzemelő példányokat.

Szempontok:

  • Az Azure által létrehozott DNS-utótag nem módosítható.
  • Saját rekordjait nem regisztrálhatja manuálisan.
  • A WINS és a NetBIOS nem támogatott.
  • A gazdagépneveknek DNS-kompatibilisnek kell lenniük. A neveknek csak 0-9, a-z és "-" karaktereket kell használniuk, és nem kezdődhetnek és nem végződhetnek "-" betűvel. Lásd: RFC 3696 2. szakasz.
  • A DNS-lekérdezések forgalmát minden virtuális gép szabályozza. A szabályozás nem befolyásolhatja a legtöbb alkalmazást. Ha a kérések szabályozása figyelhető meg, győződjön meg arról, hogy az ügyféloldali gyorsítótárazás engedélyezve van. További információ: Az Azure által biztosított névfeloldás a lehető legtöbbet nyújtja.

A legtöbbet az Azure által biztosított névfeloldásból szerzi be\

Ügyféloldali gyorsítótárazás:

Egyes DNS-lekérdezéseket a rendszer nem küld a hálózaton keresztül. Az ügyféloldali gyorsítótárazás segít csökkenteni a késést és javítani a hálózati inkonzisztenciák rugalmasságát a helyi gyorsítótárból származó ismétlődő DNS-lekérdezések feloldásával. A DNS-rekordok egy élettartamot (TTL) tartalmaznak, amely lehetővé teszi a gyorsítótár számára, hogy a rekordot a lehető legnagyobb ideig tárolja anélkül, hogy ez hatással lenne a rekord frissességére. Ennek eredményeképpen az ügyféloldali gyorsítótárazás a legtöbb helyzetben megfelelő.

Egyes Linux-disztribúciók alapértelmezés szerint nem tartalmazzák a gyorsítótárazást. Javasoljuk, hogy adjon hozzá gyorsítótárat minden Linux rendszerű virtuális géphez, miután ellenőrizte, hogy nincs-e már helyi gyorsítótár.

Számos különböző DNS-gyorsítótárazási csomag érhető el, például a dnsmasq. A dnsmasq telepítésének lépései a leggyakoribb disztribúciókra:

  1. Telepítse a dnsmasq csomagot:
sudo apt-get install dnsmasq
  1. Engedélyezze a dnsmasq szolgáltatást:
sudo systemctl enable dnsmasq.service
  1. Indítsa el a dnsmasq szolgáltatást:
sudo systemctl start dnsmasq.service

Ügyféloldali újrapróbálkozások

A DNS elsősorban UDP protokoll. Mivel az UDP protokoll nem garantálja az üzenetek kézbesítését, maga a DNS-protokoll kezeli az újrapróbálkozások logikáját. Minden DNS-ügyfél (operációs rendszer) a létrehozó preferenciájától függően eltérő újrapróbálkozási logikát mutathat:

  • A Windows operációs rendszerek egy másodperc után újrapróbálkoznak, majd újabb két, négy és újabb négy másodperc után újra próbálkoznak.
  • Az alapértelmezett Linux-beállítás öt másodperc után újrapróbálkozza. Ezt úgy kell módosítania, hogy egy másodperces időközönként ötször próbálkozzon újra.

A Linux rendszerű virtuális gépek aktuális beállításainak ellenőrzéséhez tekintse meg a "cat /etc/resolv.conf" kifejezést, és tekintse meg a "beállítások" sort, például:

sudo cat /etc/resolv.conf
options timeout:1 attempts:5

A /etc/resolv.conf fájl automatikusan létrejön, és nem szerkeszthető. A "beállítások" sor hozzáadásának konkrét lépései eloszlás szerint változnak:

Ubuntu (a resolvconf függvényt használja)

  1. Adja hozzá a beállítássort a fájlhoz /etc/resolvconf/resolv.conf.d/head .
  2. Futtassa sudo resolvconf -u a frissítést.

SUSE (netconf-et használ)

  1. Hozzáadás timeout:1 attempts:5 a paraméterhez a NETCONFIG_DNS_RESOLVER_OPTIONS="" következőben: /etc/sysconfig/network/config.
  2. Futtassa sudo netconfig update a frissítést.

Névfeloldás saját DNS-kiszolgáló használatával

A névfeloldási igények túlléphetnek az Azure által biztosított funkciókon. Előfordulhat például, hogy DNS-feloldást kell igényelni a virtuális hálózatok között. Ennek a forgatókönyvnek a lefedéséhez használhatja a saját DNS-kiszolgálóit.

A virtuális hálózaton belüli DNS-kiszolgálók továbbíthatják a DNS-lekérdezéseket az Azure rekurzív feloldóinak az azonos virtuális hálózaton található gazdagépnevek feloldásához. Az Azure-ban futó DNS-kiszolgáló például válaszolhat a DNS-lekérdezésekre a saját DNS-zónafájljaihoz, és továbbíthatja az összes többi lekérdezést az Azure-nak. Ez a funkció lehetővé teszi a virtuális gépek számára, hogy az Azure által biztosított zónafájlokban és gazdagépnevekben egyaránt láthassák a bejegyzéseket (a továbbítón keresztül). Az Azure rekurzív feloldóihoz való hozzáférés a 168.63.129.16-os virtuális IP-címen keresztül érhető el.

A DNS-továbbítás lehetővé teszi a DNS-feloldást a virtuális hálózatok között, és lehetővé teszi a helyszíni gépek számára az Azure által biztosított gazdagépnevek feloldását. A virtuális gép gazdanevének feloldásához a DNS-kiszolgáló virtuális gépének ugyanabban a virtuális hálózaton kell lennie, és úgy kell konfigurálnia, hogy a gazdagépnév-lekérdezéseket továbbítsa az Azure-ba. Mivel a DNS-utótag minden virtuális hálózatban eltérő, feltételes továbbítási szabályokkal dns-lekérdezéseket küldhet a megfelelő virtuális hálózatnak a megoldáshoz. Az alábbi képen két virtuális hálózat és egy helyszíni hálózat látható, amelyek DNS-feloldással végeznek dns-feloldási eljárást a virtuális hálózatok között ezzel a módszerrel:

DNS-feloldás virtuális hálózatok között

Ha az Azure által biztosított névfeloldást használja, az egyes virtuális gépek belső DNS-utótagja DHCP használatával lesz megadva. Ha saját névfeloldási megoldást használ, a rendszer nem adja meg ezt az utótagot a virtuális gépeknek, mert az utótag zavarja a többi DNS-architektúrát. A teljes tartománynév alapján történő gépekre való hivatkozáshoz vagy a virtuális gépek utótagjának konfigurálásához használhatja a PowerShellt vagy az API-t az utótag meghatározásához:

  • Az Azure Resource Manager által felügyelt virtuális hálózatok esetében az utótag a hálózati adapterkártya-erőforráson keresztül érhető el. A parancs futtatásával megjelenítheti a nyilvános IP-cím részleteit is azure network public-ip show <resource group> <pip name> , amely tartalmazza a hálózati adapter teljes tartománynevét.

Ha a lekérdezések azure-ba történő továbbítása nem felel meg az igényeinek, saját DNS-megoldást kell biztosítania. A DNS-megoldásnak a következőket kell tennie:

  • Adjon meg megfelelő állomásnévfeloldásokat, például DDNS-en keresztül. Ha DDNS-t használ, előfordulhat, hogy le kell tiltania a DNS-rekordok lefaragását. Az Azure DHCP-bérletei hosszúak, és a törlés idő előtt eltávolíthatja a DNS-rekordokat.
  • Adjon meg megfelelő rekurzív felbontást a külső tartománynevek feloldásához.
  • Legyen elérhető (TCP és UDP az 53-ai porton) az általa kiszolgált ügyfelektől, és legyen képes az internethez való hozzáférésre.
  • Az internetről való hozzáféréssel szemben védve kell lennie a külső ügynökök által jelentett fenyegetések mérséklése érdekében.

Feljegyzés

A legjobb teljesítmény érdekében, ha virtuális gépeket használ az Azure DNS-kiszolgálókon, tiltsa le az IPv6-ot, és rendeljen hozzá példányszintű nyilvános IP-címet minden DNS-kiszolgáló virtuális géphez.