Re: [DNSOP] I-D An Extension to DNS64 for Sender Policy Framework SPF Awareness

Klaus Frank <klaus.frank@posteo.de> Mon, 14 February 2022 19:50 UTC

Return-Path: <klaus.frank@posteo.de>
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 4C65A3A0CD2 for <dnsop@ietfa.amsl.com>; Mon, 14 Feb 2022 11:50:43 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.099
X-Spam-Level:
X-Spam-Status: No, score=-7.099 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, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=posteo.de
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 1Pf7zQ3pK53E for <dnsop@ietfa.amsl.com>; Mon, 14 Feb 2022 11:50:37 -0800 (PST)
Received: from mout02.posteo.de (mout02.posteo.de [185.67.36.66]) (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 761393A005E for <dnsop@ietf.org>; Mon, 14 Feb 2022 11:50:37 -0800 (PST)
Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 0EAB8240103 for <dnsop@ietf.org>; Mon, 14 Feb 2022 20:50:33 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017; t=1644868234; bh=cukVhdMfJBE9xvnAq/rvKrJDJK+foQxTRSgH114H6CA=; h=Date:Subject:To:From:From; b=etp6Hu+LDGox+/FTaR8iFUX/9MElonxvYRAo9vs38kXy0aJB+LNPcsx0+laVuPXix v4gjfL/Y6ZCTObgzLCuJgwvZSLj+UkhWbVkC3s4JXK9wkBd45YgpEuBX9VZ92j7qLE 8Mf9zKwtvxmxB2rXioY7g8kzrYvTT5tBi99T6XvtP6llm2i21iCUuvMUeefefXVhHL njPFzXsrbNPObbpXriRtbi19rnjVHk0F4eD9ZXwJkytu8pxmRdsZVdId6La9sVIU5d wt4pMFBtAAxC+3RsKbfQyQwuWFaDWtF8SFwntZsYf5JsY7PCjB617pQMqw7MFBy6+D JrQBmKQyMNByA==
Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4JyFFN28tSz6tnY for <dnsop@ietf.org>; Mon, 14 Feb 2022 20:50:31 +0100 (CET)
Message-ID: <2c626a82-de5c-364b-d5d4-2d321d56d7f3@posteo.de>
Date: Mon, 14 Feb 2022 19:50:30 +0000
MIME-Version: 1.0
Content-Language: en-US
To: dnsop@ietf.org
References: <20220214183030.B824B372A109@ary.qy>
From: Klaus Frank <klaus.frank@posteo.de>
In-Reply-To: <20220214183030.B824B372A109@ary.qy>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha-512"; boundary="------------ms090602050509080403090407"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/2uTyZz1fnGy-zaLymYMN9P0oGXg>
Subject: Re: [DNSOP] I-D An Extension to DNS64 for Sender Policy Framework SPF Awareness
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.29
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: Mon, 14 Feb 2022 19:50:44 -0000

Hi,

yes there was discussion on the mailing list already. It wasn't however 
that clear on what side should implement it. Also DNS64 already does the 
IP rewrite. Therefore it's just reasonable and logical that it should be 
the part that has to consider other RFCs that put IP addresses into 
other DNS records...

Also the size limit isn't an issue. As that size is just a 
recommendation and it includes *ALL* TXT records together. Therefore 
e.g. google.com already exceeds it. And the same behavior would be 
necessary here. So nothing special needed here. e.g. the DNS64 resolver 
sets the Truncated Message bit in it's response and the client is 
retrying the query via TCP and gets it's answer that way.

Also as people pointed out. SPF is a clearly formulated standard that 
could easily be found within the data of the TXT record. It's not about 
guessing. It's a clear search and replace/insert. No guessing involved.

And to the 15 years argument. SPF hasn't been widely used the whole 
time. It wasn't really necessary before 2016. It just increased in 
recent years by demand of some big players. Also the IPv6 adoption was 
never as high as it's currently (in 2016 it was below 15% globally 
according to statistics from google). And therefore the reliance on this 
and this kind of issue will only increase and not decrease until IPv4 is 
completely gone. It'd be also better to allow people to go single stack 
IPv6 then forcing them to stay dual stack which would just lead to 
people pushing out the adoption of IPv6 as they'd still have to care 
about IPv4 and IPv4 related issues anyway.

I think this I-D is an important step towards allowing people to go 
IPv6-only and not needing to dual stack their hosts. And regarding just 
updating the SPF resolver itself, it would be very messy to demand the 
SPF resolver to do it. Also as DNS64 already leads to the assumptions 
that it "fixes DNS to act as if everything is IPv6 capable" it's just 
reasonable to also have it update the SPF records within DNS and maybe 
even allow other rewrites of the same kind. Currently there is a "MUST 
NOT rewrite any other records" within that RFC that prevents such 
solutions. One may hate DNS64 for injecting IPv6 addresses into the 
answers to the queries but it's clear that it should be the component 
that gets updated to accommodate other standard track RFCs for 
compatibility. As it's the one that aims to fix these kinds of issues 
already.

I really want you to consider the implications of putting the burden 
onto the SPF implementation here. Esp. the kind of confusion it'll cause 
when admins try to debug such a setup later and don't see the rewritten 
IPs within the SPF records. It's a reasonable assumption for that to get 
rewritten as well. Please seriously consider this. And if you after that 
still prefer that the SPF record shouldn't be updated to align with that 
assumption I'm open to replace this I-D with another one that updates 
the SPF RFC to include the lookup of the NAT64 prefix. But until now I 
just have the feeling that some people are just against DNS64 itself and 
therefore try to avoid the discussion.

On 2022-02-14 19:30, John Levine wrote:
> It appears that Klaus Frank  <klaus.frank@posteo.de> said:
>> I wrote an I-D for updating DNS64 to better work for MTA operators. ...
> I strongly oppose this ill-considered proposal.  For one thing, it is very
> rare for people to try to run mail servers behind DNS64.  SPF is fifteen
> years old, and this is the first time anyone has brought up this issue.
>
> For another, trying to guess which TXT records are SPF records and
> rewriting them on the fly is unreliable and dangerous. The rewritten
> record would always be larger than the original. If the rewritten
> string exceeds the size limit of a text string or txt record, then
> what?
>
> But most importantly, there is a simple and reliable way to deal with
> this issue. When an SPF library recognizes a NAT64 address, which it
> can easily do with the method in RFC 8880, it turns the address back
> into the equivalent IPv4 address and uses that in the SPF validation.
> This will always produce the correct result, and needs no change to
> existing standards. Having worked on a few SPF libraries, I can say
> these changes would not be hard for anyone with a modest familiarity
> with the code.
>
> We've explained this several times already, dunno why we have to do so again.
>
> R's,
> John
>
>
>
>> Name:        draft-frank-dns64-spf-extension
>> Revision:    03
>> Title:        An Extension to DNS64 for Sender Policy Framework SPF
>> Awareness
>> Document date:    2022-02-14
>> Group:        Individual Submission
>> Pages:        6
>> URL: https://www.ietf.org/archive/id/draft-frank-dns64-spf-extension-03.txt
>> Status: https://datatracker.ietf.org/doc/draft-frank-dns64-spf-extension/
>> Html:
>> https://www.ietf.org/archive/id/draft-frank-dns64-spf-extension-03.html
>> Htmlized:
>> https://datatracker.ietf.org/doc/html/draft-frank-dns64-spf-extension
>> Diff: https://www.ietf.org/rfcdiff?url2=draft-frank-dns64-spf-extension-03
>>
>> Abstract:
>>     This document describes interoperability issues and resolutions
>>     between DNS64 and SPF records for mail transfer agents.  This
>>     document also aims to simplify the IPv6 migration for mail transfer
>>     agent operators.
>>
>>     This document updates [RFC6147] and [RFC7208].
>>
>>
>> -=-=-=-=-=-
>> [Attachment type=application/pkcs7-signature, name=smime.p7s]
>> -=-=-=-=-=-
>
> _______________________________________________
> DNSOP mailing list
> DNSOP@ietf.org
> https://www.ietf.org/mailman/listinfo/dnsop