tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

IFA_ROUTE behaviour



On Thu, 2009-03-05 at 19:44 -0600, David Young wrote:
> On Fri, Mar 06, 2009 at 12:16:49AM +0000, Roy Marples wrote:
> > On Thu, 2009-03-05 at 13:17 -0600, David Young wrote:
> > > > route change 192.168.0.0/24 -ifp re1
> > > 
> > > Reach destination 192.168.0.0/24 through re1.
> > 
> > This is the case which I'm interested in.
> > At this point it becomes a managed route, so whilst dropping the
> > IFA_ROUTE flag is correct, we should not add it to the sockaddr_dl ifa.
> 
> The sockaddr_dl ifa?

Well, the ifa it changes to isn't for the prefix route.
So let me prephrase slightly.

When you can an address and it generated an automatic subnet route, the
address is marked as IFA_ROUTE. If you then delete this address and
there is another address on the same prefix then the route remains and
the other address is marked as IFA_ROUTE.

But what happens when we manipulate the route instead of the address?
If the new ifa is the same prefix, should we mark the new ifa as
IFA_ROUTE? I think yes, and the patch did this.
If the new ifa is not on the same prefix, should we mark the new ifa as
IFA_ROUTE? I think no, but the patch did this as well and incorrectly
too.
If we add a new route and the ifa is the same prefix, should we mark the
ifa as IFA_ROUTE?
If we delete the prefix route, should we remove IFA_ROUTE from the ifa?
I think yes, but the patch did this regardless of prefix.

In a nutshell, I think that if a route changes ifa and the ifa is marked
IFA_ROUTE, the flag should be dropped if the route is the ifa prefix. If
the route is also the prefix for the new ifa then the ifa should be
marked IFA_ROUTE. Any other route manipulations should not touch
IFA_ROUTE. If the IFA_ROUTE flag is dropped as a result, then the
user/application that did this is responsible for managing the route.
Does this sound ok?

Sorry for all this, but I'm still trying to understand the intent of it.

Thanks

Roy

Attachment: signature.asc
Description: This is a digitally signed message part



Home | Main Index | Thread Index | Old Index