[DNSOP] some implementation notes: binding to all IP addresses

bert hubert <bert.hubert@netherlabs.nl> Mon, 08 October 2012 19:53 UTC

Return-Path: <ahu@xs.powerdns.com>
X-Original-To: dnsop@ietfa.amsl.com
Delivered-To: dnsop@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3D7EA1F041C for <dnsop@ietfa.amsl.com>; Mon, 8 Oct 2012 12:53:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.601
X-Spam-Level:
X-Spam-Status: No, score=0.601 tagged_above=-999 required=5 tests=[AWL=-3.201, BAYES_40=-0.185, FRT_STOCK2=3.988, NO_RELAYS=-0.001]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UUkEwTqKS1TG for <dnsop@ietfa.amsl.com>; Mon, 8 Oct 2012 12:53:08 -0700 (PDT)
Received: from xs.powerdns.com (xs.powerdns.com [IPv6:2001:888:2000:1d::2]) by ietfa.amsl.com (Postfix) with ESMTP id 1E0A021F87C0 for <dnsop@ietf.org>; Mon, 8 Oct 2012 12:53:07 -0700 (PDT)
Received: from ahu by xs.powerdns.com with local (Exim 4.71) (envelope-from <ahu@xs.powerdns.com>) id 1TLJNw-0007Zo-Co for dnsop@ietf.org; Mon, 08 Oct 2012 21:53:04 +0200
Date: Mon, 08 Oct 2012 21:53:04 +0200
From: bert hubert <bert.hubert@netherlabs.nl>
To: "dnsop@ietf.org" <dnsop@ietf.org>
Message-ID: <20121008195304.GB23376@xs.powerdns.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
User-Agent: Mutt/1.5.20 (2009-06-14)
Subject: [DNSOP] some implementation notes: binding to all IP addresses
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dnsop>, <mailto:dnsop-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/dnsop>
List-Post: <mailto:dnsop@ietf.org>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dnsop>, <mailto:dnsop-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 08 Oct 2012 19:53:12 -0000

Hi,

This message is slightly offtopic, but this is the best list for reaching
all DNS implementors I think.  And I need your help!

After ten years of nagging, PowerDNS Authoritative Server implemented
'automatic binding to ALL IPv4 and IPv6 addresses'. We do so using the
setsockopt/sendmsg/recvmsg flags that allow for the capturing of the 'real'
destination address of a packet received in 0.0.0.0 or ::.

In attempting to implement this, we found missing documentation, wrong
documentation and odd #defines that are required on some platforms.

I've bundled the whole story in a blogpost on
http://bert-hubert.blogspot.com/2012/10/on-binding-datagram-udp-sockets-to-any.html

My question is: do any of the implementors have anything to add to this
page? Especially DNS relevant things. 

The post is currently short on details for Solaris and Windows. If you have
clues, please share!

Thanks.

-- 
PowerDNS Website: http://www.powerdns.com/
PowerDNS Community Website: http://wiki.powerdns.com/
PowerDNS is supported and developed by Netherlabs: http://www.netherlabs.nl