[dnssd] Interaction between a DNS server and Discovery Proxy on the same host - where to describe?

Esko Dijk <esko.dijk@iotconsultancy.nl> Mon, 18 July 2022 08:19 UTC

Return-Path: <esko.dijk@iotconsultancy.nl>
X-Original-To: dnssd@ietfa.amsl.com
Delivered-To: dnssd@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A6717C13C514 for <dnssd@ietfa.amsl.com>; Mon, 18 Jul 2022 01:19:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.108
X-Spam-Level:
X-Spam-Status: No, score=-2.108 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=iotconsultancy.nl
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 74oh_AqVW4KS for <dnssd@ietfa.amsl.com>; Mon, 18 Jul 2022 01:19:00 -0700 (PDT)
Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2114.outbound.protection.outlook.com [40.107.22.114]) (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 0F3F4C159487 for <dnssd@ietf.org>; Mon, 18 Jul 2022 01:18:59 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N/dzgV8UgTQeu74TF28HIYRuX1C79VvYnnyewWy1Rh39r4V68QmNvg+w9j3KU3ilmaQ3cMXsKjLK3gLkpElXN9nbmUDBQNhPPcUW/HQeos/j5PL6ehKUoYmMRQMAofh0plKABRWguEFKLAfOyd9QVC3RHEKviM8uML//IPCujqrnmHnsSDER44G2ZFjPt4EEEatqObaKMh7ZfKYxbLE5SYUPEtnr2coDABnjMnf1gPkMCCDHOhNnWxfu0LK7ZuKTFFVsRjw/WER1kE/cqBSLzmA2zQtVnhVs2YlxfUh7kpwk3rHxkh2YWpzYa4m7OYR7v+YJnUD0APBUvstxVjk+Ng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YNQgzcvEBk4j6IbxkIBKzU0UetgrDJ031dj3qdWo0dY=; b=TNxrlSaxBzVskt6BT5IOLI8WYIQp+qmprSeET2xJjqnMNTLq8IOjcp0+cs14f5A3hJq0beXHSg/1XLVcHdgtZArJZZo5aV5wGf5qdpsgyeE+x8DSAihWADKcjwHwnvrpFBVe2Bc5aSC2tpK8RRnYGv39MBIwoKK9N7DJP6Y24hYUPsPvM5V30wc2KDJEx7nZkahthaTTwoxIDH2SB7rbt3VIchsbNeDapFmhXniNBWGjQYU9noJkSKz9LKMauPUqs+526aYH55x9lNVfjY3BY5tQxmqFbdchk/IDoKzW9RTlObmG/AsxPSHqOYNruJMzneZ59JszpRmGtUjReJxJHA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=iotconsultancy.nl; dmarc=pass action=none header.from=iotconsultancy.nl; dkim=pass header.d=iotconsultancy.nl; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iotconsultancy.nl; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YNQgzcvEBk4j6IbxkIBKzU0UetgrDJ031dj3qdWo0dY=; b=ZYi53rOpS3HSIBJN4+t1cKDBbmChCfl1nxGA64W8pyuT8NdPSbK4bQzdYPhFz2Oy/4/K79OJWONthDQyb7sb1IKFNg1qbUSdIA674I10y1WZho/ydb1rZztkcoXINqIBRly2Csx2KPSLqmSheAU6a+o4CV16kIFWhOslVg3TUDU=
Received: from DU0P190MB1978.EURP190.PROD.OUTLOOK.COM (2603:10a6:10:3b9::20) by DB9P190MB1116.EURP190.PROD.OUTLOOK.COM (2603:10a6:10:225::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5438.12; Mon, 18 Jul 2022 08:18:56 +0000
Received: from DU0P190MB1978.EURP190.PROD.OUTLOOK.COM ([fe80::b990:1489:7f29:bac7]) by DU0P190MB1978.EURP190.PROD.OUTLOOK.COM ([fe80::b990:1489:7f29:bac7%4]) with mapi id 15.20.5438.023; Mon, 18 Jul 2022 08:18:56 +0000
From: Esko Dijk <esko.dijk@iotconsultancy.nl>
To: "dnssd@ietf.org" <dnssd@ietf.org>
Thread-Topic: Interaction between a DNS server and Discovery Proxy on the same host - where to describe?
Thread-Index: AdiafH9KcDmShBxfS0GI68co64ZxnQ==
Date: Mon, 18 Jul 2022 08:18:56 +0000
Message-ID: <DU0P190MB197807AC880A5E1AB18339B0FD8C9@DU0P190MB1978.EURP190.PROD.OUTLOOK.COM>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=iotconsultancy.nl;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 2d94a02c-07ea-4a77-b741-08da689628c5
x-ms-traffictypediagnostic: DB9P190MB1116:EE_
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: qkSgIqAlIOQItfP6QnPxovzkTbzU2tm1stR30cG7bG6K5yiKN0NSNWeYyQ7Tegi8KrVCg3QN42DDQTqsIlwfw8Fs/tUl/a7HxFYkxiqzYfX1r/l4B++cUFseU3LiWFeOakoa9X76c9/Ewvzr5pwdLhFPCQA5KbX80DCm9BFMh7xHW+VS0uAdfB4iP4Ope7Moln6QPAbyPswyB8eimo1BOFEwmxTWbHoKaNCUzOF5cX/rVmptnxZX6s1iLsyCdi7bJ5/2VGxqUpI8e8DcKXheLLTn3kWaGgME/ugeKNa+gWQveUFcRh7i5vUNwx9B9V4h4U17MDyGK/eqMhgN7vMHmjXD8f+isTKuBhA4mCCFz5U8tvxKZ2pt0ZRZ5EfDQ3OSRWNfBFqbUdf9uQMhGPtpdh2xvqNbJ6987TtZGU4CXtnZxYrXab7lm65Cj4wlQYYXlswq8Ox4RzRbgQfChfZhk2Jqbs683B1D7LPE5wnaFyQQEiVnc7pK7E+PQzIyKws6w63YAWNODmyZ9YAeht22NSkbl/Cnmv0Qbste4sNUCRAJiVg7//czx0bYuD3nilYcF46tNXjyuyL3JGNsOC8giWjMxNXep4aKllVBGEMLEjYDrT/qIYWjktnlACwF3WLnl/PP7yc4/7CbU8fd8M80RGnEA3dPL0uXqok8GpfEr2BfHuEl/Wx6X+EAfueX21QQ6NI81zFWKNebTOnTt+LcGJsytXDrJ+220Pr07csJRg512RtfJl24tIK0TWH2cUvOdoYp2/bossPlRCjpWLyucQSmOwTHkhb5l/2QjFq0ubA5Fi6xFHWa3Sz2UkTnJJuD
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0P190MB1978.EURP190.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230016)(346002)(396003)(136003)(366004)(39830400003)(376002)(86362001)(9686003)(5660300002)(52536014)(6506007)(7696005)(9326002)(478600001)(41300700001)(8936002)(2906002)(33656002)(122000001)(38070700005)(44832011)(83380400001)(186003)(55016003)(66556008)(66446008)(64756008)(6916009)(66476007)(76116006)(316002)(66946007)(8676002)(38100700002)(71200400001); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: Op//GOOmrcnUGm2/xkOw6DvTwktPdAYTqS/pPc0qhnibDE7VP/eBsgqmOeOGnsqu4GGzlv5NOwFJWVH03Aiuj9zgaAm6HcXI2cTA/NOaOA0ICuGPi8+yXSKFWs2gPPCf5ihCRtqG/piMyJSQbvKJ3ZgYDcHYCvj+C5G3vfJXxpwEYnpjnAaQO5X3YKU7d8i0RqhOGVqcIXrCpR3P8sjQEQREEIya4tVW4wc3k7p+5WJbPufJ+I24QFQE/LH2gwGZTs+wR+POTdhI6S48n0HRUcmPOYdgzCwmqTKyPgW1sAIm5nREtgSHekdf3QGmLXdnnc5WmAUcdBj0X6Brl/cFG+nRiHxQjYRFu9elZr8gFpGuUlBeLTEuLVzkKeMXL3wG+lee76O6/9H+GEQ8oK/ZMSx+XTrQV7yNE0Oa/G0nBstsIonxifHEUCwjAKa1eFTNEk12CdgtWnOkr0IEBkzWoSwrYhW+uXi+EYiA1lvY104HJX4RUyB5Y9mta+WacYERoyFCr8FZAn/+67sur83vJtgKOm6kKSZR0J8K9lc6v9bqkhnRI/1zYfjkXGcNn9++Mia5kxmrCrGjnwyUXjRvLn/cFR1S4FaZcE2CF8B27CkjBtMnBSeuB1/aOoeGXloztoaTmrCDgdn3kPBhpNI0pbX8AN1j+8+kfbRBZDcIykS5NQ1uz8AKtoNgROPAIy++oh6Mx2NnmW6jyxapuKNVzPH330mUz4JrlcZb6SIj+0H7mdIuOWzxawq6NjpzNLh+pZQ+iSS7rqFC8dHo/cmlohMpdxEIWMYYQ0eH1C425Naxalu+ASmjsS5g5aWThTNJZy/fBhH9THcVFrlyPfB7AWKnALJ4bMdg7L7OGZ4bd4ElL9edTYp0nAKK5PdAJdKImEDtrJT25UJdblUyOy59PRZQIWUcfNRSOcN2ZtvvyJBIZMo1Wk8gWvNOIPZtEJBO82FIAhfwo/X6pVMCGdP7SqO6WBJ/QGbXrb3eWH5DaG9reZNWEBXWHNj7Ju4fXs+RNLNvaeprFIbK8HEIL+h3L21ToZyqHHa4I43CY07Nhyj7JTd0cr8Wna58/icP+8ZksHFpo5TV5tmhntBXWhw5kVL0HKogjw/LzQ39meu2+fCLMEQGQryRZVYOeqVyQ+ODJGiLCrK+KyGS8flcg5W2jWpMCtAOQVLCYyZdtJpZDDhO0+WPUwELuLjpiGeeQffvbsj7aAWrM/9bwp8HgpyBjtCKUAXVP6Ozr1eUbkJvxGWrXApgFh7s+HDrU12gkI0FGxZawENQ35jBTMDhY67DP+Bn/StmqhH6swbm/cfMpkQDJS33xDMQcfvH0GafUK2NBS4ENOhsHbKVHa6O4xBxgCpipHNYBo+fyQPDlFi9ZUElpuOAmvSbGwrfPcxse2iSqMnGeYrDPTq83S7LDeFLb+4h8AQqtO6ngD5y6FMayoXuz9hETR6QzC8DClKOXodIMNL3z3H633WZd/dY1r3Tdxe5UkSZDlVScKPZV6uTwYEX9BE9LtftxCqz7WG2QGtSmIR29RLaqzDvTiWL5D1gtbMk6/xcohTiQc0YVgnnIsarlzuRH+WHmsjFjxRDtmaYtJi4x6wS6DEgsf9rSQB15Zdys3sHY4xiA94i4p+MGGewtKXEHpUe9oQEV6ryRwHJwd25YDXwVpWMnvJSzQu7GQ==
Content-Type: multipart/alternative; boundary="_000_DU0P190MB197807AC880A5E1AB18339B0FD8C9DU0P190MB1978EURP_"
MIME-Version: 1.0
X-OriginatorOrg: iotconsultancy.nl
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DU0P190MB1978.EURP190.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-Network-Message-Id: 2d94a02c-07ea-4a77-b741-08da689628c5
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jul 2022 08:18:56.4150 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 58bbf628-15d2-46bc-820b-863b6774d44b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: HhPwLj3lu8BeUsLqTD9xRJPCODxWKYieu86oFoPTVT0MQwU9QvOnG8UeLU/PzgJAMgI0UAO/W8b0/rUkSYypWyJdSZ8OVXtUIcVuASwZz6E=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9P190MB1116
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnssd/iHkcLviiDjm02ye4FOCHeE9vl2U>
Subject: [dnssd] Interaction between a DNS server and Discovery Proxy on the same host - where to describe?
X-BeenThere: dnssd@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Discussion of extensions to DNS-based service discovery for routed networks." <dnssd.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dnssd>, <mailto:dnssd-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnssd/>
List-Post: <mailto:dnssd@ietf.org>
List-Help: <mailto:dnssd-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dnssd>, <mailto:dnssd-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 18 Jul 2022 08:19:04 -0000

Hello,

During implementation work a question came up how a DNS server with integrated Discovery Proxy (on the same host) should behave.
RFC 8766 describes the situation that every request made by a DNS client is handled by the Discovery Proxy. But in practice, if the Discover Proxy is collocated with a DNS server, some interaction between both may be required: the DNS response may include locally stored records and/or records found by the Discovery Proxy.

The question was specifically to the case of “standard” DNS queries (i.e. not using DNS Push Notifications and not using LLQ). Section 5.6 Answer Aggregation in RFC 8766 already describes the behavior towards the DNS client for this case: the proxy will respond back with the first answer(s) it can get hold of and not spend any effort obtaining more answers or waiting for more answers.

But the situation where the same DNS server also hosts locally stored records in its database is not described there. This may happen e.g. if there’s an SRP server integrated into the same host (as in our case), or there may be another reason why there’s a DNS server.

A first question is: where should this type of interaction be described? Do we need a new document for this?

Second question: what’s the preferred behavior in this case?  My assumption was that we want to continue the RFC 8766 defined behavior towards the client, which would mean:

  1.  If the DNS server locally does not have any matching answer, and also the Discovery Proxy cache has none, then the Discovery Proxy will send an mDNS request. Per Case 1 “Standard DNS query; no answer in cache” of 8766.
  2.  If the DNS server locally does not have any matching answer, but the Discovery Proxy cache has at least 1 answer, then the DNS server answers with those cached answers and does not send a new mDNS request. Case 2 “Standard DNS query; at least one answer in cache”.
  3.  If the DNS server locally holds any answer record(s) then the Discovery Proxy does not need to send a new mDNS request; the DNS server will answer with the local matching record(s) including those taken from Discovery Proxy cache if any. Case 2 “Standard DNS query; at least one answer in cache”.

The assumption in above is that the DNS query is for a domain for which the DNS server (including its integrated Discovery Proxy) is authoritative.

Best regards
Esko


IoTconsultancy.nl  |  Email/Teams: esko.dijk@iotconsultancy.nl