Subject: [hiaps] Host identifiers

From: Behcet Sarikaya <[email-masked]>
Date: Wed, 27 Nov 2013 14:07:00 -0600

Hi all,

I would like to ask a simple question and hopefully open up a discussion:
what is host identifier or HOST_ID?

In RFC 6967, it is defined as:

due to address sharing, servers need
   extra information beyond the source IP address to
   differentiate the
   sending host.  We call this information the HOST_ID.

The answer seems to be different for each use case. For prefix sharing, it
is the sending host's IPv6 address. For hosts behind NAT, it is the sending
host's IPv4 address.

What about other cases? For CGNs?

Regards,

Behcet

---

From: Dan Wing <[email-masked]>
Date: Wed, 27 Nov 2013 16:23:57 -0800

On Nov 27, 2013, at 12:07 PM, Behcet Sarikaya <[email-masked]> wrote:

> Hi all,
> 
> I would like to ask a simple question and hopefully open up a discussion: what is host identifier or HOST_ID? 
> 
> The answer seems to be different for each use case. For prefix sharing, it is the sending host's IPv6 address. For hosts behind NAT, it is the sending host's IPv4 address.

It doesn't need to be the sending host's IP address.  For example, if all the hosts behind a NAT are in the 192.168.1/24 subnet, an 8-bit HOST_ID would be enough to uniquely identify each host behind the NAT, and no purpose in using 32 bits.  That is, the most significant bits of the IPv4 address are not necessary.  As another example, with an IPv6 client communicating to a NAT64, the most significant bits of the IPv6 address are not necessary (because all of the subscribers using an ISP's NAT64 belong to that ISP, and have been assigned IPv6 addresses from the ISP's own IPv6 prefix), and the least significant 64 bits of the IPv6 address are also not necessary (because IPv6 privacy addresses makes them pretty useless to identify a particular 'host').  So with NAT64 there are really about the same number of bits used to identify a 'subscriber' as with IPv4 -- which is not much of a surprise.

> What about other cases? For CGNs?

CGN is just a big NAT, so same use-case applies.  But need to think about impact of VRFs or VLANs or similar technology behind the CGN, which could mean there are multiple "customers" (users) with 192.168.1/24 subnets, but each connecting to that CGN using different VLAN (or VRF).  If those all share the same public IPv4 address, then HOST_ID would need to include the VRF/VLAN number (if all that is necessary is identifying the 'subscriber') and possibly also the subscriber host's IPv4 address (if the need extends to describing the host, too).

-d