[DNSOP] Re: ordering of RRSets in the answer section of a DNS response

Florian Weimer <fw@deneb.enyo.de> Mon, 19 January 2026 22:37 UTC

Return-Path: <fw@deneb.enyo.de>
X-Original-To: dnsop@mail2.ietf.org
Delivered-To: dnsop@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 2E6F1AA1E5C3 for <dnsop@mail2.ietf.org>; Mon, 19 Jan 2026 14:37:38 -0800 (PST)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5fneb2qUT9Yb for <dnsop@mail2.ietf.org>; Mon, 19 Jan 2026 14:37:37 -0800 (PST)
Received: from cygnus.enyo.de (cygnus.enyo.de [79.140.189.114]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 6E643AA1E5BE for <dnsop@ietf.org>; Mon, 19 Jan 2026 14:37:37 -0800 (PST)
Received: from [172.17.203.2] (port=60259 helo=deneb.enyo.de) by albireo.enyo.de ([172.17.140.2]) with esmtps (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) id 1vhxsG-00000002egU-1ydH; Mon, 19 Jan 2026 22:37:30 +0000
Received: from fw by deneb.enyo.de with local (Exim 4.98.2) (envelope-from <fw@deneb.enyo.de>) id 1vhxsH-00000000QHN-3dlr; Mon, 19 Jan 2026 23:37:29 +0100
From: Florian Weimer <fw@deneb.enyo.de>
To: John Levine <johnl@taugh.com>
In-Reply-To: <20260119195624.88683F1F4E6C@ary.qy> (John Levine's message of "19 Jan 2026 14:56:24 -0500")
References: <9175DF63-77F9-4B4C-9EA9-76B30F941F84@strandkip.nl> <e48c41c3-86cf-4e1f-a9ab-195426bdea17@nic.cz> <20260115022930.C70F4F11E0CD@ary.qy> <877bth4z9c.fsf@mid.deneb.enyo.de> <b07a269a-ed1b-8bed-8d99-52619f4f5e14@taugh.com> <4eb218ddcca68f3a7c1272bfc0ff0c3e398b207b.camel@16bits.net> <20260119195624.88683F1F4E6C@ary.qy>
Date: Mon, 19 Jan 2026 23:37:29 +0100
Message-ID: <87y0lt6xg6.fsf@mid.deneb.enyo.de>
MIME-Version: 1.0
Content-Type: text/plain
Message-ID-Hash: BIRTMGNP45C6ZHCCLDJGPS7QZL2WKYVF
X-Message-ID-Hash: BIRTMGNP45C6ZHCCLDJGPS7QZL2WKYVF
X-MailFrom: fw@deneb.enyo.de
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-dnsop.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: dnsop@ietf.org, angel@16bits.net
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [DNSOP] Re: ordering of RRSets in the answer section of a DNS response
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/QPHP8I7y_9WrropnSBEcQQ8jzTc>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnsop>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Owner: <mailto:dnsop-owner@ietf.org>
List-Post: <mailto:dnsop@ietf.org>
List-Subscribe: <mailto:dnsop-join@ietf.org>
List-Unsubscribe: <mailto:dnsop-leave@ietf.org>

* John Levine:

> It appears that angel <angel@16bits.net> said:
>>Note that gethostbyname(3), returns the list of alias, so it needs to
>>process the CNAMEs.
>>High-level programs generally don't need them, though, ...
>
> I wrote a little test program that prints out the answers from
> gethostbyname() and found it provides a list of CNAMEs, but not the
> final name with the A record, which makes me wunder who uses that
> list and what for:
>
> dig info.whois.services.net a +noall +answer
> info.whois.services.net. 297	IN	CNAME	whois.nic.info.
> whois.nic.info.		297	IN	CNAME	whois.identitydigital.services.
> whois.identitydigital.services.	177 IN	CNAME	whois.identitydigital.gtm.iddg.io.
> whois.identitydigital.gtm.iddg.io. 57 IN A	52.37.99.5
>
> $ ./gethn info.whois.services.net
> names
>  info.whois.services.net
>  whois.nic.info
>  whois.identitydigital.services
> numbers
>  52.37.99.5
>
> Got the sme result on MacOS and FreeBSD and linux.)

Do you print h_name or just the names in h_aliases?

I think there once was a time where the canonical name conveyed
additional information then the starting name.  These days, the
canonical name often is just a generic CDN host name.

Maybe it makes sense to define the canonical name as whatever comes
out of search list processing.  It avoids most CNAME processing
misuses, where DNS data is accidentally trusted in ways that break
security protocols.