> Giancarlo Razzolini <grazzol...@gmail.com>:
> 
> Em 08-07-2015 15:05, lausg...@gmail.com escreveu:
>> My isp gives me a bunch of dynamic external ip addresses via dhcp one per 
>> nic. They don't share common default gateway route all together, so I'm 
>> forced to put each next in its own rdomain.
>> 
>> As so, http://www.openbsd.org/faq/pf/pools.html#nat or 
>> http://www.openbsd.org/faq/pf/pools.html#outgoing examples are not 
>> applicable.
>> I'm just interested in random redistribution. Here's an ugly solution I 
>> currently use:
>> match out on em0 inet from lan:network nat-to (em0:0)
>> match out on em1 inet from lan:network nat-to (em1:0)
>> match out on em2 inet from lan:network nat-to (em2:0)
>> 
>> pass in on lan inet from lan:network to !lan:0 # fallback
>> pass in on lan inet from lan:network to !lan:0 rtable 1 probability 34%
>> pass in on lan inet from lan:network to !lan:0 rtable 2 probability 34%
>> 
>> What would be the correct way of doing this? Is it possible to achieve this 
>> using vether(4) without big performance penalty (which occurs when real nic 
>> and virtual interface which relies on it are not in the same rdomain)? 
>> Thanks!
>> 
> You could, instead of using routing domains, enable mpath, and then deal with 
> the default gateways using route-to and reply-to. Load balancing can be 
> achieved with the round-robin or, even better, least-states directive. To put 
> a cherry on top, you can make all these rules on anchors and make ifstated 
> check for the gateways availability, and update the rules accordingly. At 
> least this is my approach for dealing with many default gateways. Using tags 
> you can write an even conciser ruleset.
> 
> Cheers,
> Giancarlo Razzolini

Thank you for the answer! Indeed its a more correct approach.
Is there a simple way to teach (any openbsd compliant) dhcp client to use 
mpath? Also not sure whether it will work in this case: 
http://www.rinta-aho.org/blog/?p=214

Reply via email to