Upis web stranice u Windows DNS

Nakon što na serveru stvorimo web-stranicu, u DNS (Domain Name System) moramo upisati informaciju kako se ta stranica zove i adresu poslužitelja na kojem je smještena. Pokazat ćemo to na dva primjera.

U prvom primjeru ćemo u Windows DNS upisati lokaciju stranice koja se nalazi na autoritativnom serveru za domenu u kojoj se stranica nalazi, a u drugom primjeru ćemo pokazati kako u Windows DNS server upisati stranicu za koju taj Windows server nije autoritativan, odnosno stranica je smještena na domeni drugačijoj od domene u kojoj je DNS server.

Kao i uvijek, pokušat ćemo opisati što više detalja, ali opet do neke granice da ne uđemo u osnove koje bi svi trebali znati.

Testna okolina nam je ovakva:

  • imamo dvije domene, jedna je imena test.local, a druga imena webinar.local.
  • obje domene su u istom VLANU (192.168.137.x)
  • test.local ima jedan Active Directory (AD) kontroler imena dc5.test.local (192.168.137.138), na njemu su AD i DNS
  • webinar.local ima dva Active Directory kontrolera imena dc0.webinar.local (192.168.137.135) i dc1.webinar.local (192.168.137.136), na oba su AD i DNS. Osim toga u toj domeni imamo i klijentsko računalo imena w10.webinar.local (192.168.137.137) kojem su DNS serveri dc0 i dc1.

Prvi slučaj (web-stranica je u istoj domeni kao i dns server) pokazat ćemo na sljedećem primjeru. U domeni test.local, na serveru dc5.test.local (192.168.137.138), na IIS-u napravimo testnu web-stranicu imena: http://stranica1.test.local

Ako sad odmah pokušamo otvoriti taj link u bilo kojem web‑pregledniku na bilo kojem računalu na bilo kojoj domeni ili IP adresi, dobit ćemo informaciju da stranica ne postoji ("This page can't be displayed") što je i logično jer o njoj nema podataka u DNS-u i preglednik ne zna gdje je stranica smještena.

Zato otvorimo DNS konzolu na serveru dc5.test.local.

Proširite stablo s lijeve strane sve do razine imena domene: DC5 \ Forward Lookup Zone \ test.local

Kliknite desni klik na ime test.local ili desni klik bilo gdje u desnoj strani konzole, te izaberite New Host (A or AAAA...)

U prozoru New Host popunite:

Name -> ime web stranice ->stranica1

FQDN -> stvara se automatski upisom imena stranice

IP address -> IP adresa servera na kojoj se stranica nalazi 192.168.137.138

Završite postupak klikom na Add HostOKDone.

Time je postupak završen i svaki klijent koji u mrežnim postavkama ima ovaj server upisan kao DNS znat će gdje je smještena stranica http://stranica1.test.local i moći će je otvoriti. S obzirom na to da je ova stranica upisana na serveru dc5.test.local, on je autoritativan za nju i on klijentu vraća informaciju te ni klijent ni server ne pitaju eventualne druge DNS servere.

Što ako stranicu http://stranica1.test.local pokušamo otvoriti s računala w10.webinar.local (192.168.137.137)? Opet ćemo dobiti informaciju da se stranica ne može prikazati jer računalo w10 za informaciju o tome gdje je smještena stranica pita DNS servere dc0 i dc1 koji tu informaciju u ovom trenutku ne znaju, a nisu nikako povezani s dc5 da od njega dobiju potrebne podatke.

Rješenje se može napraviti na dva načina. Prvi je da u DNS servere domene webinar.local ručno upišemo informaciju na kojem serveru se stranica nalazi, pa ćemo ga pokazati. Bitno je napomenuti da ne možemo primijeniti prethodno opisani postupak s domene test.local jer smo sad na domeni webinar.local, pa se upis radi tako da stvorimo novu DNS zonu imena jednakog imenu web-stranice, znači stranica1.test.local i u nju unesemo zapis u koji ćemo staviti samo IP adresu poslužitelja na kojem je stranica smještena.

DNS serveri domene webinar.local su dc0 i dc1, a promjenu ćemo raditi samo na jednom (dc0), jer ćemo podesiti Active Directory integrated zone tako da se sve promjene automatski propagiraju na sve DNS servere u domeni.

Otvorite DNS konzolu na serveru dc0.webinar.local, napravite desni klik na Forward Lookup ZoneNew Zone... nakon čega se pokreće čarobnjak za stvaranje zone.

Na prvom ekranu s informacijama kliknite Next. Na sljedećem ekranu ostavite ponuđene opcije, Primary zone i kvačicu na Store the zone in Active Directory.

Na sljedećem prozoru također možete ostaviti ponuđenu opciju "...in this domain...".

Sad dolazimo do bitnog dijela, Zone name. Ovdje moramo upisati točno ime stranice kako želimo da bude upisana u DNS. U našem slučaju to je stranica1.test.local.

Pod Dynamic update možete ostaviti ponuđenu opciju Allow only secure update, iako je ustvari realnija opcija Do not allow dynamic updates, jer ionako nećemo mijenjati naš upis.

Kliknite na NextFinish.

Vidimo da se zona pojavila u popisu Forward lookup Zone

Postupak još nije gotov jer trenutačno imamo stvorenu samo zonu (koja ustvari "glumi" ime web-stranice), ali nitko ne zna ništa o njoj jer imamo samo ime bez informacije gdje je smještena. Zato idemo na sljedeći korak.

Napravite desni klik na novostvorenu zonu pa New Host (A or AAAA)...

Na ovom prozoru polje Name ostavite prazno, a upišite samo IP adresu servera na kojem se web-stranica nalazi (u našem slučaju je to server dc5.test.local s adresom 192.168.137.138). Kako nemamo stvorenu reverznu zonu, polje PTR ostavite bez kvačice.

Kliknite na Add Host – OK – Done i time je postupak završen.

Ovakvim smo postupkom postigli da su DNS serveri domene webinar.local autoritativni (znači da odgovaraju klijentu s podacima koje imaju i ne pitaju DNS servere iznad njih) samo za taj konkretni link http://stranica1.test.local.

Sve ovo je stvoreno u testnoj okolini kako bi računala iz jedne domene mogla pristupati resursima iz druge u slučaju kad imaju različite DNS servere, a vrlo je lako naći primjenu i u produkciji. Recimo, ako želite korisnike koji otvaraju vanjsku stranicu www.nesto.com preusmjeriti na www.internastranicakompanije.hr koja se nalazi na internom serveru, jedan od postupaka na koji bi to mogli napraviti bio bi ovaj koji smo pokazali.

Možemo možda reći i da smo "zavarali" DNS tako da smo stvorili novu zonu koja je sa stajališta korisnika ustvari ime web-stranice koja se nalazi na serveru koji smo upisali u zonu.

Drugo rješenje bi bilo korištenjem opcije DNS Forwarders, ali u tom slučaju ne možemo mi definirati što se gdje nalazi, već svi odgovori dolaze sa servera koji je upisan kao forwarder.

U slučaju kakvih nejasnoća, neki od detalja mogu se pronaći na donjim linkovima.

https://blog.ukotic.net/2011/12/08/redirecting-name-resolution-of-a-single-host-for-an-external-dns-zone/

https://community.spiceworks.com/topic/161678-how-to-create-a-dns-entry-that-redirects-to-a-different-site

https://www.netlife.co.za/adding-single-dns-hosts-for-external-zones-to-a-windows-dns-server/