BIND10: wel veilig en stabiel, maar nog niet compleet
Gepubliceerd op 12-06-2014
Dit voorjaar heeft ISC versie 1.2.0 van BIND10 aan de internet community overgedragen. Daarmee is dit project wat hen betreft afgerond. Hoewel de technische internet-gemeenschap had gehoopt dat ISC zelf de verdere ontwikkeling van deze DNS -server op zich zou nemen, hebben de bouwers om financiële redenen het BIND10-project helemaal stop moeten zetten.
Voormalig projectleider Shane Kerr spreekt online duidelijk zijn teleurstelling over de hele gang van zaken uit. Volgens hem was het geen goed idee om BIND 9 en 10 naast elkaar te ontwikkelen. Ook ISC zelf geeft in zijn laatste persbericht aan daar de resources niet voor te hebben. De ontwikkeling van de software werd tot nu toe door meer dan een dozijn internet-organisaties en bedrijven gesponsord, waaronder ook SIDN, de beheerder van het .nl-domein.
Bundy
ISC zal zich blijven richten op de doorontwikkeling van BIND versie 9. Daarnaast heeft het consortium enkele onderdelen van de BIND10 suite — de DHCPv4 en DHCPv6 servers, een Dynamic DNS onderdeel, een tool om de prestaties van DHCP te meten, en een C++ library voor DHCP — wel in zijn ontwikkelportfolio opgenomen. Deze componenten zijn ondergebracht in het Kea-project.
Om verwarring met versie 9 te voorkomen is BIND10 bij de overdracht omgedoopt tot Bundy. Anderhalve maand geleden hebben de nieuwe maintainers samen met ISC de broncode op GitHub gezet. Of Bundy uiteindelijk zonder risico in een productie-omgeving kan worden ingezet, hangt vooral af van de vraag hoe de developer en user community zich zal ontwikkelen.
Volledig anders
Er werken op dit moment nog maar een paar mensen aan BIND10,
vertelt Jelte Jansen, tot voor kort software-ontwikkelaar bij ISC en inmiddels research engineer en technisch adviseur bij SIDN, maar ik zie nog steeds fixes en nieuwe features voorbij komen. Wil dit project niet doodbloeden, dan zal die groep de komende tijd moeten uitgroeien tot een echte gemeenschap van gebruikers en ontwikkelaars.
Volgens hem is de software nu niet compleet maar wel inzetbaar. BIND10 is een volledig ander platform dan BIND versie 9. We hebben destijds bij de start van dit project heel hoog ingezet — misschien wel té hoog. Gebruikers kunnen nog steeds hun oude zone files inlezen, maar verder is echt alles anders. Dat maakt het voor de huidige BIND-gebruikers lastig om over te stappen.
Gezien de grote verschillen zou een operator dus net zo goed voor een hele andere DNS-server kunnen kiezen. Zo was de geautomatiseerde ondersteuning van DNSSEC voor veel grote registrars aanleiding om met PowerDNS aan de slag te gaan.
Niet compleet
BIND10 is geschreven in C++ voor de kritieke onderdelen en in Python voor de interface,
aldus Jansen. De code is grondig gereviewd en getest, dus de huidige versie is veilig en stabiel. Alleen de interface heeft nog wel wat ruwe randjes.
De ondersteuning voor DNSSEC is echter niet compleet: BIND10 kan wel als autoritatieve server fungeren voor DNSSEC maar doet zelf nog geen ondertekening, en de recursieve resolver heeft in het algemeen nog weinig aandacht gehad, dus die zou ik sowieso niet gebruiken.
Redenen om toch naar BIND10 te kijken zijn de snelheid en de duidelijk gedefinieerde en goed gedocumenteerde back-end interface. Dat maakt het heel makkelijk om BIND10 aan een eigen administratief/provisioning systeem te koppelen. We hebben daarvoor onder andere gekeken naar PowerDNS [dat de onderliggende database als koppelvlak gebruikt].
Continuïteit
Ongeacht de vraag of BIND10 nu wel of niet inzetbaar is, kunnen DNS-operators die op dit moment BIND versie 9 draaien die software gewoon blijven gebruiken. Als je nu geen behoefte hebt aan die specifieke kwaliteiten van BIND10, dan zou ik deze server op dit moment niet in een nieuwe DNS-infrastructuur inzetten,
aldus Jansen. Gebruikers van versie 9 hoeven ook niet over te stappen: ISC blijft deze software gewoon verder ontwikkelen, dus daar zijn absoluut geen zorgen over de continuïteit.
Ondertussen is het afwachten hoe de community rond Bundy zich ontwikkeld. Datzelfde geldt voor de vraag vanuit de gebruikers: BIND10 heeft nogal wat dependencies, wat de installatie van de software in eerste instantie misschien wat lastiger maakt. Ook de architectuur waarbij gebruik gemaakt wordt van diverse daemons [geïnspireerd door de Postfix MTA] kan potentiële gebruikers afschrikken. De software is echter al vanaf versie 19 opgenomen in de Fedora Linux-distributie, wat betekent dat BIND10 waarschijnlijk ook als kant-en-klaar RPM package in de volgende versie van RHEL/CentOS terecht komt.