Re: [Dime] [RFC3588bis-34] - Host-IP-Address AVP

Ankur Garg <> Fri, 21 September 2012 07:11 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 5501621F86B8 for <>; Fri, 21 Sep 2012 00:11:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.604
X-Spam-Status: No, score=-1.604 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HTML_MESSAGE=0.001, RELAY_IS_203=0.994]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id pkgJFKER80rb for <>; Fri, 21 Sep 2012 00:11:30 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id DDF4621F858F for <>; Fri, 21 Sep 2012 00:11:28 -0700 (PDT)
X-IronPort-AV: E=Sophos; i="4.80,460,1344191400"; d="scan'208,217"; a="564977647"
Received: from unknown (HELO ([]) by with ESMTP; 21 Sep 2012 12:39:33 +0530
Received: from (unknown []) by (Postfix) with SMTP id 2501F12FBC8; Fri, 21 Sep 2012 12:29:00 +0530 (IST)
Received: from localhost (localhost.localdomain []) by (Postfix) with ESMTP id 5CF724A885C0; Fri, 21 Sep 2012 12:39:33 +0530 (IST)
X-Virus-Scanned: amavisd-new at
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 04I9555ldHC4; Fri, 21 Sep 2012 12:39:33 +0530 (IST)
Received: from ( []) by (Postfix) with ESMTP id 40AB64A8857A; Fri, 21 Sep 2012 12:39:33 +0530 (IST)
Date: Fri, 21 Sep 2012 12:39:33 +0530 (IST)
From: Ankur Garg <>
To: Glen Zorn <>
Message-ID: <979805090.1858135.1348211373193.JavaMail.root@rdmail01>
In-Reply-To: <>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_Part_1858134_1966231818.1348211373192"
X-Originating-IP: []
X-Mailer: Zimbra 6.0.15_GA_2995 (ZimbraWebClient - IE7 (Win)/6.0.15_GA_2995)
Subject: Re: [Dime] [RFC3588bis-34] - Host-IP-Address AVP
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Diameter Maintanence and Extentions Working Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 21 Sep 2012 07:11:31 -0000


Is it possible to have two Host-IP-Address AVPs; one containing IPv4 and other is IPv6 address while stack working on dual mode(IPv4 and IPv6) and Configured Peer listening on IPv4 only? It would be correct to send both IPv4 and IPv6 address in such case? 


Ankur Garg ----- Original Message -----

From: "Glen Zorn" <> 
To: "Ben Campbell" <> 
Sent: Friday, September 21, 2012 12:24:08 PM 
Subject: Re: [Dime] [RFC3588bis-34] - Host-IP-Address AVP 

On 09/21/2012 01:24 AM, Ben Campbell wrote: 

> This doesn't really make sense  to me: I was under the impression that 
 > a TCP connection was between two unique addresses. Yes, a box might 
 > ___have_ a whole bunch of addresses it _could_ use, but that seems 
 > irrelevant in the case of TCP (but not SCTP). 
 >>>> Sure TCP is between just two IPs. I never claimed otherwise. 
 >>>> What I mean that say a Diameter node has IP1 to IP5. Only IP1 
 >>>> has a A/AAAA record or given out to other parties for static 
 >>>> configuration. During the CER/CEA (and the TCP connection 
 >>>> established to IP1) it tell in CEA that "I btw also have IP2 to 
 >>>> IP5". A clever implementation can make use of this e.g. for the 
 >>>> transport failure case I described. 
 >>> This actually leads me to agree with the original poster that the 
 >>> behavior surrounding Host-IP-Address is underspecified. The 
 >>> problem is, "clever implementations" are bad for 
 >>> interoperability. If that (or other) behavior is desired, it 
 >>> should be documented. Otherwise any behavior beyond "use it for 
 >>> informational purposes only" is not likely to work across 
 >>> implementations. 
 >> First, we all agree that having more than one Host-IP-Address in 
 >> case of TCP is unnecessary. However, I am interested what possible 
 >> (error) case you have in mind that could cause interoperability 
 >> issue? 

The draft says: 

    The Host-IP-Address AVP (AVP Code 257) is of type Address and is used 
    to inform a Diameter peer of the sender's IP address. 

Suppose that I send, instead of one address, three (assuming the use of 
TCP).  Which one do you use?  What if the list doesn't contain the 
address from which the CEr/CEA command was sent?  If my solution to 
transport failure is to send you three addresses assuming that you'll 
try them sequentially and you don't understand that, my scheme fails and 
since you only have one registered address for me, this could cause a 
much longer outage than if my network admins just did their job and 
registered all the available addresses in the DNS. 

 > I don't have a specific error in mind. My intent was to point out 
 > that while there may be interesting things you can do with 
 > Host-IP-Address (like the example you gave), anything that requires a 
 > mutual understanding between the client and server aren't going to 
 > work unless the understanding exists. In you example, using 
 > Host-IP-Address to tell the peer about other available addresses to 
 > be used for load balancing and/or failover won't work across 
 > implementations unless it's documented somewhere. 
 > The original poster pointed out that they were seeing real IOT issues 
 > because different implementors interpreted the spec differently in 
 > regards to Host-IP-Address. Assuming that these differences were due 
 > to reasonable interpretations of the spec, rather than simple 
 > misunderstandings, that's a pretty big indicator that there's a 
 > problem. 

I would be inclined to write a short draft clarifying that, in the case 
of TCP, exactly one instance of the Host-IP-Address MUST be included in 
the CER/CEA messages. 


DiME mailing list