[radvd-devel-l] Overriding of link-local default route?

Kim Holviala kim at holviala.com
Sun Dec 7 04:24:54 EST 2008


First, some background info: I've have my own /64 allocated by my ISP 
and routed to my through my regular ADSL connection. My problem is that 
while the netblock and the default route work just fine, the router 
advertisements do not. It seems that one of the devices between me and 
my ISP's v6 router doesn't like RA's and messes with them, so whenever I 
connect a device to the v6 network one of three things happens: a) 
everything works, b) I get zero RA's or c) I get RA's just fine, but the 
default route in them is messed up.

Anyway, this would be easy to fix in the v4 world - I'd just set up my 
own DHCPv4 server which would then serve out addresses from my netblock 
and tell the clients to use the ISP's router as their default gateway.

But in the v6 world all goes to hell. I can't set up radvd (or any other 
RA daemon) to serve out my ISP's default gateway (global address, 
link-locals don't go through some devices properly). I can't divide the 
/64 to two smaller blocks so that I could do routing between them (and 
have my own "subnet" here). I could set up DHCPv6 server here but 
surprise, surprise, DHCPv6 doesn't serve out default gateways... Argh!

So the only thing I came up with is to modify radvd to be a "rogue" RA 
daemon which sends out RA packets where the router (default gw) is not 
my radvd servers own link-local but my ISP's global gw address instead.

Is that even theoretically possible? I mean RA packets are just regular 
data packets with some octets in them, and "lying" about the router 
shouldn't be a problem. I quickly browsed through the sources of radvd 
and found out about AdvSourceLLAddress which sends out the routers 
address inside the packet. It shouldn't be too hard to have the address 
it sends out configurable, right? Any idea if that would work?

- Kim

More information about the radvd-devel-l mailing list