[kea-dev] IA_NA + IA_PD

Tomek Mrugalski tomasz at isc.org
Tue Oct 7 13:18:37 UTC 2014


Apologies for late response.

On 25/09/14 21:06, Sebastián Fritz wrote:
> We are considering to support several CMTSs, so as you recommend us,
>  we’re going to start assigning IA_NA as management address (side WAN)
> and IAPREFIX at the side LAN within the  same subnet. Additionally,
> below I’m presenting another scenario where I found a problem and I
> would like to know your opinion:
> -Knowing that CMTS already supports route injection to update the
> prefixes assigned to eRouters according to RFC 4779  (Section ),
> it could be possible to keep the prefix to a client which I need moving
> from one to other CMTS. In this case, if I have associated relay-agent,
> IA_NA pool and pd-pools altogether at the same subnet,  it’s impossible
> to keep the same IAPREFIX because the subnet and the relay-agent
>  changes when the client is moved to another CMTS. In this way,
> personally I think  that  I would be great,  if Kea can support
> associate a same pd-pool with different subnets.
No, such a thing is not supported.

This looks a bit like mobility, you move your client to a new location
and expect it to get the same prefix it got in its previous location. In
a typical network, the client would get new parameters (including
address and prefix) at its new location.

Honestly speaking, this is the first time I heard about such a feature
request. There are at least two possible ways forward here. First, we
are currently implementing host reservation that's going to be shipped
in 0.9.1. There will be checks in HR that reserved addresses and
prefixes are within the subnet, but I guess we could add a knob to
explicitly disable those checks. That would work for you if the scenario
of client moving and still getting his prefix is infrequent and rather
rare. Otherwise you'd have to maintain a list of reservations that is a
long as your list of subscribers. Doable, but most likely awkward to

Second option is to use hooks. We do have an extension mechanism. When a
lease is about to assigned, a code from thirt party library ("callouts")
may be executed. They can override the server's proposal regarding what
to assign. It is possible for you to implement such a library that would
consult some sort of list of relocated clients and override server's
decision as needed. Hooks are called for all incoming packets, so this
would best for your if you had a lot of relocated clients. This is
something you could potentially look into. Note that developing hooks
library requires C++ knowledge. You may want to read more about this at
http://kea.isc.org -> Developer's Guide -> Hooks Developer's Guide.

Hope that helps,

More information about the kea-dev mailing list