RFC 2845 (TSIG) Interoperability Report
(last updated on July 15th, 2003)

Introduction to Interop Tests for RFC 2845

TSIG (RFC 2845, (Secret Key Transaction Authentication for DNS (TSIG))) provides an authentication mechanism at the transaction level using shared secrets and one way hashing. It can be used:

RFC2845 is currently in the "Proposed Standard" status. In order to pass it to the "Draft Standard" status, an interop test report is needed. At least two implementations should be found interoperable.

The goal is to test interoperability, not conformance. This means that the features to be tested in the RFC are only those that have a potential impact on interoperability. We don't need to check the full conformance of each implementation to the RFC.

So far, we have decided to test the MUSTs and SHOULDs in the RFC.

Interoperability on SHOULDs is not mandatory in a strict sense, but we believe it would be good to obtain the status on SHOULDs too.

The version of IP used is orthogonal to the protocol tested because DNS messages can be transported using IPv4 or IPv6. Some implementations only support IPv4 transport at the time of interop tests and as far as those implementations are involved, only IPv4 is used.

A first set of tests was jointly organized by 6Wind and AFNIC with the help of Euro6IX project and France Telecom R&D.
It took place on June 17th, 2003 at AFNIC.

Attendees list:

Mohsen Souissi		AFNIC				mohsen.souissi@nic.fr
Vincent Levigneron	AFNIC				vincent.levigneron@nic.fr
Bertrand Leonard	AFNIC				bertrand.leonard@nic.fr
Jean-Philippe Pick	AFNIC				jean-philippe.pick@nic.fr
Jean-Jacques Bernard	AFNIC				jean-jacques.bernard@nic.fr
Vladimir Ksinant	6WIND/Euro6IX			vladimir.ksinant@6wind.com
Jean-Mickaël Guérin	6WIND/Euro6IX			jean-mickael.guerin@6wind.com
Samuel Gauthier		6WIND/Euro6IX			samuel.gauthier@6wind.com
Cyril Corre		6WIND/Euro6IX			cyril.corre@6wind.com
Fabien Giffard		6WIND/Euro6IX			fabien.giffard@6wind.com
Philippe Conversin	6WIND/Euro6IX			philippe.conversin@6wind.com
Luc Beloeil		FT R&D/Euro6IX			luc.beloeil@francetelecom.com
Antonio Gomez Skarmeta  University of Murcia/Euro6IX	skarmeta@dif.um.es
Felix Garcia Clemente   University of Murcia/Euro6IX	fgarcia@dif.um.es

  

Comprehensive list of RFC 2845 sections with explanation of specific test needs

Tests Results

After a first analysis, we have identified three categories of tests:

  1. Client-Server category: Involves one client and one server at a time.
  2. Slave-Master category: Involves two servers, one slave and one master.
  3. Client-Forwarder-Server category: Involves one client and two servers, one of them acting as a "forwarder". The "forwarder" forwards the queries
    originating from the client to its upstream server.

Three client implementations (A, B and C) and two server implementations (X and Y) were used for the interop tests.

Some of the tests are not checkable. In those cases, the traffic/protocol analyzer at our disposal cannot tell whether the entities in question (Client, Server or Forwarder) had the right behavior.