On Wed, Oct 30, 2019 at 11:46:36PM +0100, Remi Locherer wrote:

> Hi Otto,
> 
> On Wed, Oct 30, 2019 at 03:57:15PM +0100, Otto Moerbeek wrote:
> > Hi,
> > 
> > I got *very* little feedback on this request for testing.
> > 
> > If not enough enough testing is done, I'll either abandon the diff or
> > commit it as-is, introducing bugs that could have been prevented. Both
> > are not good. So get going!
> > 
> >     -Otto
> > 
> 
> I applied your diff and tried with the following config:
> 
> $ unwind -nv
> preference { recursor DoT forwarder dhcp }
> forwarder {
>         9.9.9.9
> }
> captive portal {
>         url "http://captive.apple.com/";
>         expected status 200
>         expected response 
> "<HTML><HEAD><TITLE>Success</TITLE></HEAD><BODY>Success</BODY></HTML>"
>         auto yes
> }
> block list "/etc/unwind_blocklist.txt"
> $
> 
> To force unwind to use 9.9.9.9 I tested with this pf rules:
> 
> $ doas pfctl -sr 
> doas (r...@typhoon.relo.ch) password: 
> block return log all
> pass log all flags S/SA
> pass out log on egress inet from (vether0:network) to any flags S/SA nat-to 
> (egress:0) round-robin
> block return in on ! lo0 proto tcp from any to any port 6000:6010
> block return out log inet proto tcp from any to ! 9.9.9.9 port = 53
> block return out log inet proto udp from any to ! 9.9.9.9 port = 53
> block return out log inet6 proto tcp from any to any port = 53
> block return out log inet6 proto udp from any to any port = 53
> block return out log proto tcp all user = 55
> block return out log proto udp all user = 55
> $
> 
> As expected I can now query 9.9.9.9 but 8.8.8.8 fails:
> 
> $ dig +short undeadly.org @9.9.9.9
> 94.142.241.173
> typhoon ..c/examples$ dig +short undeadly.org @8.8.8.8 
> ;; connection timed out; no servers could be reached
> $
> 
> I expected that unwind would choose 9.9.9.9 with OppDoT. But unwind
> selects dhcp which is correctly displayed as dead:
> 
> $ unwindctl status 
> captive portal is unknown
> 
> selected             type status
>                  recursor dead
>                 forwarder validating
>        *             dhcp dead
> $
> 
> Port 853 on 9.9.9.9 is not blocked:
> 
> $ nc -zv 9.9.9.9 853
> Connection to 9.9.9.9 853 port [tcp/domain-s] succeeded!
> $ nc -zv -u 9.9.9.9 853
> Connection to 9.9.9.9 853 port [udp/domain-s] succeeded!
> $
> 
> Did I do something wrong in unwind.conf?
> 
> Remi

No, you found a bug that happens if the recursor is found dead. In
that case it would switch off OppDot for forwarders as well. Next
version of the diff will have a fix.


As for the unwindctl thing, I could not reproduce that one. Dould it
be that you did not build and install usr.sbin/unwindctl? It looks
like the messaging between unwind and unwindctl is off.

        -Otto

Reply via email to