Re: [MMUSIC] [rtcweb] What goes into c= line address when FQDN is used for the default candidate?

Justin Uberti <> Fri, 01 February 2019 05:02 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 4FDD013121F for <>; Thu, 31 Jan 2019 21:02:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -17.641
X-Spam-Status: No, score=-17.641 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.142, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=unavailable autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id OPpSOnoApwrD for <>; Thu, 31 Jan 2019 21:02:13 -0800 (PST)
Received: from ( [IPv6:2607:f8b0:4864:20::d2d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 42CF7131215 for <>; Thu, 31 Jan 2019 21:02:13 -0800 (PST)
Received: by with SMTP id s8so4665840iob.13 for <>; Thu, 31 Jan 2019 21:02:13 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=AGECSDaObmgXidC19DhPF9AOVX9xM2GQ0+KGyKGTl3A=; b=PAHBp6zwxHORsuLi2xTqIk6aBsZqdvbbJXhK/0Wfl9uLayT8wMeyoQbhDsE/yUCGPq 1suYZ27y3gwuYRp1v2w2L9fxBzk58JminJF7UKATYZulp9ySVFDTEJQ2i9ntNuJG64xw 15qE57rpI0HBH05PmT4tnGdZ0D1QHnF4uO2wvsrbbw0KRK3D4/zC6yB6XOFHr1ef1XtI yred82YanWcWUrJPXzNa1NDNL0txkfPSDHV1fOMgHG9/hqUXT2ELGa/xIkYBwNNOFgw3 6H3ASMgQmO8gBjdikC8Lk/vQuqeuxgtpOZ+zoCtphK3e2H0LD0PU7V5uMkCbvyVj10gR H1jQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=AGECSDaObmgXidC19DhPF9AOVX9xM2GQ0+KGyKGTl3A=; b=bcxfsho9PSU1xKtfzgHJjQPlSr9598AzpLDdmSQCz1sjXBB4vZ9FP18047c0hh9f4q ZfRCjJJ7Eco3qXVzkoJgb0pzEgjqrdzHi+tHhfyvE8FPvKYK0BMT8PWFzteYJFtn9aUm K3GAykWHxEdho+qH40u1wXysu/pDv+UDexFSMKZWHg5BcLHg6GVysoXRQY3A1LWMLbdR y61825AS5vEKPlLG/rD+UU+ZZl6Xh6XAv0J5WSlYqx1oFVvbRR/gOYcJcDe8zgiEAaBo kRJj/6nfneQKgT8tJ0WGbRN8VKFmJ9wABuviaMm+qI0ZT6673CVFZfWGnpG/j73A3/Ws 8vjw==
X-Gm-Message-State: AHQUAuZlZIKlUbUlT6V6eHhRNMDIJ51wo8gKfBoM28HzGI6TqoRokfS5 CN/5G7JKqBuFihqFoPpTO12/qWeOnGFV6Seu5w0xsA==
X-Google-Smtp-Source: AHgI3IaijygWO/TXJ/DxRS8S0ne/F6JIDiVO2TPsEvtkJEnzI5A/HSPczHHeWurh+EUOSG2LeDxuOMnfWXgRanrT1XA=
X-Received: by 2002:a5e:920d:: with SMTP id y13mr20044337iop.95.1548997331943; Thu, 31 Jan 2019 21:02:11 -0800 (PST)
MIME-Version: 1.0
References: <> <> <> <> <> <>
In-Reply-To: <>
From: Justin Uberti <>
Date: Thu, 31 Jan 2019 21:02:00 -0800
Message-ID: <>
To: Roman Shpount <>
Cc: "Dale R. Worley" <>, RTCWeb IETF <>, mmusic WG <>
Content-Type: multipart/alternative; boundary="000000000000bb35320580ce0b7e"
Archived-At: <>
Subject: Re: [MMUSIC] [rtcweb] What goes into c= line address when FQDN is used for the default candidate?
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 01 Feb 2019 05:02:19 -0000

My recommendation here would be that we do c=IN IP6
3557773f-5f01-46a4-aa14-54ab35b3d778.local, with either IP4 or IP6
depending on which type of address is being wrapped.

Re #1: RFC 4566 seems to indicate you can use either IP4 or IP6 for FQDN in
the c= line.

     unicast-address =     IP4-address / IP6-address / FQDN / extn-addr

Re #2: Quoth 5245 <>:

   <connection-address>:  is taken from RFC 4566
<> [RFC4566
<>].  It is the
      IP address of the candidate, allowing for IPv4 addresses, IPv6
      addresses, and *fully qualified domain names (FQDNs).*  When parsing
      this field, an agent can differentiate an IPv4 address and an IPv6

      address by presence of a colon in its value - the presence of a
      colon indicates IPv6.  An agent MUST ignore candidate lines that
      include candidates with IP address versions that are not supported
      or recognized.  An IP address SHOULD be used, but an FQDN MAY be
      used in place of an IP address.  In that case, when receiving an
      offer or answer containing an FQDN in an a=candidate attribute,
      the FQDN is looked up in the DNS first using an AAAA record
      (assuming the agent supports IPv6), and if no result is found or
      the agent only supports IPv4, using an A.  If the DNS query
      returns more than one IP address, one is chosen, and then used for
      the remainder of ICE processing.

On Thu, Jan 31, 2019 at 8:43 PM Roman Shpount <> wrote:

> On Thu, Jan 31, 2019 at 10:58 PM Justin Uberti <> wrote:
>> We can however all agree that "c=IN IP6" is busted:
> I guess one way to interpret this that each address should have a MDNS
> alias. So, if you are dealing with dual stack host, it should provide two
> MDNS candidates, one of which is IPv4 and another IPv6. The c= line should
> specify FQDN for one of those candidates and specify the type (IP4 or IP6).
> There are two problems:
> 1. There is no way to know which address type is in the candidate-address
> when FQDN is used there. Guidance in ice-sip-sdp is talking about the
> presence of column in IP6 address, but this definitely does not apply to
> FQDN. It would've been better to specify something like local4 and local6
> as FQDN suffix in MDNS alias to specify the candidate-address type so that
> correct DNS request can be issued.
> 2. A lot (if not most) SDP/ICE implementations do no support parsing FQDN
> in candidate-address or c= line. This might create interop problems since
> RFC 5245 specified that candidate-address is an IP Address.
> Regards,
> _____________
> Roman Shpount