Re: [homenet] Understanding DNS-SD hybrid proxying [was: Firewall hole punching]

Juliusz Chroboczek <jch@irif.fr> Thu, 24 November 2016 09:36 UTC

Return-Path: <jch@irif.fr>
X-Original-To: homenet@ietfa.amsl.com
Delivered-To: homenet@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 51AB0129F17 for <homenet@ietfa.amsl.com>; Thu, 24 Nov 2016 01:36:09 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dYaV78e1EopU for <homenet@ietfa.amsl.com>; Thu, 24 Nov 2016 01:36:05 -0800 (PST)
Received: from korolev.univ-paris7.fr (korolev.univ-paris7.fr [IPv6:2001:660:3301:8000::1:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D0D8E129F16 for <homenet@ietf.org>; Thu, 24 Nov 2016 01:36:04 -0800 (PST)
Received: from mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [81.194.30.253]) by korolev.univ-paris7.fr (8.14.4/8.14.4/relay1/56228) with ESMTP id uAO9a2Aa029185; Thu, 24 Nov 2016 10:36:02 +0100
Received: from mailhub.math.univ-paris-diderot.fr (localhost [127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTP id C15F5D7ACF; Thu, 24 Nov 2016 10:36:02 +0100 (CET)
X-Virus-Scanned: amavisd-new at math.univ-paris-diderot.fr
Received: from mailhub.math.univ-paris-diderot.fr ([127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id 8Bp-FpzSiRu5; Thu, 24 Nov 2016 10:36:01 +0100 (CET)
Received: from trurl.irif.fr (col75-1-78-194-40-74.fbxo.proxad.net [78.194.40.74]) (Authenticated sender: jch) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTPSA id AC608D7ACD; Thu, 24 Nov 2016 10:36:01 +0100 (CET)
Date: Thu, 24 Nov 2016 10:36:02 +0100
Message-ID: <87wpftp6d9.wl-jch@irif.fr>
From: Juliusz Chroboczek <jch@irif.fr>
To: Markus Stenberg <markus.stenberg@iki.fi>
In-Reply-To: <DC6C69E2-5709-4AC2-BF16-2ADAB21177C0@iki.fi>
References: <871syc54d1.wl-jch@pps.univ-paris-diderot.fr> <CAPt1N1=eXRBh6UqGGqUSK9cH_jY5MvPcE4MFZUPe2Z48LF7bkA@mail.gmail.com> <87lgwj504t.wl-jch@irif.fr> <CAPt1N1kDCMDBEpt7QYhHtPYjaMJAzw8G81=2y2f=y0ZProeCPA@mail.gmail.com> <13675.1479346312@dooku.sandelman.ca> <3B35AF68-4792-4B2A-8277-A7B49206581F@google.com> <74143607-B81E-4D4C-89D3-4754E0DA7DE1@jisc.ac.uk> <790beb67-a62e-b7dc-b64e-a3fcecfbdb12@mtcc.com> <87zikrihl7.wl-jch@irif.fr> <2EEB3CCD-3C25-4844-95B5-DDE31F982EA2@iki.fi> <87oa17i9eq.wl-jch@irif.fr> <2DAA6FEB-8C87-42DA-9465-E740669C563A@iki.fi> <7i37iinfoa.wl-jch@irif.fr> <DC6C69E2-5709-4AC2-BF16-2ADAB21177C0@iki.fi>
User-Agent: Wanderlust/2.15.9
MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue")
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (korolev.univ-paris7.fr [194.254.61.138]); Thu, 24 Nov 2016 10:36:03 +0100 (CET)
X-Miltered: at korolev with ID 5836B482.003 by Joe's j-chkmail (http : // j-chkmail dot ensmp dot fr)!
X-j-chkmail-Enveloppe: 5836B482.003 from mailhub.math.univ-paris-diderot.fr/mailhub.math.univ-paris-diderot.fr/null/mailhub.math.univ-paris-diderot.fr/<jch@irif.fr>
X-j-chkmail-Score: MSGID : 5836B482.003 on korolev.univ-paris7.fr : j-chkmail score : . : R=. U=. O=. B=0.000 -> S=0.000
X-j-chkmail-Status: Ham
Archived-At: <https://mailarchive.ietf.org/arch/msg/homenet/2dTI4YuzTqDppKfXR_s2rpIzGvg>
Cc: homenet@ietf.org
Subject: Re: [homenet] Understanding DNS-SD hybrid proxying [was: Firewall hole punching]
X-BeenThere: homenet@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: IETF Homenet WG mailing list <homenet.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/homenet>, <mailto:homenet-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/homenet/>
List-Post: <mailto:homenet@ietf.org>
List-Help: <mailto:homenet-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/homenet>, <mailto:homenet-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 24 Nov 2016 09:36:09 -0000

>> - who merges data from multiple links?  (I'd wish that the hybrid
>> proxies compute a minimal spanning tree and perform peer-to-peer
>> magic, but I suspect you're generating a config file dynamically
>> and restarting dnsmasq whenever the set of hybrid proxies changes.)

> There is no need for merging, there are only few zones. They are all in
> DNS-SD browse/legacy browse path, and also in DNS search path. The
> configuration is actually static in my case. The benefit of merging is
> limited as there are only few subnets.

I'm probably just being slow, please bear with me.  There's one hybrid
proxy on each link, right?  Each of these only learns about the mDNS
announcements done on this particular link, right?  Dnsmasq must somehow
get the union of all of these data, right?

So is dnsmasq speaking to localhost:54 only, and localhost:54 somehow
learns all the data, or is dnsmasq speaking too foo:54 for all values of
foo?  If the latter (which I suspect), how does hnetd communicate the list
of foos to dnsmasq?

> ohp uses patched version of Apple’s mdnsd [...] for heavy lifting.

Ack.  I really need to read your code at some point.

-- Juliusz