Re: [Doh] [Ext] A question on the mix of DNS and HTTP semantics

Petr Špaček <petr.spacek@nic.cz> Mon, 19 March 2018 22:38 UTC

Return-Path: <petr.spacek@nic.cz>
X-Original-To: doh@ietfa.amsl.com
Delivered-To: doh@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 73A5712D95B for <doh@ietfa.amsl.com>; Mon, 19 Mar 2018 15:38:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.009
X-Spam-Level:
X-Spam-Status: No, score=-7.009 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, T_RP_MATCHES_RCVD=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nic.cz
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 Ex7_abnPuaVf for <doh@ietfa.amsl.com>; Mon, 19 Mar 2018 15:38:22 -0700 (PDT)
Received: from mail.nic.cz (mail.nic.cz [IPv6:2001:1488:800:400::400]) (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 1DED5124BAC for <doh@ietf.org>; Mon, 19 Mar 2018 15:38:21 -0700 (PDT)
Received: from [192.168.0.237] (cpc130666-camd16-2-0-cust366.know.cable.virginm.net [82.36.141.111]) by mail.nic.cz (Postfix) with ESMTPSA id CFFDD61070 for <doh@ietf.org>; Mon, 19 Mar 2018 23:38:18 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=nic.cz; s=default; t=1521499098; bh=mkHKpyygKyyINHnVCzRkflI/z1j89PWk4M4hC/l6HrE=; h=To:From:Date; b=lL/hYX85NivOjj+IAVsB5yoThBPnjQVFMXVt4+u+3S85HPyk0ref+A+UWB7Jpw2Uv IedtOMaBrFKFXRPxQiQvePkwCQR/jWY08tmfM4Km2wRKItf9Csa6WAh24cP1kKY4NS WEeV9hhfRCqMq46bHGZjylm16N0r6j4+wI4JNLf4=
To: doh@ietf.org
References: <CA+9kkMB7awRfW9jUmY9Q-1p+w3VLtpG5DxhF3s7Q58nEMZeX3w@mail.gmail.com> <20180318164307.GB6724@laperouse.bortzmeyer.org> <CAOdDvNr1GstB+g3pYi4w0bXuQ=Nz8HqgTRfWUX9TGu9YAYiz0w@mail.gmail.com> <CA+9kkMA733q3BPRbnN++0vwKrmOOCN8SBgknYwFaeEf2cvYikw@mail.gmail.com> <88AB1743-7270-4D72-8C70-0AB6B74416BD@icann.org> <SN1PR08MB1854485BF319264F51D208C3DAD40@SN1PR08MB1854.namprd08.prod.outlook.com> <20180319150958.GA23411@laperouse.bortzmeyer.org> <20180319152126.c5ylchfawn4syfwb@mx4.yitter.info> <20180319153958.GA24327@laperouse.bortzmeyer.org> <CAOdDvNoYO=dH=bgmNqVCgjoqegsosvqXZ5s09VqiYQB+mFO3yw@mail.gmail.com>
From: Petr Špaček <petr.spacek@nic.cz>
Organization: CZ.NIC
Message-ID: <b464ab71-0b37-5c6e-1170-e336a80364fd@nic.cz>
Date: Mon, 19 Mar 2018 23:38:18 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <CAOdDvNoYO=dH=bgmNqVCgjoqegsosvqXZ5s09VqiYQB+mFO3yw@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: 8bit
X-Virus-Scanned: clamav-milter 0.99.2 at mail
X-Virus-Status: Clean
Archived-At: <https://mailarchive.ietf.org/arch/msg/doh/m1mxUO7LeKaETc3WPXz5S9-twdc>
Subject: Re: [Doh] [Ext] A question on the mix of DNS and HTTP semantics
X-BeenThere: doh@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: DNS Over HTTPS <doh.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/doh>, <mailto:doh-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/doh/>
List-Post: <mailto:doh@ietf.org>
List-Help: <mailto:doh-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/doh>, <mailto:doh-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 19 Mar 2018 22:38:24 -0000


On 19.3.2018 17:03, Patrick McManus wrote:
> I agree with Stephane. DNS information in non-successful HTTP responses
> (i.e. not a 2xx) is not the answer to the question you asked in the HTTP
> request. I can't tell you what it is - its normally just defined as
> human readable explanation. It may certainly be generated by HTTP
> servers that do not understand DoH.

I agree, if there is a valid DNS message in the reply it should be HTTP
200 and anything else should be a HTTP-specific, e.g. Gateway Timeout
when DNS server/proxy timed out.

Attempting to mix HTTP and DNS semantics opens can of worms. If there is
a taste/need for something new and fancy, let's design new protocol for
stub-recursive communication with a proper REST interface from scratch.

I believe that attempts to HTTP-ify current DNS (beyond plain
encapsulation) are going to end up with epic fail... let's see.

Petr Špaček  @  CZ.NIC

> 
> 
> 
> 
> On Mon, Mar 19, 2018 at 3:39 PM, Stephane Bortzmeyer <bortzmeyer@nic.fr
> <mailto:bortzmeyer@nic.fr>> wrote:
> 
>     On Mon, Mar 19, 2018 at 11:21:27AM -0400,
>      Andrew Sullivan <ajs@anvilwalrusden.com
>     <mailto:ajs@anvilwalrusden.com>> wrote
>      a message of 29 lines which said:
> 
>     > If it were actually truncated, wouldn't the message have a TC bit
>     > set?
> 
>     Truncated for HTTP reasons (error 500 : the server crashed), not for
>     DNS reasons.
> 
>     If the DNS answer is truncated for DNS reasons (EDNS buffer size too
>     small), I would expect the HTTP status code to be 200.