Re: [DNSOP] DNS cookies and multi-vendor anycast incompatibility

Warren Kumari <warren@kumari.net> Thu, 21 June 2018 15:20 UTC

Return-Path: <warren@kumari.net>
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 E09BE130DE2 for <dnsop@ietfa.amsl.com>; Thu, 21 Jun 2018 08:20:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level:
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=kumari-net.20150623.gappssmtp.com
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 2AkxpmfQktJ5 for <dnsop@ietfa.amsl.com>; Thu, 21 Jun 2018 08:20:34 -0700 (PDT)
Received: from mail-wr0-x230.google.com (mail-wr0-x230.google.com [IPv6:2a00:1450:400c:c0c::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 547F41292AD for <dnsop@ietf.org>; Thu, 21 Jun 2018 08:20:34 -0700 (PDT)
Received: by mail-wr0-x230.google.com with SMTP id k6-v6so3628404wrp.4 for <dnsop@ietf.org>; Thu, 21 Jun 2018 08:20:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kumari-net.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=C6JNAmehol3jtdEG8YHunMGYQwI4U0FBsA+ef5iZhbU=; b=BxvrhQDZA4SJChdpVMZhNAB25XzDprTpJcq1uU3pD7B7lVSic49J3KGvbDmF2MmO7L EN1h9KF8RQrhSXDwHXTJPo6Lcnd9boMhJ2lJZcBNtQUYoClZzc5qp/L38BCgN6xA8jrb O0Qhj/nIeDAIyfA7xgJukA95bk3M8S0Dh3QcRBDttN4vH235X5usqXEwW59kV/1WIX9P vQ7X9hlRf/20clA+entRQlOF8U84ypAVAY9USOEzoNzss8B/7j8eHuSbxax0Z2swTqLX 6hi/NFMpW3nLoS4cSpoeMagyi1LbOMkHGVRckMlR5Znoanh1OH1+DFOFodeHlyWfbj5p +vIg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=C6JNAmehol3jtdEG8YHunMGYQwI4U0FBsA+ef5iZhbU=; b=dAFpM7qTLCR6MYCopu6+LaHbk7V+9sbR/KkNAi2EEplRnuGOcECJKHxNbiYX7jhiF7 EzMu4tzzg5qv1Ie7EWORPeyYxH5R++dCDjaINqHYntP7ctS+/r8GPc05M44OY2xlhTz9 vQYJTWs16YI52cclYxvB6IH+g/L25mbUdKJ0bm4VWIf7x1IeV9/J40B0Q+OemKseWC1Y wgcErWuTn5cdTy2RaRaKsX3TudjQ9Tle8nlMhr46PV+y/YBwb88YivpcFp5GbZdHlny8 qFgSIrf4dQQVGzVMvKvfwt8OnxMHAm1Q2AzxeGVl/+0VFAhZQZX419Vjkj3FFIdo+Wgi S0hg==
X-Gm-Message-State: APt69E1eOJF6BlMjW2u3/nslI+410WKjM6DSlft1LNU+9ImByaxWRgAR YL37tZReYfDP8KhxA/aIPGF6/Ea9/VPzZUfK0RYJgKsyMgI=
X-Google-Smtp-Source: ADUXVKKgV3pOtqjnp/2p69zCUtAfyZYaHg1h2EY6PwOhTLGyYtTuR0WCh7Yayt7UczkTFXSfH98VEBwuferl7EYjU4k=
X-Received: by 2002:a5d:4843:: with SMTP id n3-v6mr21322959wrs.24.1529594432610; Thu, 21 Jun 2018 08:20:32 -0700 (PDT)
MIME-Version: 1.0
References: <c70f058c-8e82-f905-e352-f3e2fd0d4cfc@nic.cz> <alpine.LRH.2.21.1806201006530.6077@bofh.nohats.ca> <107c3532-a07d-9821-70ab-94c00a9dd2f0@nic.cz> <F6CB5212-461C-4E91-8E56-43B9E6377A7C@isc.org>
In-Reply-To: <F6CB5212-461C-4E91-8E56-43B9E6377A7C@isc.org>
From: Warren Kumari <warren@kumari.net>
Date: Thu, 21 Jun 2018 11:19:55 -0400
Message-ID: <CAHw9_iLdsTPjxwm6Tpah0kMXwwM894SG+407Muv3AcN3js-ZbQ@mail.gmail.com>
To: Mark Andrews <marka@isc.org>
Cc: Petr Špaček <petr.spacek@nic.cz>, dnsop <dnsop@ietf.org>, Paul Wouters <paul@nohats.ca>, daniel.salzman@nic.cz
Content-Type: multipart/alternative; boundary="000000000000ce7bdf056f2874a9"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/qkHIz0FgkRlGuTtucP1N8MuBrMI>
Subject: Re: [DNSOP] DNS cookies and multi-vendor anycast incompatibility
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.26
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 21 Jun 2018 15:20:38 -0000

On Thu, Jun 21, 2018 at 10:36 AM Mark Andrews <marka@isc.org> wrote:

>
> > On 21 Jun 2018, at 12:25 am, Petr Špaček <petr.spacek@nic.cz> wrote:
> >
> > On 20.6.2018 16:10, Paul Wouters wrote:
> >> On Wed, 20 Jun 2018, Petr Špaček wrote:
> >>
> >>> it seems that current specification of DNS cookies in RFC 7873 is not
> >>> detailed enough to allow deployment of DNS cookies in multi-vendor
> >>> anycast setup, i.e. a setup where one IP address is backed by multiple
> >>> DNS servers.
> >>>
> >>> The problem is lack of standardized algorithm to generate server
> >>> cookie from a shared secret. In practice, even if users manually
> >>> configure the same shared secret, Knot DNS and BIND will use diffrent
> >>> algorithm to generate server cookie and as consequence these two
> >>> cannot reliably back the same IP address and have DNS cookies enabled.
> >>>
> >>> One of root server operators told me that they are not going to enable
> >>> DNS cookies until it can work with multi-vendor anycast, and I think
> >>> this is very reasonable position.
> >>>
> >>> So, vendors, would you be willing to standardize on small number of
> >>> server cookie algorithms to enable multi-vendor deployments?
> >>
> >> I think this is a good idea but there are already two examples in RFC
> >> 7873 for cookie generation. Is there a problem with those examples, or
> >> is there only a lack of options in the implementation to configure
> >> these? If the latter, than no new IETF work would be needed.
> >
> > These are mere examples and not specifications with all the details
> > necessary for reliable interoperability.
> > E.g. when a cookie is "old" according to B.2.?
>
> I really depends on the algorithm being used.
>
> > E.g. are there privacy considerations with plain HMAC vs. encryption?
>
> Not the way AES is being used.
>
> > Besides this, BIND defaults to AES-based algorithm which is not
> > specified in the RFC and Knot DNS has its own because developers
> > considered the BIND's approch overkill.
>
> What does it matter what the default algorithm is.  Unless you are
> running a anycast cluster IT DOES NOT MATTER.  If you are running
> a anycast cluster you just needs to make sure all the server are set
> up the same way.
>
>
​There are a number of anycast clusters which run different implementations
on the same IP.

As an example: https://www.ripe.net/analyse/dns/k-root
"A K-root node consists of one or more servers running BIND, Knot or NSD."​

​Unless I'm missing something obvious, it would be good having cookies be
valid when you e.g happen to hit a node in Lyon then a node in Geneva
​(because of routing changes).

​W​



> > If we decide to standardize we need to find a reasonable algorihm and
> > standardize all its variables to make it work without run-time
> > synchronization (posssibly except key rotation but it can be done
> > avoided as well).
>
> BIND implemented 3 algorithms.  All three were similar.  The only
> difference was how the hash is generated.  The hmac-sha1 and hmac-sha256-8
> take identical inputs.  AES is slightly different because it is AES.
>
> > This message is for other DNS vendors to see if there is an interest in
> > standardizing something we can all share and operators use in practice.
> >
> > --
> > Petr Špaček  @  CZ.NIC
> >
> > _______________________________________________
> > DNSOP mailing list
> > DNSOP@ietf.org
> > https://www.ietf.org/mailman/listinfo/dnsop
>
> --
> Mark Andrews, ISC
> 1 Seymour St., Dundas Valley, NSW 2117, Australia
> PHONE: +61 2 9871 4742              INTERNET: marka@isc.org
>
> _______________________________________________
> DNSOP mailing list
> DNSOP@ietf.org
> https://www.ietf.org/mailman/listinfo/dnsop
>


-- 
I don't think the execution is relevant when it was obviously a bad idea in
the first place.
This is like putting rabid weasels in your pants, and later expressing
regret at having chosen those particular rabid weasels and that pair of
pants.
   ---maf