Split DNS

Még 2000-ben, a genfi Windows 2000 Deployment konferencián olvasgattam a Windows 2000 Deployment Guide-ot, és mintha akkor döntöttem volna el, hogy nálunk nem lesz ilyen. Aztán az ISA 2004 megismerése kapcsán Shinder bá’ beletette a fülembe a bogarat, de aztán hagytam az egészet. Később, amikor elkészült az Exchange 2003, meg lett egy tanusítványkiosztó szerverünk is és végre kipublikáltam az OWA-t a webre, egyből leesett a tantusz, hogy miért is NAGYON fontos ez.

Nézzük a problémát! Adott egy szolgáltatás, például egy Outlook Web Access, amelyet a felhasználók akkor is szeretnének elérni, ha a vállalat belső hálózatán dolgoznak, és akkor is, ha otthonról böngészik az Internetet. Egy szolgáltatást névvel kell elérni, maradjunk a konkrét példánál, az OWA esetén nálunk ez a név owa.mal.hu. Ha valaki ezt otthonról a gépe elől bepötyögi, akkor egy hitelesítési procedura után már olvashatja is a leveleit. A gond csak az, hogy ugyanezt a műveletet a benti hálózatról nem, vagy csak az ISA-n keresztül tudná végrehajtani, mivelhogy a kipublikált Exchange neve "belülről nézve" nem owa.mal.hu, hanem éppenséggel EXCSRV.DOMAIN.LOCAL. Nem olyan vész ez sem, hiszen "csak" meg kell tanulni, hogy kívülről az egyik nevet, belülről a másik nevet kell beírni a böngésző sorába és már működik is. Aki volt már IT rendszer gazdája, az tudja, hogy az ilyen optimizmus rövid életű. Az egységsugarú felhasználó már annak is örül, hogy egy olyan hosszú karaktersort, mint az owa.mal.hu meg tud jegyezni. Képtelen ugyanakkor önmagának feltenni olyan kérdést, hogy "Hol vagyok" (informatikai értelemben), és különben is semmi értelme valamit kétféleképp elnevezni, majd helyzettől függően hol az egyik, hogy a másik nevet használni. Ennél még nagyobb gond, hogy az egységsugarú felhasználó mellett szép lassan megjelennek az egységsugarú alkalmazások, például a notebook-meghajtású WSUS kliensek, amelyek korrekt névfeloldás híján egyszerűen nem is hajlandók frissítések letöltésére.

A fenti problémára találták ki a split DNS-t. A megvalósított split DNS konfiguráció nagyban függ attól, hogy vajon a belső és külső névtér azonos-e, vagy különböző. A már jelzett isaserver.org címen egészen részletes megoldásokat és névfeloldási példákat is lehet olvasni, én most csak a saját vállalatunk példáját mutatom be, mi épp két független névteret használunk.
A split DNS nem más, mint az internetről feloldható neveket tartalmazó zónafájl megkettőzése úgy, hogy a külső, szabványos Internetes névfeloldástól függetlenül kialakítunk egy belső névfeloldási rendszert az adott zónára vonatkozóan. Az ábrán jól látható a módszer működése. Adott egy kipublikált Exchange, amelynek a publikus neve owa.mal.hu. Ez a FQDN egy mal.hu zónafájlban található, amelyért az Interneten egy (vagy néhány) DNS szerver felel. Ezt a zónafájlt le kell húzni, majd a belső hálózaton, a belső DNS szerverbe fel kell tölten. Lehet AD integrált vagy hagyományos, a történet szempontjából ez mellékes. Az első trükk, hogy ez egy ugyanolyan nevű, ámde az eredeti zónával semmilyen kapcsolatban nem álló fájlt hozunk létre. Mivel a belső DNS megtalálja a zónaállományai között a mal.hu-t, ezért nem kezd el iteratív lekérdezésekbe, hanem kiolvassa a megfelelő rekordot és válaszol a felhasználónak. És itt a második trükk: ebben a belső zónafájlban módosítjuk az eredeti (külső) IP-címeket belső IP-címekre. Így a belső kliensek közvetlenül, a tűzfal meghurkolását kihagyva kapcsolódhatnak a belső szerverhez.

Van-e hátulütője a split DNS-nek? Nos, nagyon kevés. Látszólag a zónafájlt kétszer kell adminisztrálni. Valójában ez nem teljesen így van. Ha van nevünk, amelyet mindkét oldalról fel kell tudni oldanunk, és az ahhoz tartozó külső cím megváltozik, akkor csak a külső zónát kell módosítani. Ha a belső cím változik meg, akkor csak a belső, de sohasem kell mindkettőt egyszerre. Lehetnek olyan rekordjaink, amelyet csak kívülről kell elérni. Ilyenkor a belső zónából akár törölhetjük is, de vigyázat: ettől kezdve belülről a lehetőség is elvész a névfeloldásra. Amennyiben ezt mégsem akarjuk, akkor valóban, az ilyen cymeket duplán kell módosítani. Számoljuk össze hány ilyen címünk van! Most számoljuk össze, hogy ezke hányszor változnak egy évben! No, megéri a split-DNS?

Mit nyerhetünk? Sokat, leginkább nyugalmat: a felhasználók nem zargatnak minket a külső nevekkel, ha belül vannak és a belső nevekkel, ha otthon dolgoznak. Ezen felül beindíthatunk bizonyos szolgáltatásokat is, mint például a WSUS távoli kliensek számára VPN nélkül.

Mire ügyeljünk? Mi jó ideig futottunk úgy, hogy nem volt split DNS rendszerünk. Az OWA publikációt is ennek alapján hoztuk létre. Ebből az következik, hogy az IIS-ben az Exchange website-hoz rendelt tanusítványban a common name megegyezett a Exchange szervereünk NetBIOS nevével. A split-dNS-re való átállással együtt a tanusítványt is módosítani kellett, pontosabban azt a tanusítványt kellett használni, amelyet eddig csak az ISA szerveren helyeztünk el. A beállítás után sokáig azt tapasztaltuk, hogy kívülről az OWA és az OMA remekül működött, de az ActiveSync nem. Végül rájöttünk, hogy az Exchange website header-jébe is belevéstük a NetBIOS nevet. Azt átírva már elindult a szinkronizálás is.

A split DNS lehetővé teszi majd a WSUS kipublikálást is, de erről majd akkor írok, ha el is készülök vele.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: