Tiny DNS & URL aka SDDNS
Zusammen mit Micha besuchte ich Ende letzten Jahres das U23 des C4 in Köln. Dort habe ich viel über die Techniken des Internets gelernt. Unter anderem ging es hier auch um das Domain Name System, das für die Namensauflösung im Internet verantwortlich ist.
Mittlerweile betreibe ich einen eigenen DNS Server für meine Domains (0l.de, steffenvogel.de, griesm.de & vogel.cc).
Zudem biete ich euch kostenloses DNS Hosting. Gerne übernehme ich auch die DNS Administration eurer Domains. Jedoch könnt ihr sicherlich verstehen, dass ich euch dafür dann nichts garantieren kann.
Mit der Zeit habe ich ein Webinterface für den DNS Server Bind entwickelt auf das nun jeder Zugriff hat. Ihr könnt eigene Subdomains registrieren, Records setzen und URL Weiterleitungen einrichten. Dynamisches DNS wird ebenso unterstützt.
Es ist auch möglich URLs zu verkürzen und so beispielsweise die URL: https://maps.google.com/maps/ms?ie=UTF8&hl=en&msa=0&msid=100237997621038330776.000468b0a95f89721a96e&ll=18.646245,15.820313&spn=120.933723,198.632813&z=3 auf http://a.0l.de abzukürzen Das ist vergleichbar mit dem Service von TinyURL. Jedoch sind meine URLs dann um 7 Zeichen kürzer 😊. Im Gegensatz TinyURL sind meine URLs auch nur über die Subdomains erreichbar. Eine direkte Unterscheidung zwischen eigenem DNS Record und einer simplen URL Weiterleitung ist also nicht möglich.
Bedienung
Section titled “Bedienung”Der Dienst besitzt ein dokumentiertes API. Durch ein einfaches Webinterface ist es auch Anfängern möglich das Script zu bedienen. Ein Expertenmodus bietet dann noch fortgeschrittenen Usern den kompletten Zugriff auf das API.
Die Schnittstelle ist auch kompatibel zu den Update Clients des Marktführers DynDns.org.
Das Verkürzen einer URL ist mit diesem einfachen Bookmarklet möglich:
Technik
Section titled “Technik”Das komplette System besteht aus einem Webserver (Apache) mit PHP, einem Datenbankserver (MySQL) und dem DNS-Server (Bind9).
Das PHP Script sorgt für die Synchronisation zwischen Datenbank und Nameserver.
Dazu benutzt es das Kommandozeilen Tool nsupdate von Bind.
Cron-Jobs sorgen regelmäßig für das Löschen von veralteten Records und URLs sowie die Konsistenz der Daten.
Das komplette System wurde nach modernen Paradigmen entworfen und ist vollständig objektorientiert implementiert. Das MVC Design-Pattern ermöglicht das einfache Erweitern um neue Komponenten.