Subject: Re: Results: Straw poll: autoconf vs manual conf

From: James Carlson <[email-masked]>
Date: Mon, 1 Oct 2007 08:29:52 -0400

Ralph Droms writes:
> Cisco has had DHCPv6 (client, server and relay agent) in IOS since  
> 2003.  The first TAHI DHCPv6 testing was also in 2003.  Results from  
> the interoperability testing of several servers and clients was used  
> to improve the DHCPv6 spec (RFC 3315), published in July 2003.  The  
> dibbler project DHCPv6 client and server have been available for  
> several years, as well.

DHCPv6 client-side support integrated into Solaris back in January
2007.  The first update release with it went out last month.

-- 
James Carlson, Solaris Networking              <[email-masked]>
Sun Microsystems / 35 Network Drive        71.232W   Vox +1 781 442 2084
MS UBUR02-212 / Burlington MA 01803-2757   42.496N   Fax +1 781 442 1677

--------------------------------------------------------------------
IETF IPv6 working group mailing list
[email-masked]
Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

---

From: "Templin, Fred L" <[email-masked]>
Date: Mon, 1 Oct 2007 07:01:46 -0700

I would be interested to know who has implemented and/or
is using DHCPv6 prefix delegation (RFC3633), because I'm
seeing some interesting use cases for it.

Thanks - Fred
[email-masked] 

> -----Original Message-----
> From: James Carlson [mailto:[email-masked]] 
> Sent: Monday, October 01, 2007 5:30 AM
> To: Ralph Droms
> Cc: DE JUAN HUARTE FEDERICO; Iljitsch van Beijnum; IPV6 Mailing List
> Subject: Re: Results: Straw poll: autoconf vs manual conf
> 
> Ralph Droms writes:

---

From: James Carlson <[email-masked]>
Date: Mon, 1 Oct 2007 10:08:47 -0400

> seeing some interesting use cases for it.

Yep.  And I know I haven't implemented it.  ;-}

---

From: Iljitsch van Beijnum <[email-masked]>
Date: Mon, 1 Oct 2007 18:21:41 +0200

> seeing some interesting use cases for it.

When I was writing my book ( http://www.runningipv6.net/ ) in 2005 I  
did some testing between the Cisco IOS and KAME implementations, KAME  
only as a server and IOS both as a client and a server. Worked well  
despite the experimental status of the KAME daemon at that time.

The cool thing is that you can sort of store the delegated prefix on  
a Cisco router and then use it elsewhere (not everywhere, though) in  
the configuration, for instance, to generate RAs. So one change to  
the DHCP server can let a router and all the hosts connected to it  
renumber. This is certainly something I'd like to see in consumer  
grade CPEs.

I've heard a lot about an ISC DHCPv6 implementation but no idea what  
the status is there, and if they support or plan to support prefix  
delegation.

---

From: Ralph Droms <[email-masked]>
Date: Mon, 1 Oct 2007 13:10:43 -0400

Cisco's CNR and IOS DHCPv6 servers both implement PD.  The IOS DHCPv6  
client implements PD, and can automatically assign /64s from a  
delegated prefix to downstream interfaces.

- Ralph

---

From: "Templin, Fred L" <[email-masked]>
Date: Mon, 1 Oct 2007 10:12:53 -0700

> delegated prefix to downstream interfaces.

That's good. Can it also do /128's?

Thanks - Fred

---

From: Ralph Droms <[email-masked]>
Date: Mon, 1 Oct 2007 13:16:50 -0400

???

Do you mean: can it assign interface addresses from the delegated  
prefixes via DHCPv6 on downstream interfaces as well?

- Ralph

---

From: "Templin, Fred L" <[email-masked]>
Date: Mon, 1 Oct 2007 10:23:40 -0700

> prefixes via DHCPv6 on downstream interfaces as well?

Let's say that I'm a requesting router, and all I need is
a /128. Shouldn't I be able to ask a delegating router for
a /128, and then assign it to one of my downstream
interfaces?

As a requesting router, I'd also like to have a way to ask
the delegating router to assign me a *specific* /128 - or,
to at least have a way to ask it to assign me a /128 with
a specific interface ID. Do you see any problems with that?

Thanks - Fred

---

From: Iljitsch van Beijnum <[email-masked]>
Date: Mon, 1 Oct 2007 19:23:40 +0200

On 1-okt-2007, at 19:09, Ralph Droms wrote:

> Didn't you write recently that you knew of no DHCPv6  
> implementations when you wrote your book?

I don't think so. I probably said no implementations that do address  
assignment.

---

From: Brian Dickson <[email-masked]>
Date: Mon, 01 Oct 2007 13:35:31 -0400

> delegated prefix to downstream interfaces.
I'm a bit confused by the above. It might be terminology, or your use of 
it, but either way, it would be helpful to give some examples of IOS 
server(s) and IOS client(s), doing DHCPv6 vanilla, and DHCPv6 with PD.

E.g.
r1 (IOS box, acting as DHCPv6 server)
r2 (IOS box, acting both as DHCPv6 client to r1, and DHCPv6 server to h1)
h1 (DHCPv6 client)

r2 requests address from r1, gets A1-1 (address 1 from address block A1).
r2 assigns A1-1 to its interface on-link with r1. r2 sets its default to 
whatever address was given to it by r1.
r1 delegates prefix A2 to r2.
r2 assigns A2-1 to itself, and applies A2-1 its downstream interface, 
which is also serving DHCPv6.
h1 request an address from r2.
r2 assigns A2-2 to h1. r2 also sets the default gateway to A2-1 so h1 
uses r2 (specifically A2-1) as its default route.

Is this what you're talking about?

If so, what additional assumptions are built in, about the interface 
addresses and block sizes?
Will assignments only occur if the prefix is /64?
What happens if the PD is something other than /64? E.g. a /80, or a 
/120, for examples.

Thanks,

Brian

---

From: Jim Jackson <[email-masked]>
Date: Mon, 1 Oct 2007 21:28:40 +0100 (BST)

> r2 (IOS box, acting both as DHCPv6 client to r1, and DHCPv6 server to h1)

I'd assume r2 is dhcpv6 client to r1 and assigns /64s via RA to h1

---

From: Ralph Droms <[email-masked]>
Date: Mon, 1 Oct 2007 18:06:21 -0400

Ah, OK, thanks for the clarification...

- Ralph

On Oct 1, 2007, at Oct 1, 2007,1:23 PM, Iljitsch van Beijnum wrote:

> I don't think so. I probably said no implementations that do  
> address assignment.

---

From: Iljitsch van Beijnum <[email-masked]>
Date: Mon, 1 Oct 2007 22:26:22 +0200

On 1-okt-2007, at 19:35, Brian Dickson wrote:

> I'm a bit confused by the above. It might be terminology, or your  
> use of it, but either way, it would be helpful to give some  
> examples of IOS server(s) and IOS client(s), doing DHCPv6 vanilla,  
> and DHCPv6 with PD.

You mean something like this?

!
interface Ethernet1
  ipv6 address autoconfig
  ipv6 dhcp client pd dhcpv6prefix
!
interface Ethernet2
  ipv6 address dhcpv6prefix 0:0:0:A0::/64 eui-64
!

See my message earlier today for the URL for my book that I took this  
from.  :-)

This bit of config tells the router to be a stateless autoconfig  
client on ethernet1 and to ask a DHCPv6 server for a prefix. Note  
that prefix delegation and address assignment are two completely  
different features, it's not just a case of setting the prefix length  
to 128.

The resulting prefix is stored in the variable dhcpv6prefix and  
subsequently used to number interface ethernet2, which will then  
automatically send out router advertisements using the /64 in  
question. Note that bits 56 - 63 are set to A0 here which means the  
prefix that is received must be at least a /56.

IIRC, the RAs reuse the DHCP timers so renumbering becomes very easy.

> What happens if the PD is something other than /64? E.g. a /80, or  
> a /120, for examples.

In the example above you need a /56. I haven't tested it, but I  
assume a longer prefix will work if you set the ethernet2 prefix  
length to something small enough except that if you send out RAs with  
a prefix other than /64 the hosts won't autoconfigure addresses.