Re: ipv6/ppp: FreeBSD obtains linklocal on tun0 only

From: Zaphod Beeblebrox <zbeeble_at_gmail.com>
Date: Fri, 30 Nov 2018 13:23:22 -0500
As someone who controls both ends of the link (runs the ISP, has service
from the ISP), so far (a bit out of laziness) I have the following
solution...

Now... of note is that we statically assign addresses.  This is not just
being nice, but being practical.  We deal out IPv4 addresses vi IPCP, but
they are, in fact, statically assigned.  In radius we assign IPv6
addresses.  On the servers, we run this ifaceup script:

#!/bin/bash
#
# Add a route to the interface, if appropriate.

PATH=/sbin:/usr/local/bin:$PATH
date=`date`

interface="$1"
authname="$5"

route=`psql -tA --user mpd5 --host postgres.host.com -c "select value from
radreply where username = '$authname' and attribute = 'Framed-IPv6-Route'"
radius`

if [ -n "$route" ]; then
        route -n6 add $route -iface $interface
fi

echo $interface $authname $route $date >>/tmp/mpd5-if-up

It may be prudent to note here that OSPF keeps track of these routes, so we
don't need to.  There's no ifdown script because mpd5 destroys the ngX
interface which deletes the route (99 out of 100 times).

On the client side, we enable ipv6cp (for link local stuff).  Then we add
an ifup script:

/sbin/route -n add -inet6 default -iface ng0 >/tmp/ipv6routeup.log 2>&1

... it might be useful to note that non-BSD endpoints (we use the
linux-based SmartRG modems) seem to add the IPv6 default route
automatically.  We then set the first address statically to the ethernet
device.  This, so far, has been enough to make things work smoothly.

(obPitch: if you're in Canada and can get DSL where you are, hit me up for
a FreeBSD-only (no Cisco) connection)
Received on Fri Nov 30 2018 - 17:23:35 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:19 UTC