[DragonFlyBSD - Submit #2960] net.inet.carp.setroute sysctl

bugtracker-admin at leaf.dragonflybsd.org bugtracker-admin at leaf.dragonflybsd.org
Thu Oct 27 07:33:39 PDT 2016

Issue #2960 has been updated by fgudin.

sepherosa wrote:

> instead of deleted then re-added.  Can you be more specific about your
> breakage?

Suppose hostA ( and hostB ( run squid processes and share via CARP.
When squid on hostA tries to resolve a name with the local nameserver (say, it will choose a source address from the default route data. And return packets may or may not (depending on the load-balancing algo) reach back to it.
As discussed over IRC, CARP touching routes can also be annoying in other settings (tried to replace ARP lb with DNS RR, but i had to add aliases, etc. to work around this routing mess).

Submit #2960: net.inet.carp.setroute sysctl

* Author: fgudin
* Status: New
* Priority: Normal
* Assignee: 
* Category: Networking
* Target version: 

CARP adds and deletes routes as interfaces state change. I wanted to prevent it from messing with routes on my hosts, and thus introduced a new sysctl under net.inet.carp (default behaviour kept obviously). Diff was done against v4.6.1.

My use case was a dual squid proxy setting, where their processes couldn't even resolve names, as the local resolvers were themselves subject to ARP load-balancing. AFAIU, the default route being set to CARP's IP address implied that their outgoing connections had their source address set to the virtual IP. This may be ok for routing, etc. but as soon as the CARP-enabled host has to initiate sessions, it breaks. Of course, I could be plain wrong and willingly accepting advice if there's a better solution.

Thanks in advance,
Francis GUDIN

carp.diff (3.36 KB)

You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account

More information about the Submit mailing list