Multiple gateways support

K. Macy kmacy at freebsd.org
Wed Apr 6 16:15:20 UTC 2011


The weights of the links can be changed at run time. If one link is
not passing traffic its weight should be set to zero until such time
as it is passing traffic again.

On Wed, Apr 6, 2011 at 6:13 PM, Nikolay Denev <ndenev at gmail.com> wrote:
> On Apr 6, 2011, at 5:36 PM, Michael Proto wrote:
>
>> On Wed, Apr 6, 2011 at 8:02 AM, J. Hellenthal <jhell at dataix.net> wrote:
>>> On Wed, Apr 06, 2011 at 01:45:54PM +0400, Eir Nym wrote:
>>>> On 1 April 2011 21:27, Baginski Darren <kickbsd at yandex.ru> wrote:
>>>>> Hi!
>>>>>
>>>>> Could please someone tell me about current state of multiple gw capabilities of FreeBSD?
>>>>> I have dual homed FreeBSD box, one interface ISP1 another ISP2 :
>>>>> 1) can I balance outgoing traffic across them ?
>>>>> 2) Is there support of any kind dead gateway detection?
>>>>> 3) Can I install multiple routes to the same network (with same and with different wight)? If yes how it behaves with one link failure, in particular if interface is down?
>>>>>
>>>
>>> From what you said here it seems that your looking for lagg(4) with
>>> configured with the loadbalance option. Give this man page [1] a
>>> thorough read and youll probably see what your looking for.
>>>
>>> 1) http://www.freebsd.org/cgi/man.cgi?query=lagg
>>>
>>>
>>>>
>>>> about multiply GWs: you can set multiply gw via setfib(1) utility and
>>>> use fib in your firewall rules. But it is not very handy with DHCP and
>>>> rc(8) (setfib is located in /usr/bin and can't be used in /etc/rc.d).
>>>> Due to this I have to add another FreeBSD box to handle dynamic
>>>> routes.
>>>>
>>>> This is the one thing I know which can I do in linux easily and in
>>>> freebsd with hacks.
>>>
>>> --
>>>
>>>  Regards,
>>>
>>>  J. Hellenthal
>>>  JJH48-ARIN
>>>  0x89D8547E
>>>
>>>
>>
>>
>> I don't think lagg(4) will work here, as its designed for two
>> interfaces that are attached to the same network (see the example in
>> the man page). For two different ISPs, I think the setfib approach is
>> probably the way to go.
>>
>>
>> -Proto
>>
>
> Actually I think the OP is asking about the "options RADIX_MPATH" feature.
>
> 1) Yes, It can balance over the two links but only using Modulo-N Hash (RFC2991) algorithm, and probably you should setup NAT on both links.
> 2) AFAIK there is no dead gw detection code yet.
> 3) Yes you can do that. There were some fixes for handling interfaces with no-link but I was not able to see it working in my setup. e.g. the host still tries to send traffic to a interface with no link, effectively blackholing the traffic (this was tested on a soekris box with if_vr(4))
>
> IMHO the whole RADIX_MPATH stuff is still in experimental stage and needs some more work to work correctly.
>
> There is a recent thread about some improvements in RADIX_MPATH.
>
> Regards,
> Nikolay
>
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>


More information about the freebsd-net mailing list