<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hi,<br><div><br></div><div>I work at an ISP/NSP in Brazil. I'm planning an unbound DNS superserver to answer a lot of customers in our ISP</div><div><br></div><div>This morning I made some tests with the latest unbound version (1.13.0), compiling it with option <font face="monospace" style="background-color:rgb(255,242,204)">--with-libevent</font>.</div><div><br></div><div>After unbound started I noticed system is listening to TCP/UDP Port 53 in more than one instance:</div><div><br></div><div><div><span style="background-color:rgb(207,226,243)"><font face="monospace"># netstat -tulpn</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">Active Internet connections (only servers)</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">tcp        0      0 <a href="http://0.0.0.0:53">0.0.0.0:53</a>              0.0.0.0:*               LISTEN      3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">tcp        0      0 <a href="http://0.0.0.0:53">0.0.0.0:53</a>              0.0.0.0:*               LISTEN      3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">tcp        0      0 <a href="http://0.0.0.0:53">0.0.0.0:53</a>              0.0.0.0:*               LISTEN      3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">tcp        0      0 <a href="http://0.0.0.0:53">0.0.0.0:53</a>              0.0.0.0:*               LISTEN      3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">tcp        0      0 <a href="http://127.0.0.1:8953">127.0.0.1:8953</a>          0.0.0.0:*               LISTEN      3703/unbound</font></span></div><div><span style="font-family:monospace;background-color:rgb(207,226,243)">tcp6       0      0 :::53                   :::*                    LISTEN      3703/unbound</span><br></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">tcp6       0      0 :::53                   :::*                    LISTEN      3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">tcp6       0      0 :::53                   :::*                    LISTEN      3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">tcp6       0      0 :::53                   :::*                    LISTEN      3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">tcp6       0      0 ::1:8953                :::*                    LISTEN      3703/unbound</font></span></div><div><span style="font-family:monospace;background-color:rgb(207,226,243)">udp        0      0 <a href="http://0.0.0.0:53">0.0.0.0:53</a>              0.0.0.0:*                           3703/unbound</span><br></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">udp        0      0 <a href="http://0.0.0.0:53">0.0.0.0:53</a>              0.0.0.0:*                           3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">udp        0      0 <a href="http://0.0.0.0:53">0.0.0.0:53</a>              0.0.0.0:*                           3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">udp        0      0 <a href="http://0.0.0.0:53">0.0.0.0:53</a>              0.0.0.0:*                           3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">udp6       0      0 :::53                   :::*                                3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">udp6       0      0 :::53                   :::*                                3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">udp6       0      0 :::53                   :::*                                3703/unbound</font></span></div><div><span style="background-color:rgb(207,226,243)"><font face="monospace">udp6       0      0 :::53                   :::*                                3703/unbound</font></span></div></div><div><br></div><div>I got some questions im my mind and would like help to understand:</div><div><ul><li>Is this the expected result when unbound is compiled with libevent?</li><li>Does <span style="background-color:rgb(255,242,204)">num-threads: 4</span> created 4 unbound instances to load balance DNS queries?</li><li>Using the parameter  <span style="background-color:rgb(255,242,204)">num-queries-per-thread: 4096</span> will every thread be able to serve 4096 queries?</li></ul></div><div>That was my step-by-step config:<br></div><div><br></div><div><div><span style="background-color:rgb(255,242,204)"><font face="monospace">apt-get install make gcc libssl-dev libevent-dev libexpat1-dev libldns-dev </font><span style="font-family:monospace">libunbound2 libunbound-dev</span></span></div><div><span style="font-family:monospace;background-color:rgb(255,242,204)"><br></span></div><div><span style="background-color:rgb(255,242,204)"><span style="font-family:monospace">cd /tmp</span><br></span></div><div><font face="monospace" style="background-color:rgb(255,242,204)">wget <a href="https://nlnetlabs.nl/downloads/unbound/unbound-latest.tar.gz">https://nlnetlabs.nl/downloads/unbound/unbound-latest.tar.gz</a></font></div><div><font face="monospace" style="background-color:rgb(255,242,204)">tar zxvf unbound-latest.tar.gz</font></div><div><font face="monospace" style="background-color:rgb(255,242,204)">cd unbound-1.13.0/</font></div><div><span style="font-family:monospace;background-color:rgb(255,242,204)"><br></span></div><div><span style="background-color:rgb(255,242,204)"><span style="font-family:monospace">./configure --with-libevent</span><br></span></div><div><font face="monospace" style="background-color:rgb(255,242,204)"><br></font></div><div><font face="monospace" style="background-color:rgb(255,242,204)">make && make install</font></div></div><div><font face="monospace"><br></font></div><div><font face="monospace"><div><span style="background-color:rgb(255,242,204)">groupadd unbound</span></div><div><span style="background-color:rgb(255,242,204)">useradd -c "Unbound DNS resolver" -d /home/unbound -m -g unbound -s /bin/false unbound</span></div><div><br></div><div><span style="background-color:rgb(255,242,204)">unbound-control-setup<br></span></div><div><br></div><div><span style="background-color:rgb(255,242,204)">vim /usr/local/etc/unbound/unbound.conf</span></div><div><br></div><div><div>========================================================<br></div><div><span style="background-color:rgb(207,226,243)"><br></span></div><div><span style="background-color:rgb(217,234,211)">server:</span></div><div><span style="background-color:rgb(217,234,211)">        verbosity: 1</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        extended-statistics: yes</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        num-threads: 4</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        key-cache-slabs: 4</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        interface: 0.0.0.0</span></div><div><span style="background-color:rgb(217,234,211)">        interface: ::0</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        outgoing-range:8192</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        so-rcvbuf: 4m</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        max-udp-size: 4096</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        msg-cache-size: 50m</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        msg-cache-slabs: 4</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        num-queries-per-thread: 4096</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        rrset-cache-size: 100m</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        rrset-cache-slabs: 4</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        infra-cache-slabs: 4</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        do-ip4: yes</span></div><div><span style="background-color:rgb(217,234,211)">        do-ip6: yes</span></div><div><span style="background-color:rgb(217,234,211)">        do-udp: yes</span></div><div><span style="background-color:rgb(217,234,211)">        do-tcp: yes</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        access-control: 120.N.N.0/21 allow</span></div><div><span style="background-color:rgb(217,234,211)">        access-control: 121.N.N.0/22 allow</span></div><div><span style="background-color:rgb(217,234,211)">        access-control: 122.N.A.0/22 allow</span></div><div><span style="background-color:rgb(217,234,211)">        access-control: 123.Y.Z.0/22 allow</span></div><div><span style="background-color:rgb(217,234,211)">        access-control: 124.B.C.0/22 allow</span></div><div><span style="background-color:rgb(217,234,211)">        access-control: <a href="http://100.64.0.0/10">100.64.0.0/10</a> allow</span></div><div><span style="background-color:rgb(217,234,211)">        access-control: 2804:ZXVY::/32 allow</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        logfile: "/usr/local/etc/unbound/unbound.log"</span></div><div><span style="background-color:rgb(217,234,211)">        use-syslog: no</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        hide-identity: no</span></div><div><span style="background-color:rgb(217,234,211)">        hide-version: no</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        use-caps-for-id: no</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">        module-config: "validator iterator"</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">remote-control:</span></div><div><span style="background-color:rgb(217,234,211)">        control-enable: yes</span></div><div><span style="background-color:rgb(217,234,211)">        control-interface: 127.0.0.1</span></div><div><span style="background-color:rgb(217,234,211)">        control-interface: ::1</span></div><div><span style="background-color:rgb(217,234,211)">        control-port: 8953</span></div><div><span style="background-color:rgb(217,234,211)">        server-key-file: "/usr/local/etc/unbound/unbound_server.key"</span></div><div><span style="background-color:rgb(217,234,211)">        server-cert-file: "/usr/local/etc/unbound/unbound_server.pem"</span></div><div><span style="background-color:rgb(217,234,211)">        control-key-file: "/usr/local/etc/unbound/unbound_control.key"</span></div><div><span style="background-color:rgb(217,234,211)">        control-cert-file: "/usr/local/etc/unbound/unbound_control.pem"</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div></div><div><span style="background-color:rgb(217,234,211)">========================================================</span><br></div><div><br></div><div>Then I've used legacy start|stop|restart scripts</div><div>I didn't get luck with systemd scripts</div><div><br></div><div><div><span style="background-color:rgb(255,242,204)">vim /etc/init.d/unbound</span></div><div><span style="background-color:rgb(255,242,204)"><br></span></div><div><span style="background-color:rgb(217,234,211)">========================================================<br></span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">#!/bin/sh</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">BIN="/usr/local/sbin"</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">case "$1" in</span></div><div><span style="background-color:rgb(217,234,211)">    start)</span></div><div><span style="background-color:rgb(217,234,211)">        start-stop-daemon -S -x $BIN/unbound-anchor -v</span></div><div><span style="background-color:rgb(217,234,211)">        start-stop-daemon -S -x $BIN/unbound-control start</span></div><div><span style="background-color:rgb(217,234,211)">        ;;</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">    stop)</span></div><div><span style="background-color:rgb(217,234,211)">        start-stop-daemon -S -x $BIN/unbound-control stop</span></div><div><span style="background-color:rgb(217,234,211)">        ;;</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">    restart)</span></div><div><span style="background-color:rgb(217,234,211)">        stop && sleep 3 && start</span></div><div><span style="background-color:rgb(217,234,211)">        ;;</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">    *)</span></div><div><span style="background-color:rgb(217,234,211)">        echo "Usage: service unbound {start|stop|restart|status}" >&2</span></div><div><span style="background-color:rgb(217,234,211)">        exit 1</span></div><div><span style="background-color:rgb(217,234,211)">        ;;</span></div><div><span style="background-color:rgb(217,234,211)">esac</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">exit 0</span></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)"># END</span></div></div><div><span style="background-color:rgb(217,234,211)"><br></span></div><div><span style="background-color:rgb(217,234,211)">==============================================================</span></div><div><br></div><div><div><span style="background-color:rgb(255,242,204)">chmod +x /etc/init.d/unbound</span><br></div><div><span style="background-color:rgb(255,242,204)">update-rc.d unbound defaults</span></div><div><span style="background-color:rgb(255,242,204)"><br></span></div><div><span style="background-color:rgb(255,242,204)">service unbound start<br></span></div><div><br></div><div><span style="background-color:rgb(255,242,204)"><br></span></div><div><span style="background-color:rgb(255,242,204)"><br></span></div><div><span style="background-color:rgb(255,242,204)"><br></span></div><div></div></div></font></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>