That's simple, FreeBSD can do policy based routing with ipfw.
you need to compile a kernel with:
options         IPFIREWALL
options         IPFIREWALL_FORWARD

myself I prefer to have these too but they're not absolutely necessary:
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=100
options         IPFIREWALL_DEFAULT_TO_ACCEPT
options         IPDIVERT
options         DUMMYNET
options         BRIDGE

Once we have a running kernel with the proper options, sysctl net.inet.ip.sourceroute=1
and use the ipfw fwd rules to set gateways based on policies.
example:
ipfw add fwd 192.168.1.1 ip from 172.20.0.0/24 to not 172.20.0.0/24 out
makes 192.168.1.1 the next hop for any packet originating from 172.22.0.0/24 but 
destined outside 172.20.0.0/24

Baldur

PS: man 8 ipfw and read http://www.freebsd.org/handbook and search 
http://www.google.com for further clues.

On Wednesday 26 June 2002 20:30, you wrote:
> Hello,
>
> I was wondering if it is possible to do pure source address based routing
> under FreeBSD.  What I really want to do is route packets from particular
> source addresses to tunnels (gif devices) regardless of what the packet's
> destination address is.
>
> thanks,
> matt
>
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-net" in the body of the message

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-net" in the body of the message

Reply via email to