Bind9 + TCP_FASTOPEN => no rndc

Christopher Sean Hilton chris at vindaloo.com
Thu Sep 28 14:20:52 UTC 2017


On Wed, Sep 27, 2017 at 09:17:29PM +0000, Dimitry Andric wrote:
> On 27 Sep 2017, at 19:35, Christopher Sean Hilton <chris at vindaloo.com> wrote:
> > 
> > I'm trying to configure bind 9.11 as a nameserver on FreeBSD
> > 11-STABLE. When the bind9 port compile it enables TCP_FASTOPEN but the
> > changes haven't yet been baked into the GENERIC Kernel. I can't find a
> > way to disable the use of TCP_FASTOPEN in bind at startup. Is the only
> > way to fix this problem to build a new kernel with TCP_FASTOPEN
> > enabled?
> 
> It looks like bind enables use of TCP_FASTOPEN whenever its configure
> script finds the define in the system headers.  But it does not check
> whether the functionality actually works with setsockopt.
> 
> In any case, the message is harmless noise, as any errors are ignored:
> 
> #if defined(ISC_PLATFORM_HAVETFO) && defined(TCP_FASTOPEN)
> #ifdef __APPLE__
>         backlog = 1;
> #else
>         backlog = backlog / 2;
>         if (backlog == 0)
>                 backlog = 1;
> #endif
>         if (setsockopt(sock->fd, IPPROTO_TCP, TCP_FASTOPEN,
>                        (void *)&backlog, sizeof(backlog)) < 0) {
>                 isc__strerror(errno, strbuf, sizeof(strbuf));
>                 UNEXPECTED_ERROR(__FILE__, __LINE__,
>                                  "setsockopt(%d, TCP_FASTOPEN) failed with %s",
>                                  sock->fd, strbuf);
>                 /* TCP_FASTOPEN is experimental so ignore failures */
>         }
> #endif
> 

Great,

I assumed that the FASTOPEN failure was related to the inablity to
open the rndc socket. I'll have to debug the rndc socket seperately.


Thanks for help!

-- Chris

-- 
Chris

      __o          "All I was trying to do was get home from work."
    _`\<,_           -Rosa Parks
___(*)/_(*)____.___o____..___..o...________ooO..._____________________
Christopher Sean Hilton                    [chris/at/vindaloo/dot/com]


More information about the freebsd-stable mailing list