[dnsdist] How to force connect via TCP to downstream server?

Andrew Pogrebennyk andrew.nau.ua at gmail.com
Fri Sep 4 14:49:08 UTC 2020


Hello Remi,
ok thank you for the very quick response with the hint.

Best regards.

On Fri, Sep 4, 2020 at 3:00 PM Remi Gacogne via dnsdist
<dnsdist at mailman.powerdns.com> wrote:
>
> Hi Andrew,
>
> On 9/4/20 2:51 PM, Andrew Pogrebennyk via dnsdist wrote:
> > I am using dnsdist as load-balancer because I want specific types of
> > queries to be routed to different downstream servers. I have one
> > specific server that only responds on TCP (non-standard port) but it is
> > immediately marked as down because dnsdist is doing the healthcheck over
> > UDP.
> >
> > So in my example below Enum DNS is only reachable via TCP. Is there a
> > way to disable UDP to this server? I've added type = tcp under server,
> > but it does not make any difference.
> >
> > I can't seem to find any documented switch in newServer() for that
> > purpose - any ideas why?
>
> Unfortunately that feature doesn't exist, and I'm not sure it would make
> sense to disable UDP in most cases. It would be nice to be able to do
> the health checks over TCP, though, but that has not been implemented
> yet either.
> If you only care about TCP what you could do, however, is to disable the
> health check for that backend:
>
> tcpServ = newServer({
>     address = "8.8.8.8",
>     name = "external_dns_1",
>     pool = "ExternalPool",
>     type = tcp,
> })
> tcpServ:setUp()
>
> Queries sent over TCP will then be forwarded over TCP. Queries received
> over UDP will be sent over UDP, as usual, but if you only want TCP to
> work that's fine.
>
> Hope that helps,
>
> --
> Remi Gacogne
> PowerDNS.COM BV - https://www.powerdns.com/
>
> _______________________________________________
> dnsdist mailing list
> dnsdist at mailman.powerdns.com
> https://mailman.powerdns.com/mailman/listinfo/dnsdist



-- 
Regards,
Andrew


More information about the dnsdist mailing list