Subject: [BEHAVE] Building IPv6 Applications which Access IPv4 Servers - draft-wing-v6ops-v6app-v4server-00

From: "Dan Wing" <[email-masked]>
Date: Mon, 19 Oct 2009 17:49:25 -0700

(Please reply to [email-masked])

V6Ops, Apps-Discuss, Behave,

I just submitted a short draft, "Building IPv6 Applications which Access IPv4
Servers" which may be interesting to apps area, behave, and v6ops, as it has
some bearing on each.

The document applies to IPv6 hosts operating in BEHAVE's scenarios 1 ("an IPv6
network to IPv4 Internet"), and scenario 5 ("an IPv6 network to an IPv4
network").

It explains that while DNS64 and 6/4 translation is helpful and functional for
many IPv6 applications, there are some IPv6 applications that will need to
additional functionality -- either (a) in the application itself using the
translator (e.g., an IPv6 SIP application could be extended to do this) or (b)
using some sort of application-level proxy functionality (e.g., a SIP
application can use a TURN-IPv6 relay; an HTTP application can use an HTTP
proxy that is connected to IPv4 and IPv6).

The purpose of this document is to examine 6/4 translation in more detail, and
show what IPv6 applications need to add so that we can avoid Application Layer
Gateways (ALGs) in hosts, in CPEs, and in 6/4 translators.  Some protocols,
notably SIP, have already finished their efforts to explain how the protocol
will transition to IPv6 (in fact, two SIP documents explain two different
mechanisms; that might not be a bad thing).  Other protocols such as FTP are
being examined by BEHAVE.  Other protocols, such as RTSP, XMPP, and probably
others, I have no idea of their status regarding IPv6 and if/how they have
decided to handle IPv6-only applications communicating with IPv4 addresses.
This draft hopes to start that discussion.

   Abstract:

   When an application runs on a host or network that only supports IPv6
   ("IPv6-only"), it is sometimes necessary that the application
   communicate with IPv4 peers.  When that communication involves DNS,
   DNS64 and a 6/4 translator works well without any changes to most
   applications.  However, when that communication does not involve DNS,
   it can require additional features be configured on or programmed
   into the IPv6 application.  This document explains why this
   functionality is important and describes mechanisms for applications
   to provide such functionality.

http://tools.ietf.org/html/draft-wing-v6ops-v6app-v4server-00

Comments welcome.

-d