Re: [BEHAVE] Application awareness of translator in draft-baker-behave-v4v6-translation-00

Dave Thaler <dthaler@windows.microsoft.com> Thu, 30 October 2008 19:15 UTC

Return-Path: <behave-bounces@ietf.org>
X-Original-To: behave-archive@optimus.ietf.org
Delivered-To: ietfarch-behave-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 3358B28C1CF; Thu, 30 Oct 2008 12:15:21 -0700 (PDT)
X-Original-To: behave@core3.amsl.com
Delivered-To: behave@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 2E6763A6AB1 for <behave@core3.amsl.com>; Thu, 30 Oct 2008 12:15:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -109.698
X-Spam-Level:
X-Spam-Status: No, score=-109.698 tagged_above=-999 required=5 tests=[AWL=-0.729, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8, SARE_PROLOSTOCK_SYM3=1.63, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 56ff9y0cIYbx for <behave@core3.amsl.com>; Thu, 30 Oct 2008 12:15:19 -0700 (PDT)
Received: from smtp.microsoft.com (smtp.microsoft.com [131.107.115.212]) by core3.amsl.com (Postfix) with ESMTP id 21C4B3A6A3F for <behave@ietf.org>; Thu, 30 Oct 2008 12:15:19 -0700 (PDT)
Received: from tk1-exhub-c104.redmond.corp.microsoft.com (157.54.46.188) by TK5-EXGWY-E801.partners.extranet.microsoft.com (10.251.56.50) with Microsoft SMTP Server (TLS) id 8.1.291.1; Thu, 30 Oct 2008 12:15:17 -0700
Received: from tk5-exmlt-w601.wingroup.windeploy.ntdev.microsoft.com (157.54.18.32) by tk1-exhub-c104.redmond.corp.microsoft.com (157.54.46.188) with Microsoft SMTP Server id 8.1.291.1; Thu, 30 Oct 2008 12:15:16 -0700
Received: from NA-EXMSG-W601.wingroup.windeploy.ntdev.microsoft.com ([fe80::75be:c82f:ae04:55bf]) by tk5-exmlt-w601.wingroup.windeploy.ntdev.microsoft.com ([157.54.18.32]) with mapi; Thu, 30 Oct 2008 12:15:16 -0700
From: Dave Thaler <dthaler@windows.microsoft.com>
To: Dan Wing <dwing@cisco.com>, 'Fred Baker' <fred@cisco.com>, 'Xing Li' <xing@cernet.edu.cn>, "congxiao@cernet.edu.cn" <congxiao@cernet.edu.cn>
Date: Thu, 30 Oct 2008 12:15:15 -0700
Thread-Topic: [BEHAVE] Application awareness of translator in draft-baker-behave-v4v6-translation-00
Thread-Index: Ack6sl252j/2qmrtS2iCmbJTZ5EaaQAETWPw
Message-ID: <E9CACA3D8417CE409FE3669AAE1E5A4F0A1090E98A@NA-EXMSG-W601.wingroup.windeploy.ntdev.microsoft.com>
References: <033e01c93ab2$5df07840$c3f0200a@cisco.com>
In-Reply-To: <033e01c93ab2$5df07840$c3f0200a@cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
MIME-Version: 1.0
Cc: "behave@ietf.org" <behave@ietf.org>
Subject: Re: [BEHAVE] Application awareness of translator in draft-baker-behave-v4v6-translation-00
X-BeenThere: behave@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: mailing list of BEHAVE IETF WG <behave.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/behave>, <mailto:behave-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/behave>
List-Post: <mailto:behave@ietf.org>
List-Help: <mailto:behave-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/behave>, <mailto:behave-request@ietf.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: behave-bounces@ietf.org
Errors-To: behave-bounces@ietf.org

IN6_IS_ADDR_V4MAPPED() specifically tests if an address is an IPv4-mapped
address (::FFFF:<IPv4-address>) as defined in RFC 3493 section 3.7.
It does not know about Teredo or 6to4 or anything else.

-Dave

> -----Original Message-----
> From: behave-bounces@ietf.org [mailto:behave-bounces@ietf.org] On
> Behalf Of Dan Wing
> Sent: Thursday, October 30, 2008 10:10 AM
> To: 'Fred Baker'; 'Xing Li'; congxiao@cernet.edu.cn
> Cc: behave@ietf.org
> Subject: [BEHAVE] Application awareness of translator in draft-baker-
> behave-v4v6-translation-00
>
> Fred, Xing, Congxiao,
>
> (speaking as individual contributor)
>
> I stumbled when I read Section 1.4 of
> http://tools.ietf.org/html/draft-baker-behave-v4v6-translation-00.
> Three
> points:
>
> * I believe much of the text in that section belongs in the Framework
> document
> as it is not specific to a particular kind of translation.  The text is
> trying
> to describe the problem (when translation occurs, an application will
> be
> connecting to a host with a different address family and over that
> connection
> the 'wrong' address family might be exchanged; this can lead to
> application
> confusion) and also a solution (IN6_IS_ADDR_V4MAPPED).
>
> * Some of the text describes stuff that just doesn't work.  For
> example,
>
>    There are no extra changes needed to applications to operate through
>    a translator beyond what applications already need to do to operate
>    on a dual node.  The applications that have been modified to work on
>    a dual node already have the mechanisms to determine whether they
> are
>    communicating with an IPv4 or an IPv6 peer.  Thus if the
> applications
>    need to modify their behavior depending on the type of the peer,
> such
>    as ftp determining whether to fallback to using the PORT/PASV
> command
>    when EPRT/EPSV fails (as specified in [RFC2428]), they already need
>    to do that when running on dual nodes and the presence of
> translators
>    does not add anything.  For example, when using the socket API
>    [RFC3493] the applications know that the peer is IPv6 if they get an
>    AF_INET6 address from the name service and the address is not an
>    IPv4-mapped address (i.e., IN6_IS_ADDR_V4MAPPED returns false).  If
>    this is not the case, i.e., the address is AF_INET or an IPv4-mapped
>    IPv6 address, the peer is IPv4.
>
> IN6_IS_ADDR_V4MAPPED only knows about IANA-registered prefixes for
> Teredo and
> 6to4.  I don't believe IN6_IS_ADDR_V4MAPPED is able, by itself, to
> determine
> there is an embedded IPv4 address in the IPv6 address -- but correct me
> if I'm
> wrong.  In order for IN6_IS_ADDR_V4MAPPED to indicate the address went
> through
> a translator when the translator's IPv6 prefix is chosen by the ISP
> (rather
> than IANA) the host needs to know the IPv6 prefix (and length) in order
> for
> the IN6_IS_ADDR_V4MAPPED macro to function as expected.  This means (a)
> the
> host's stack needs to implement something like
> draft-wing-behave-learn-prefix-00.txt and tie that learned adddress
> into to
> its IN6_IS_ADDR_V4MAPPED macro or (b) the application needs to
> implement
> something like draft-wing-behave-learn-prefix-00.txt.
>
> * The text describing EPRT/EPSV needs considerable expansion.  At this
> point
> there is consensus that a DNSSEC-aware resolver in the end host needs
> to know
> about the translator.  But I don't believe there is consensus that
> other
> applications -- such as FTP -- need to be knowledgable about the
> translator.
> In the past, Brian Carpenter has raised an objection to the idea of
> putting
> translator awareness into IPv6 applications
> <http://www.ietf.org/mail-archive/web/behave/current/msg04129.html> so
> I
> expect more discussion around this will be necessary.  If we decide to
> have
> the application be aware of the translator, a generalized document
> titled
> "Application Aspects of IPv6 Translation" seems appropriate and would
> be
> similar to the existing RFC4038 ("Application Aspects of IPv6
> Transition",
> previously draft-ietf-v6ops-application-transition).
>
> The alternative to translator awareness in the host's application is an
> ALG
> somewhere in the network (probably as part of the translator).  In
> BEHAVE for
> NAT44, due to the existing deployment of FTP ALGs we agreed that FTP
> ALGs were
> tolerable.
>
> We need to decide where protocols should be 'fixed up' for translation.
> This
> decision might be on an application-by-application basis.  Starting
> with the
> FTP seems appropriate, as everyone is reasonably familiar with it.
>
> -d
>
> _______________________________________________
> Behave mailing list
> Behave@ietf.org
> https://www.ietf.org/mailman/listinfo/behave

_______________________________________________
Behave mailing list
Behave@ietf.org
https://www.ietf.org/mailman/listinfo/behave