So everything worked perfectly until I updated my OS today to version 12.6.1, after which I found that Internet breaks when sshuttle is connected and realized that DNS is not working.
I tried reinstalling the utility through brew uninstall/install, but it did not help, though it updated all dependencies in the world.
When launched with verbose output I can see something like this:
% sshuttle --dns -r my.centralus.cloudapp.azure.com -e "ssh -F $HOME/azsshconfig -o 'ServerAliveInterval=30'" 10.188.0.0/14 -vvv
Starting sshuttle proxy (version 1.1.1).
c : Starting firewall manager with command: ['/usr/local/Cellar/sshuttle/1.1.1/libexec/bin/python3.11', '/usr/local/bin/sshuttle', '-v', '-v', '-v', '--method', 'auto', '--firewall']
fw: Starting firewall with Python version 3.11.0
fw: Selecting a method automatically...
fw: which() could not find 'iptables' in /Users/user/.pyenv/shims:/Users/user/google-cloud-sdk/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/usr/local/go/bin:/Users/user/.cargo/bin:/Users/user/.local/bin
fw: nat method not supported because 'iptables' command is missing.
fw: which() could not find 'nft' in /Users/user/.pyenv/shims:/Users/user/google-cloud-sdk/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/usr/local/go/bin:/Users/user/.cargo/bin:/Users/user/.local/bin
fw: nft method not supported because 'nft' command is missing.
fw: which() found 'pfctl' at /sbin/pfctl
fw: Method 'pf' was automatically selected.
fw: which() found 'pfctl' at /sbin/pfctl
fw: ready method name pf.
c : Found DNS servers in /etc/resolv.conf: ['10.142.6.1']
c : Failed to read /run/systemd/resolve/resolv.conf when looking for DNS servers: No such file or directory
c : IPv6 enabled: Using default IPv6 listen address ::1
c : Method: pf
c : IPv4: on
c : IPv6: on
c : UDP : off (not available with pf method)
c : DNS : on
c : User: off (not available with pf method)
c : Subnets to forward through remote host (type, IP, cidr mask width, startPort, endPort):
c : (<AddressFamily.AF_INET: 2>, '10.188.0.0', 14, 0, 0)
c : Subnets to exclude from forwarding:
c : (<AddressFamily.AF_INET: 2>, '127.0.0.1', 32, 0, 0)
c : (<AddressFamily.AF_INET6: 30>, '::1', 128, 0, 0)
c : DNS requests normally directed at these servers will be redirected to remote:
c : (<AddressFamily.AF_INET: 2>, '10.142.6.1')
c : Trying to bind redirector on port 12300
c : TCP redirector listening on ('::1', 12300, 0, 0).
c : TCP redirector listening with <socket.socket fd=5, family=30, type=1, proto=0, laddr=('::1', 12300, 0, 0)>.
c : TCP redirector listening on ('127.0.0.1', 12300).
c : TCP redirector listening with <socket.socket fd=7, family=2, type=1, proto=0, laddr=('127.0.0.1', 12300)>.
c : Trying to bind DNS redirector on port 12300
c : Trying to bind DNS redirector on port 12299
c : DNS listening on ('::1', 12299, 0, 0).
c : DNS listening with <socket.socket fd=8, family=30, type=2, proto=0, laddr=('::1', 12299, 0, 0)>.
c : DNS listening on ('127.0.0.1', 12299).
c : DNS listening with <socket.socket fd=9, family=2, type=2, proto=0, laddr=('127.0.0.1', 12299)>.
c : Starting client with Python version 3.11.0
c : Connecting to server...
c : which() found 'ssh' at /usr/bin/ssh
c : executing: ['/usr/bin/ssh', '-F', '/Users/user/azsshconfig', '-o', 'ServerAliveInterval=30', 'wat-prod-ra.centralus.cloudapp.azure.com', '--', '/bin/sh -c \'P=python3; $P -V 2>/dev/null || P=python; exec "$P" -c \'"\'"\'import sys, os; verbosity=3; sys.stdin = os.fdopen(0, "rb"); exec(compile(sys.stdin.read(1704), "assembler.py", "exec")); sys.exit(98);\'"\'"\'; exit 97\'']
Authorized uses only. All activity may be monitored and reported.
c : > channel=0 cmd=PING len=7 (fullness=0)
s: Running server on remote host with /usr/bin/python3 (version 3.6.9)
s: assembling 'sshuttle' (88 bytes)
s: assembling 'sshuttle.cmdline_options' (85 bytes)
s: assembling 'sshuttle.helpers' (2853 bytes)
s: assembling 'sshuttle.ssnet' (5811 bytes)
s: assembling 'sshuttle.hostwatch' (2518 bytes)
s: assembling 'sshuttle.server' (3786 bytes)
s: latency control setting = True
s: > channel=0 cmd=PING len=7 (fullness=0)
s: auto-nets:False
s: > channel=0 cmd=ROUTES len=0 (fullness=7)
c : Connected to server.
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=7/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 15/15
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=7/0)
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=7/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 15/15
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=7/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 8/8
s: Waiting: 1 r=[0] w=[] x=[] (fullness=7/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=0 cmd=PING len=7
c : > channel=0 cmd=PONG len=7 (fullness=7)
c : < channel=0 cmd=ROUTES len=0
fw: Got subnets: [(2, 14, False, '10.188.0.0', 0, 0), (2, 32, True, '127.0.0.1', 0, 0), (30, 128, True, '::1', 0, 0)]
fw: Got partial nslist: [(2, '10.142.6.1')]
fw: Got nslist: [(2, '10.142.6.1')]
fw: Got ports: 12300,12300,12299,12299
fw: Got udp: False, user: None, tmark: 0x01, sshuttle_pid: 34736
fw: setting up.
fw: setting up IPv6.
fw: >> pfctl -s Interfaces -i lo -v
fw: >> pfctl -s all
fw: rules:
pass out inet6 proto tcp to ::1/128
fw: >> pfctl -a sshuttle6-12300 -f /dev/stdin
fw: >> pfctl -E
fw: setting up IPv4.
fw: >> pfctl -s Interfaces -i lo -v
fw: >> pfctl -s all
fw: rules:
table <dns_servers> {10.142.6.1}
rdr pass on lo0 inet proto tcp from ! 127.0.0.1 to 10.188.0.0/14 -> 127.0.0.1 port 12300
rdr pass on lo0 inet proto udp to <dns_servers> port 53 -> 127.0.0.1 port 12299
pass out route-to lo0 inet proto tcp to 10.188.0.0/14 keep state
pass out inet proto tcp to 127.0.0.1/32
pass out route-to lo0 inet proto udp to <dns_servers> port 53 keep state
fw: >> pfctl -a sshuttle-12300 -f /dev/stdin
fw: >> pfctl -E
fw: which() could not find 'resolvectl' in /Users/user/.pyenv/shims:/Users/user/google-cloud-sdk/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/usr/local/go/bin:/Users/user/.cargo/bin:/Users/user/.local/bin
fw: which() could not find 'systemd-resolve' in /Users/user/.pyenv/shims:/Users/user/google-cloud-sdk/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/usr/local/go/bin:/Users/user/.cargo/bin:/Users/user/.local/bin
c : mux wrote: 15/15
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=14/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=0 cmd=PING len=7
s: > channel=0 cmd=PONG len=7 (fullness=7)
s: mux wrote: 15/15
s: Waiting: 1 r=[0] w=[] x=[] (fullness=14/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=0 cmd=PONG len=7
c : received PING response
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=0/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=0 cmd=PONG len=7
s: received PING response
s: Waiting: 1 r=[0] w=[] x=[] (fullness=0/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 56847): 41 bytes
c : > channel=1 cmd=DNS_REQ len=41 (fullness=0)
c : Remaining DNS requests: 1
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=41/0)
c : Ready: 3 r=[9] w=[11] x=[]
c : mux wrote: 49/49
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 56758): 41 bytes
c : > channel=2 cmd=DNS_REQ len=41 (fullness=41)
c : Remaining DNS requests: 2
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=82/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 49/49
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=82/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=1 cmd=DNS_REQ len=41
s: Incoming DNS request channel=1.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: < channel=2 cmd=DNS_REQ len=41
s: Incoming DNS request channel=2.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 3 r=[0, 4, 5] w=[] x=[] (fullness=0/0)
s: Ready: 3 r=[5] w=[] x=[]
s: DNS response: 182 bytes
s: > channel=2 cmd=DNS_RESPONSE len=182 (fullness=0)
s: expiring dnsreqs channel=2
s: Waiting: 2 r=[0, 4] w=[1] x=[] (fullness=182/0)
s: Ready: 2 r=[] w=[1] x=[]
s: mux wrote: 190/190
s: Waiting: 2 r=[0, 4] w=[] x=[] (fullness=182/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=2 cmd=DNS_RESPONSE len=182
c : dns_done: channel=2 src=None dst=('10.142.6.35', 56758)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=82/0)
s: Ready: 2 r=[4] w=[] x=[]
s: DNS response: 142 bytes
s: > channel=1 cmd=DNS_RESPONSE len=142 (fullness=182)
s: expiring dnsreqs channel=1
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=324/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 150/150
s: Waiting: 1 r=[0] w=[] x=[] (fullness=324/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=1 cmd=DNS_RESPONSE len=142
c : dns_done: channel=1 src=None dst=('10.142.6.35', 56847)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=82/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 56847): 41 bytes
c : > channel=3 cmd=DNS_REQ len=41 (fullness=82)
c : Remaining DNS requests: 1
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=123/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 49/49
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=123/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 56758): 41 bytes
c : > channel=4 cmd=DNS_REQ len=41 (fullness=123)
c : Remaining DNS requests: 2
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=164/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 49/49
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=164/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=3 cmd=DNS_REQ len=41
s: Incoming DNS request channel=3.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: < channel=4 cmd=DNS_REQ len=41
s: Incoming DNS request channel=4.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 3 r=[0, 5, 6] w=[] x=[] (fullness=324/0)
s: Ready: 3 r=[5, 6] w=[] x=[]
s: DNS response: 142 bytes
s: > channel=3 cmd=DNS_RESPONSE len=142 (fullness=324)
s: DNS response: 182 bytes
s: > channel=4 cmd=DNS_RESPONSE len=182 (fullness=466)
s: expiring dnsreqs channel=3
s: expiring dnsreqs channel=4
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=648/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 150/150
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=648/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 190/190
s: Waiting: 1 r=[0] w=[] x=[] (fullness=648/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=3 cmd=DNS_RESPONSE len=142
c : dns_done: channel=3 src=None dst=('10.142.6.35', 56847)
c : < channel=4 cmd=DNS_RESPONSE len=182
c : dns_done: channel=4 src=None dst=('10.142.6.35', 56758)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=164/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 52387): 35 bytes
c : > channel=5 cmd=DNS_REQ len=35 (fullness=164)
c : Remaining DNS requests: 1
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=199/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 43/43
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=199/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=5 cmd=DNS_REQ len=35
s: Incoming DNS request channel=5.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 2 r=[0, 4] w=[] x=[] (fullness=648/0)
s: Ready: 2 r=[4] w=[] x=[]
s: DNS response: 35 bytes
s: > channel=5 cmd=DNS_RESPONSE len=35 (fullness=648)
s: expiring dnsreqs channel=5
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=683/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 43/43
s: Waiting: 1 r=[0] w=[] x=[] (fullness=683/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=5 cmd=DNS_RESPONSE len=35
c : dns_done: channel=5 src=None dst=('10.142.6.35', 52387)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=199/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 52387): 35 bytes
c : > channel=6 cmd=DNS_REQ len=35 (fullness=199)
c : Remaining DNS requests: 1
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=234/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 43/43
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=234/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=6 cmd=DNS_REQ len=35
s: Incoming DNS request channel=6.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 2 r=[0, 5] w=[] x=[] (fullness=683/0)
s: Ready: 2 r=[5] w=[] x=[]
s: DNS response: 35 bytes
s: > channel=6 cmd=DNS_RESPONSE len=35 (fullness=683)
s: expiring dnsreqs channel=6
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=718/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 43/43
s: Waiting: 1 r=[0] w=[] x=[] (fullness=718/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=6 cmd=DNS_RESPONSE len=35
c : dns_done: channel=6 src=None dst=('10.142.6.35', 52387)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=234/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 56847): 41 bytes
c : > channel=7 cmd=DNS_REQ len=41 (fullness=234)
c : Remaining DNS requests: 1
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=275/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 49/49
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=275/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=7 cmd=DNS_REQ len=41
s: Incoming DNS request channel=7.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 2 r=[0, 4] w=[] x=[] (fullness=718/0)
s: Ready: 2 r=[4] w=[] x=[]
s: DNS response: 142 bytes
s: > channel=7 cmd=DNS_RESPONSE len=142 (fullness=718)
s: expiring dnsreqs channel=7
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=860/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 150/150
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=7 cmd=DNS_RESPONSE len=142
c : dns_done: channel=7 src=None dst=('10.142.6.35', 56847)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=275/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 56758): 41 bytes
c : > channel=8 cmd=DNS_REQ len=41 (fullness=275)
c : Remaining DNS requests: 1
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=316/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 49/49
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=316/0)
s: Waiting: 1 r=[0] w=[] x=[] (fullness=860/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=8 cmd=DNS_REQ len=41
s: Incoming DNS request channel=8.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 2 r=[0, 5] w=[] x=[] (fullness=860/0)
s: Ready: 2 r=[5] w=[] x=[]
s: DNS response: 182 bytes
s: > channel=8 cmd=DNS_RESPONSE len=182 (fullness=860)
s: expiring dnsreqs channel=8
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=1042/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 190/190
s: Waiting: 1 r=[0] w=[] x=[] (fullness=1042/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=8 cmd=DNS_RESPONSE len=182
c : dns_done: channel=8 src=None dst=('10.142.6.35', 56758)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=316/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 52387): 35 bytes
c : > channel=9 cmd=DNS_REQ len=35 (fullness=316)
c : Remaining DNS requests: 1
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=351/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 43/43
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=351/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=9 cmd=DNS_REQ len=35
s: Incoming DNS request channel=9.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 2 r=[0, 4] w=[] x=[] (fullness=1042/0)
s: Ready: 2 r=[4] w=[] x=[]
s: DNS response: 35 bytes
s: > channel=9 cmd=DNS_RESPONSE len=35 (fullness=1042)
s: expiring dnsreqs channel=9
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=1077/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 43/43
s: Waiting: 1 r=[0] w=[] x=[] (fullness=1077/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=9 cmd=DNS_RESPONSE len=35
c : dns_done: channel=9 src=None dst=('10.142.6.35', 52387)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=351/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 56847): 41 bytes
c : > channel=10 cmd=DNS_REQ len=41 (fullness=351)
c : Remaining DNS requests: 1
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=392/0)
c : Ready: 3 r=[9] w=[11] x=[]
c : mux wrote: 49/49
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 56758): 41 bytes
c : > channel=11 cmd=DNS_REQ len=41 (fullness=392)
c : Remaining DNS requests: 2
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=433/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 49/49
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=433/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=10 cmd=DNS_REQ len=41
s: Incoming DNS request channel=10.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 2 r=[0, 5] w=[] x=[] (fullness=1077/0)
s: Ready: 2 r=[0] w=[] x=[]
s: < channel=11 cmd=DNS_REQ len=41
s: Incoming DNS request channel=11.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 3 r=[0, 4, 5] w=[] x=[] (fullness=1077/0)
s: Ready: 3 r=[5] w=[] x=[]
s: DNS response: 142 bytes
s: > channel=10 cmd=DNS_RESPONSE len=142 (fullness=1077)
s: expiring dnsreqs channel=10
s: Waiting: 2 r=[0, 4] w=[1] x=[] (fullness=1219/0)
s: Ready: 2 r=[] w=[1] x=[]
s: mux wrote: 150/150
s: Waiting: 2 r=[0, 4] w=[] x=[] (fullness=1219/0)
s: Ready: 2 r=[4] w=[] x=[]
s: DNS response: 182 bytes
s: > channel=11 cmd=DNS_RESPONSE len=182 (fullness=1219)
s: expiring dnsreqs channel=11
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=1401/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 190/190
s: Waiting: 1 r=[0] w=[] x=[] (fullness=1401/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=10 cmd=DNS_RESPONSE len=142
c : dns_done: channel=10 src=None dst=('10.142.6.35', 56847)
c : < channel=11 cmd=DNS_RESPONSE len=182
c : dns_done: channel=11 src=None dst=('10.142.6.35', 56758)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=433/0)
c : Ready: 3 r=[9] w=[] x=[]
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 65096): 38 bytes
c : > channel=12 cmd=DNS_REQ len=38 (fullness=433)
c : Remaining DNS requests: 1
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=471/0)
c : Ready: 3 r=[9] w=[11] x=[]
c : mux wrote: 46/46
c : Accept UDP using recvfrom.
c : DNS request from ('10.142.6.35', 60020): 38 bytes
c : > channel=13 cmd=DNS_REQ len=38 (fullness=471)
c : Remaining DNS requests: 2
c : Remaining UDP channels: 0
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[11] x=[] (fullness=509/0)
c : Ready: 3 r=[] w=[11] x=[]
c : mux wrote: 46/46
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=509/0)
s: Ready: 1 r=[0] w=[] x=[]
s: < channel=12 cmd=DNS_REQ len=38
s: Incoming DNS request channel=12.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: < channel=13 cmd=DNS_REQ len=38
s: Incoming DNS request channel=13.
s: Found DNS servers in /etc/resolv.conf: ['127.0.0.53']
s: DNS: sending to '127.0.0.53':53 (try 1)
s: Waiting: 3 r=[0, 5, 6] w=[] x=[] (fullness=1401/0)
s: Ready: 3 r=[5, 6] w=[] x=[]
s: DNS response: 84 bytes
s: > channel=12 cmd=DNS_RESPONSE len=84 (fullness=1401)
s: DNS response: 96 bytes
s: > channel=13 cmd=DNS_RESPONSE len=96 (fullness=1485)
s: expiring dnsreqs channel=12
s: expiring dnsreqs channel=13
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=1581/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 92/92
s: Waiting: 1 r=[0] w=[1] x=[] (fullness=1581/0)
s: Ready: 1 r=[] w=[1] x=[]
s: mux wrote: 104/104
s: Waiting: 1 r=[0] w=[] x=[] (fullness=1581/0)
c : Ready: 3 r=[11] w=[] x=[]
c : < channel=12 cmd=DNS_RESPONSE len=84
c : dns_done: channel=12 src=None dst=('10.142.6.35', 65096)
c : < channel=13 cmd=DNS_RESPONSE len=96
c : dns_done: channel=13 src=None dst=('10.142.6.35', 60020)
c : Waiting: 3 r=[5, 7, 8, 9, 11] w=[] x=[] (fullness=509/0)
^Cfw: undoing changes.
fw: undoing IPv6 changes.
fw: >> pfctl -a sshuttle6-12300 -F all
fw: >> pfctl -X 18109761870060662977
fw: undoing IPv4 changes.
fw: >> pfctl -a sshuttle-12300 -F all
fw: >> pfctl -X 18109761870060633185
fw: which() could not find 'resolvectl' in /Users/user/.pyenv/shims:/Users/user/google-cloud-sdk/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/usr/local/go/bin:/Users/user/.cargo/bin:/Users/user/.local/bin
fw: which() could not find 'systemd-resolve' in /Users/user/.pyenv/shims:/Users/user/google-cloud-sdk/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/usr/local/go/bin:/Users/user/.cargo/bin:/Users/user/.local/bin
c :
c : Keyboard interrupt: exiting.
It can be seen that DNS requests are coming by messages like "DNS request from ('10.142.6.35', 56847)", but I am afraid that the rest of output does not make much sense to me.
Besides DNS issue, the rest seems to work fine. If I add an entry into my /etc/hosts, it solves the problem for that host.
Can anyone please help me to troubleshoot? What diagnostics can I run to pinpoint the issue?
Thank you,
VR