| DomainCheck - DCHK |
![]() |
What is DomainCheck or DCHK?DCHK stands for DomainavailabilityChecK and is a new protocol to check the availability of domains. It is based on IRIS, the Internet Registry Information Service (see RFC 3981) and is defined in RFC 5144: A Domain Availability Check (DCHK) Registry Type for the Internet. It uses the Lightweight UDP Transfer Protocol for the Internet Registry Information Service, defined in RFC 4993 for transport. It is meant as a more formal replacement of the whois protocol. Advantages of DCHK compared to whois:
Disadvantages:
Goal of this projectThe goal of this project is to provide clients and libraries written in C and C++ for using the DCHK service. It is divided in three parts:
What TLDs are supported?So far only the german registry is providing a DCHK service for .de domains and german ENUM domains. When has it been released?The first version has been release at October 10th 2008 What license is used?The code is released under the GNU Lesser General Public License (LGPL) version 3.
Copyright (C) 2008 Patrick Fedick
This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program; if not, see http://www.gnu.org/licenses/. Where can I find the sourcecode?The sourcecode is hosted on SourceForge:
Does the client run on Windows 2000 or below?No, the client uses some functions which are not available on Windows versions below XP. You will get an error message that "freeaddrinfo" is not available in "WS2_32.dll" or something similar. The Microsoft documentations says there is a workaround for this: "To execute an application using this function on earlier versions of Windows (Windows 2000, Windows NT, and Windows Me/98/95), then you must include the Ws2tcpip.h file and also include the Wspiapi.h file. When the Wspiapi.h include file is added, the freeaddrinfo function is defined to the WspiapiFreeAddrInfo inline function in the Wspiapi.h file. At runtime, the WspiapiFreeAddrInfo function is implemented in such a way that if the Ws2_32.dll or the Wship6.dll (the file containing freeaddrinfo in the IPv6 Technology Preview for Windows 2000) does not include freeaddrinfo, then a version of freeaddrinfo is implemented inline based on code in the Wspiapi.h header file. This inline code will be used on older Windows platforms that do not natively support the freeaddrinfo function." (see http://msdn.microsoft.com/en-us/library/ms737931(VS.85).aspx) I tried this out, but couldn't compile the sourcecode any longer with MinGW. So for now, you will need XP or Vista. |