Igår lärde jag mig en intressant om Microsoft Active Directory, nämligen att det är väldigt beroende av DNSen för att fungera, något som jag både kan tycka är smart och ganska dumt.
Uppenbarligen så är det så att en massa pekare om vart klienten ska leta efter saker finns i en DNZ zon som heter _msdcs som Microsoft skapar i DNSen för att hantera pekare till olika tjänster, som tex Active Directory. När man lägger till en klient i domänen så letar klienten efter subdomänen _msdcs.domännamnet.tld efter de pekare som behövs, bland andra hosten _ldap som ska finnas i sub-subdomänerna dc,_tcp med andra ord så slår den upp adressen _ldap._tcp.dc._msdcs.domänen.tld för att ta reda på vilken maskin som är DC för den aktuella domänen.
På TechNet finns en förteckning över alla records som behövs för att det ska fungera, vilket är bra att veta om man vill använda en extern DNS istället för Microsofts inbyggda.
Min gissning till att man valt att göra såhär är för att man dels ska kunna använda en externs DNS, men det har nog också med skalbarhet att göra, exakt hur, varken kan eller orkar jag ta upp nu.
För att förhindra att dhclient skriver över /etc/resolv.conf så lägger du till en fil i /etc/dhcp3/dhclient-enter-hooks.d/ i den filen skriver du:
make_resolv_conf() {
echo "doing nothing to resolv.conf"
}
Sedan gör du dina ändringar i /etc/resolv.conf, startar du nu om dhclient eller servern så kommer ändringarna att sparas.
I mitt projekt för att bygga ett Content Delivery Network så har jag klurat en del på hur jag bäst ska lösa det med trafik som kommer från utlandet, om jag har en besökare från USA så vill jag ju inte att ha ska bli tvungen att hämta materialet från en server i sverige, utan att han ska hämta det från en servern i USA. Mitt första uppslag var att använda Anycast(http://en.wikipedia.org/wiki/Anycast) där man i korthet presenterar samma ip till olika maskiner på olika siter, det verkade dock sjukt overkill! Så jag funderade på hur jag skulle kunna lösa det i DNS-recordet, men det går inte heller riktigt. Dock så kan man göra det i DNS-servern så den anpassar svaret beroendepå vartifrån man kommer, artikeln nedan beskriver en del hur man ska göra: http://blog.fupps.com/2007/04/02/location-based-geo-dns-in-a-private-network/ dock väldigt specifikt för Stanford::DNS server. Den här PDF:en beskriver lite kort hur man tänker rent tekniskt http://www.ietf.org/proceedings/74/slides/alto-9.pdf man tänker inte placering geografiskt, utan placering på internet. Inte superanvändbart kanske, men en lärdom.
Jag kommer garanterat att komma in på det här igen, men nu har jag åtminstone en början att jobba utifrån.
Senaste kommentarerna