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

"Dan Wing" <dwing@cisco.com> Thu, 30 October 2008 19:25 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 D53823A6A5F; Thu, 30 Oct 2008 12:25:37 -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 A8B4D3A6987 for <behave@core3.amsl.com>; Thu, 30 Oct 2008 12:25:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.741
X-Spam-Level:
X-Spam-Status: No, score=-5.741 tagged_above=-999 required=5 tests=[AWL=-0.772, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, SARE_PROLOSTOCK_SYM3=1.63]
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 vOlnQHDT+W8X for <behave@core3.amsl.com>; Thu, 30 Oct 2008 12:25:35 -0700 (PDT)
Received: from sj-iport-1.cisco.com (sj-iport-1.cisco.com [171.71.176.70]) by core3.amsl.com (Postfix) with ESMTP id EEC303A6909 for <behave@ietf.org>; Thu, 30 Oct 2008 12:25:34 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="4.33,517,1220227200"; d="scan'208";a="98238369"
Received: from sj-dkim-1.cisco.com ([171.71.179.21]) by sj-iport-1.cisco.com with ESMTP; 30 Oct 2008 19:25:27 +0000
Received: from sj-core-2.cisco.com (sj-core-2.cisco.com [171.71.177.254]) by sj-dkim-1.cisco.com (8.12.11/8.12.11) with ESMTP id m9UJPRRp006927; Thu, 30 Oct 2008 12:25:27 -0700
Received: from dwingwxp01 ([10.32.240.195]) by sj-core-2.cisco.com (8.13.8/8.13.8) with ESMTP id m9UJPReF017339; Thu, 30 Oct 2008 19:25:27 GMT
From: Dan Wing <dwing@cisco.com>
To: 'Dave Thaler' <dthaler@windows.microsoft.com>, 'Fred Baker' <fred@cisco.com>, 'Xing Li' <xing@cernet.edu.cn>, congxiao@cernet.edu.cn
References: <033e01c93ab2$5df07840$c3f0200a@cisco.com> <E9CACA3D8417CE409FE3669AAE1E5A4F0A1090E98A@NA-EXMSG-W601.wingroup.windeploy.ntdev.microsoft.com>
Date: Thu, 30 Oct 2008 12:25:27 -0700
Message-ID: <051e01c93ac5$43c01580$c3f0200a@cisco.com>
MIME-Version: 1.0
X-Mailer: Microsoft Office Outlook 11
Thread-Index: Ack6sl252j/2qmrtS2iCmbJTZ5EaaQAETWPwAAA2DQA=
In-Reply-To: <E9CACA3D8417CE409FE3669AAE1E5A4F0A1090E98A@NA-EXMSG-W601.wingroup.windeploy.ntdev.microsoft.com>
x-mimeole: Produced By Microsoft MimeOLE V6.00.2900.3350
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; l=5491; t=1225394727; x=1226258727; c=relaxed/simple; s=sjdkim1004; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=dwing@cisco.com; z=From:=20=22Dan=20Wing=22=20<dwing@cisco.com> |Subject:=20RE=3A=20[BEHAVE]=20Application=20awareness=20of =20translator=20indraft-baker-behave-v4v6-translation-00 |Sender:=20; bh=NiMUNwvaN5t9A+EHOM78iGw4Gvxf/iogZJIf5eryj28=; b=IQaCwY+tfrIavP9UnzMbXWG+GqvvaQGaOQ/Dm0AIzF3mCxZYoFEBkRPfJR 5B9lFgQWGQgplVjAGuzSBWDOLiReAGG6OcSUcEnKTH2qBLyh9qhrTK3eQVaJ /tquWKZcEZgFsIJpd808teDUz4uXsAgjyFRp9F/ZHsqVIADfdUvQg=;
Authentication-Results: sj-dkim-1; header.From=dwing@cisco.com; dkim=pass ( sig from cisco.com/sjdkim1004 verified; );
Cc: behave@ietf.org
Subject: Re: [BEHAVE] Application awareness of translator indraft-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.

Thanks.  

But none of the proposals (IVI, NAT64, sNAT-PT) propose using that prefix --
they're all using operator prefixes,
http://tools.ietf.org/html/draft-baker-behave-v4v6-framework-00#appendix-A.2 

So IN6_IS_ADDR_V4MAPPED would return false for a translated address, right?

-d


> -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