[netmod] 6991bis: host

Ladislav Lhotka <lhotka@nic.cz> Fri, 29 March 2019 14:29 UTC

Return-Path: <lhotka@nic.cz>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 28E611202A7 for <netmod@ietfa.amsl.com>; Fri, 29 Mar 2019 07:29:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7
X-Spam-Level:
X-Spam-Status: No, score=-7 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] 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 aZ8SoqABxZ7N for <netmod@ietfa.amsl.com>; Fri, 29 Mar 2019 07:29:10 -0700 (PDT)
Received: from mail.nic.cz (mail.nic.cz [217.31.204.67]) (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 CBDC41202A3 for <netmod@ietf.org>; Fri, 29 Mar 2019 07:29:08 -0700 (PDT)
Received: from birdie (unknown [IPv6:2001:718:1a02:1::380]) by mail.nic.cz (Postfix) with ESMTPSA id 19AD163080 for <netmod@ietf.org>; Fri, 29 Mar 2019 15:29:06 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=nic.cz; s=default; t=1553869746; bh=T272/5w/V1pXgVl7my34dkeMEZtOrzLk7+RWcPGG4i8=; h=From:To:Date; b=SnYZGRRxt5mPwT437WN5DuMUSuGv7loB01iRmqMNH+G/6LMB2AFTO9MGSTNym57+3 tLScH9fKrjDXu6HcgSxXzInD05BiY7CpW6cVPAV9YJ5KOA1BbZDJLYz5+e7EcSAxpE 8IxCzflqwJ64gYv7Kx2jPER8ZfR/YffPzEs9YBcI=
Message-ID: <542f5183bee87d67247a111733fe7aeccf520085.camel@nic.cz>
From: Ladislav Lhotka <lhotka@nic.cz>
To: NETMOD WG <netmod@ietf.org>
Date: Fri, 29 Mar 2019 15:29:05 +0100
Organization: CZ.NIC
Content-Type: text/plain; charset="UTF-8"
User-Agent: Evolution 3.32.0
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Virus-Scanned: clamav-milter 0.99.2 at mail
X-Virus-Status: Clean
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/PISOifrtow4oWLGW7meBBSri7nM>
Subject: [netmod] 6991bis: host
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 29 Mar 2019 14:29:13 -0000

Hi,

the inet:host type should not use the inet:domain-name as its member because the
latter type doesn't satisfy the requirements of RFC 952 and 1123 on host names.
For example, the type now permits a single dot (".") as the value or the
underscore character.

I propose to change the "host" type as follows:

OLD

    typedef host {
      type union {
        type inet:ip-address;
        type inet:domain-name;
      }
      ...
    }

NEW

    typedef host {
      type union {
        type inet:ip-address;
        type inet:host-name;
      }
      ...
    }

A reasonable definition of "host-name" is IMO a domain name whose labels are NR-
LDH (non-registered letter-digit-hyphen label) [RFC 5890]:

    typedef host-name {
      type string {
        pattern
          '((([a-zA-Z0-9]([a-zA-Z0-9\-]){0,61})?[a-zA-Z0-9]\.)*'
        + '([a-zA-Z0-9]([a-zA-Z0-9\-]){0,61})?[a-zA-Z0-9]\.?)';
        pattern '(.*\.)?..\-\-.*' {
          modifier invert-match;
        }
        length "2..253";
        ...
      }
    }

Lada

-- 
Ladislav Lhotka
Head, CZ.NIC Labs
PGP Key ID: 0xB8F92B08A9F76C67