Static Server

Test suite that connects DUT1 over DUT0 using DoH. Meanwhile, DUT0 establishes a connection with the upstream server and forwards DNS queries to it.

Server With Upstream DoH

Description

Configures DUT0 to connect, using DNS-over-HTTPS (DoH) over an upstream server.

Scenario

Step 1: Set the following configuration in DUT0 :

set interfaces ethernet eth0 address 10.215.168.64/24
set protocols static route 0.0.0.0/0 next-hop 10.215.168.1
set service dns proxy server cert file 'running://dns.dut0.crt'
set service dns proxy server cert key 'running://dns.dut0.key'
set service dns proxy server-name RD
set service dns proxy static RD protocol dns-over-https hash ff80e2d024d82777d02b37c8a1ed89520186169f14f43384f0622363e9f2d2a7
set service dns proxy static RD protocol dns-over-https host name remote.dns
set service dns proxy static RD protocol dns-over-https ip 10.215.168.1
set service dns resolver local
set service dns static host-name teldat.com inet 10.11.12.13
set system certificate trust 'running://remote.dns-server.crt'
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 2: Run command system journal show | cat at DUT0 and check if output matches the following regular expressions:

(?m)^.*\[RD\] OK \(DoH\) - rtt: \d+ms$
Show output
Feb 12 17:49:38.375339 osdx systemd-journald[1959]: Runtime Journal (/run/log/journal/fef7273cfed74888920ec39438478308) is 2.9M, max 17.2M, 14.2M free.
Feb 12 17:49:38.376016 osdx systemd-journald[1959]: Received client request to rotate journal, rotating.
Feb 12 17:49:38.376060 osdx systemd-journald[1959]: Vacuuming done, freed 0B of archived journals from /run/log/journal/fef7273cfed74888920ec39438478308.
Feb 12 17:49:38.386609 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system journal clear'.
Feb 12 17:49:38.625248 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system coredump delete all'.
Feb 12 17:49:38.903660 osdx OSDxCLI[79875]: User 'admin' entered the configuration menu.
Feb 12 17:49:39.042294 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set interfaces ethernet eth0 address 10.215.168.64/24'.
Feb 12 17:49:39.116774 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set protocols static route 0.0.0.0/0 next-hop 10.215.168.1'.
Feb 12 17:49:39.194677 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:49:39.287815 osdx ubnt-cfgd[245739]: inactive
Feb 12 17:49:39.311750 osdx INFO[245745]: FRR daemons did not change
Feb 12 17:49:39.339952 osdx kernel: 8021q: adding VLAN 0 to HW filter on device eth0
Feb 12 17:49:39.386221 osdx WARNING[245814]: No supported link modes on interface eth0
Feb 12 17:49:39.387741 osdx modulelauncher[245814]: osdx.utils.xos cmd error: /sbin/ethtool -A eth0 autoneg on
Feb 12 17:49:39.387761 osdx modulelauncher[245814]: Command '/sbin/ethtool -A eth0 autoneg on' returned non-zero exit status 76.
Feb 12 17:49:39.389004 osdx modulelauncher[245814]: osdx.utils.xos cmd error: /sbin/ethtool -s eth0 autoneg on advertise Asym_Pause off Pause off --
Feb 12 17:49:39.389015 osdx modulelauncher[245814]: Command '/sbin/ethtool -s eth0 autoneg on advertise Asym_Pause off Pause off --' returned non-zero exit status 75.
Feb 12 17:49:39.425057 osdx cfgd[1631]: [79875]Completed change to active configuration
Feb 12 17:49:39.438375 osdx OSDxCLI[79875]: User 'admin' committed the configuration.
Feb 12 17:49:39.489008 osdx OSDxCLI[79875]: User 'admin' left the configuration menu.
Feb 12 17:49:39.644055 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'ping 10.215.168.1 count 1 size 56 timeout 1'.
Feb 12 17:49:39.724676 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system journal show | cat'.
Feb 12 17:49:40.918659 osdx OSDxCLI[79875]: User 'admin' entered the configuration menu.
Feb 12 17:49:41.032136 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set system certificate trust running://remote.dns-server.crt'.
Feb 12 17:49:41.107114 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server-name RD'.
Feb 12 17:49:41.216136 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy static RD protocol dns-over-https host name remote.dns'.
Feb 12 17:49:41.297278 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy static RD protocol dns-over-https ip 10.215.168.1'.
Feb 12 17:49:41.389787 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy static RD protocol dns-over-https hash ff80e2d024d82777d02b37c8a1ed89520186169f14f43384f0622363e9f2d2a7'.
Feb 12 17:49:41.489601 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server cert file running://dns.dut0.crt'.
Feb 12 17:49:41.635440 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server cert key running://dns.dut0.key'.
Feb 12 17:49:41.709279 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns resolver local'.
Feb 12 17:49:41.849453 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns static host-name teldat.com inet 10.11.12.13'.
Feb 12 17:49:41.981088 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:49:42.113874 osdx ubnt-cfgd[245913]: inactive
Feb 12 17:49:42.135566 osdx INFO[245921]: FRR daemons did not change
Feb 12 17:49:42.153347 osdx ca-certificates[245937]: Updating certificates in /etc/ssl/certs...
Feb 12 17:49:42.700734 osdx ubnt-cfgd[246949]: rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
Feb 12 17:49:42.710622 osdx ca-certificates[246954]: 1 added, 0 removed; done.
Feb 12 17:49:42.713675 osdx ca-certificates[246961]: Running hooks in /etc/ca-certificates/update.d...
Feb 12 17:49:42.717388 osdx ca-certificates[246963]: done.
Feb 12 17:49:42.832398 osdx systemd[1]: Started dnscrypt-proxy.service - DNSCrypt client proxy.
Feb 12 17:49:42.834133 osdx cfgd[1631]: [79875]Completed change to active configuration
Feb 12 17:49:42.836950 osdx OSDxCLI[79875]: User 'admin' committed the configuration.
Feb 12 17:49:42.861384 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] dnscrypt-proxy 2.0.45
Feb 12 17:49:42.861640 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] Network connectivity detected
Feb 12 17:49:42.861823 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] Dropping privileges
Feb 12 17:49:42.864511 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] Network connectivity detected
Feb 12 17:49:42.864574 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
Feb 12 17:49:42.864574 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
Feb 12 17:49:42.864574 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] Now listening to https://[::]:3000/dns-query [DoH]
Feb 12 17:49:42.864574 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] Firefox workaround initialized
Feb 12 17:49:42.864574 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] Loading the set of cloaking rules from [/tmp/tmp1rw2ibw2]
Feb 12 17:49:42.874017 osdx OSDxCLI[79875]: User 'admin' left the configuration menu.
Feb 12 17:49:42.945528 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] [RD] OK (DoH) - rtt: 54ms
Feb 12 17:49:42.945528 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] Server with the lowest initial latency: RD (rtt: 54ms)
Feb 12 17:49:42.945528 osdx dnscrypt-proxy[247022]: [2026-02-12 17:49:42] [NOTICE] dnscrypt-proxy is ready - live servers: 1

Step 3: Set the following configuration in DUT1 :

set interfaces ethernet eth0 address 10.215.168.65/24
set protocols static route 0.0.0.0/0 next-hop 10.215.168.1
set service dns proxy server-name DUT0
set service dns proxy static DUT0 protocol dns-over-https hash becacdb6bed90b0973d6a8407119685ba4539097d1b5bcb26ac762db2c812cfc
set service dns proxy static DUT0 protocol dns-over-https host name dns.dut0
set service dns proxy static DUT0 protocol dns-over-https host port 3000
set service dns proxy static DUT0 protocol dns-over-https ip 10.215.168.64
set service dns static host-name dns.dut0 inet 10.215.168.64
set service ssh
set system certificate trust 'running://CA.crt'
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 4: Run command system journal show | cat at DUT1 and check if output matches the following regular expressions:

(?m)^.*\[DUT0\] OK \(DoH\) - rtt: \d+ms$
Show output
Feb 12 17:49:38.359428 osdx systemd-journald[1751]: Runtime Journal (/run/log/journal/4b9b84bfb27047f880a6339fcfe21077) is 900.0K, max 6.5M, 5.6M free.
Feb 12 17:49:38.361504 osdx systemd-journald[1751]: Received client request to rotate journal, rotating.
Feb 12 17:49:38.361562 osdx systemd-journald[1751]: Vacuuming done, freed 0B of archived journals from /run/log/journal/4b9b84bfb27047f880a6339fcfe21077.
Feb 12 17:49:38.368905 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'system journal clear'.
Feb 12 17:49:38.582967 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'system coredump delete all'.
Feb 12 17:49:39.765126 osdx OSDxCLI[37265]: User 'admin' entered the configuration menu.
Feb 12 17:49:39.853752 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set interfaces ethernet eth0 address 10.215.168.65/24'.
Feb 12 17:49:39.930273 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set protocols static route 0.0.0.0/0 next-hop 10.215.168.1'.
Feb 12 17:49:40.028745 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service ssh'.
Feb 12 17:49:40.102082 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:49:40.220430 osdx ubnt-cfgd[91713]: inactive
Feb 12 17:49:40.293566 osdx INFO[91734]: FRR daemons did not change
Feb 12 17:49:40.325506 osdx kernel: 8021q: adding VLAN 0 to HW filter on device eth0
Feb 12 17:49:40.377899 osdx WARNING[91804]: No supported link modes on interface eth0
Feb 12 17:49:40.379589 osdx modulelauncher[91804]: osdx.utils.xos cmd error: /sbin/ethtool -A eth0 autoneg on
Feb 12 17:49:40.379604 osdx modulelauncher[91804]: Command '/sbin/ethtool -A eth0 autoneg on' returned non-zero exit status 76.
Feb 12 17:49:40.380750 osdx modulelauncher[91804]: osdx.utils.xos cmd error: /sbin/ethtool -s eth0 autoneg on advertise Pause off Asym_Pause off --
Feb 12 17:49:40.380760 osdx modulelauncher[91804]: Command '/sbin/ethtool -s eth0 autoneg on advertise Pause off Asym_Pause off --' returned non-zero exit status 75.
Feb 12 17:49:40.477854 osdx systemd[1]: Starting ssh.service - OpenBSD Secure Shell server...
Feb 12 17:49:40.491048 osdx sshd[91870]: Server listening on 0.0.0.0 port 22.
Feb 12 17:49:40.491073 osdx sshd[91870]: Server listening on :: port 22.
Feb 12 17:49:40.491158 osdx systemd[1]: Started ssh.service - OpenBSD Secure Shell server.
Feb 12 17:49:40.492375 osdx cfgd[1426]: [37265]Completed change to active configuration
Feb 12 17:49:40.504157 osdx OSDxCLI[37265]: User 'admin' committed the configuration.
Feb 12 17:49:40.520405 osdx OSDxCLI[37265]: User 'admin' left the configuration menu.
Feb 12 17:49:40.683605 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'ping 10.215.168.64 count 1 size 56 timeout 1'.
Feb 12 17:49:43.119432 osdx OSDxCLI[37265]: User 'admin' entered the configuration menu.
Feb 12 17:49:43.190918 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns static host-name dns.dut0 inet 10.215.168.64'.
Feb 12 17:49:43.325266 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set system certificate trust running://CA.crt'.
Feb 12 17:49:43.443388 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy server-name DUT0'.
Feb 12 17:49:43.590847 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 protocol dns-over-https host name dns.dut0'.
Feb 12 17:49:43.667549 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 protocol dns-over-https host port 3000'.
Feb 12 17:49:43.791828 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 protocol dns-over-https ip 10.215.168.64'.
Feb 12 17:49:43.866330 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 protocol dns-over-https hash becacdb6bed90b0973d6a8407119685ba4539097d1b5bcb26ac762db2c812cfc'.
Feb 12 17:49:44.015532 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:49:44.092926 osdx ubnt-cfgd[91917]: inactive
Feb 12 17:49:44.155658 osdx INFO[91925]: FRR daemons did not change
Feb 12 17:49:44.173960 osdx ca-certificates[91941]: Updating certificates in /etc/ssl/certs...
Feb 12 17:49:44.749186 osdx ubnt-cfgd[92953]: rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
Feb 12 17:49:44.756981 osdx ca-certificates[92958]: 1 added, 0 removed; done.
Feb 12 17:49:44.759948 osdx ca-certificates[92965]: Running hooks in /etc/ca-certificates/update.d...
Feb 12 17:49:44.762637 osdx ca-certificates[92967]: done.
Feb 12 17:49:44.850296 osdx systemd[1]: Started dnscrypt-proxy.service - DNSCrypt client proxy.
Feb 12 17:49:44.853008 osdx cfgd[1426]: [37265]Completed change to active configuration
Feb 12 17:49:44.856954 osdx OSDxCLI[37265]: User 'admin' committed the configuration.
Feb 12 17:49:44.876279 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:44] [NOTICE] dnscrypt-proxy 2.0.45
Feb 12 17:49:44.876534 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:44] [NOTICE] Network connectivity detected
Feb 12 17:49:44.876600 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:44] [NOTICE] Dropping privileges
Feb 12 17:49:44.879632 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:44] [NOTICE] Network connectivity detected
Feb 12 17:49:44.879632 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:44] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
Feb 12 17:49:44.879632 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:44] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
Feb 12 17:49:44.879962 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:44] [NOTICE] Firefox workaround initialized
Feb 12 17:49:44.879962 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:44] [NOTICE] Loading the set of cloaking rules from [/tmp/tmpoff1jsm2]
Feb 12 17:49:44.889798 osdx OSDxCLI[37265]: User 'admin' left the configuration menu.
Feb 12 17:49:45.012004 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:45] [NOTICE] [DUT0] OK (DoH) - rtt: 91ms
Feb 12 17:49:45.012004 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:45] [NOTICE] Server with the lowest initial latency: DUT0 (rtt: 91ms)
Feb 12 17:49:45.012004 osdx dnscrypt-proxy[92974]: [2026-02-12 17:49:45] [NOTICE] dnscrypt-proxy is ready - live servers: 1

Step 5: Run command show host lookup teldat.com type A at DUT1 and check if output contains the following tokens:

teldat.com has address 10.11.12.13
Show output
;; communications error to ::1#53: connection refused
;; communications error to ::1#53: connection refused
teldat.com has address 10.11.12.13

Server With Upstream DoH With Stamp

Description

Configures DUT0 to connect, using DNS-over-HTTPS (DoH) over an upstream server (generating a DNS stamp and using it to configure the connection).

Scenario

Step 1: Run command service dns proxy stamp calculate dns-over-https host-name remote.dns host-path /dns-query host-port 443 ip 10.215.168.1 hash ff80e2d024d82777d02b37c8a1ed89520186169f14f43384f0622363e9f2d2a7 at DUT0 and expect this output:

Show output
sdns://AgAAAAAAAAAADDEwLjIxNS4xNjguMSD_gOLQJNgnd9ArN8ih7YlSAYYWnxT0M4TwYiNj6fLSpwpyZW1vdGUuZG5zCi9kbnMtcXVlcnk

Step 2: Set the following configuration in DUT0 :

set interfaces ethernet eth0 address 10.215.168.64/24
set protocols static route 0.0.0.0/0 next-hop 10.215.168.1
set service dns proxy server cert file 'running://dns.dut0.crt'
set service dns proxy server cert key 'running://dns.dut0.key'
set service dns proxy server-name RD
set service dns proxy static RD stamp 'sdns://AgAAAAAAAAAADDEwLjIxNS4xNjguMSD_gOLQJNgnd9ArN8ih7YlSAYYWnxT0M4TwYiNj6fLSpwpyZW1vdGUuZG5zCi9kbnMtcXVlcnk'
set service dns resolver local
set service dns static host-name teldat.com inet 10.11.12.13
set system certificate trust 'running://remote.dns-server.crt'
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 3: Run command system journal show | cat at DUT0 and check if output matches the following regular expressions:

(?m)^.*\[RD\] OK \(DoH\) - rtt: \d+ms$
Show output
Feb 12 17:49:52.290857 osdx systemd-journald[1959]: Runtime Journal (/run/log/journal/fef7273cfed74888920ec39438478308) is 2.2M, max 17.2M, 14.9M free.
Feb 12 17:49:52.292179 osdx systemd-journald[1959]: Received client request to rotate journal, rotating.
Feb 12 17:49:52.292246 osdx systemd-journald[1959]: Vacuuming done, freed 0B of archived journals from /run/log/journal/fef7273cfed74888920ec39438478308.
Feb 12 17:49:52.300990 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system journal clear'.
Feb 12 17:49:52.524921 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system coredump delete all'.
Feb 12 17:49:52.757505 osdx OSDxCLI[79875]: User 'admin' entered the configuration menu.
Feb 12 17:49:52.897844 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set interfaces ethernet eth0 address 10.215.168.64/24'.
Feb 12 17:49:52.955825 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set protocols static route 0.0.0.0/0 next-hop 10.215.168.1'.
Feb 12 17:49:53.092087 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:49:53.186988 osdx ubnt-cfgd[248761]: inactive
Feb 12 17:49:53.206332 osdx INFO[248767]: FRR daemons did not change
Feb 12 17:49:53.236185 osdx kernel: 8021q: adding VLAN 0 to HW filter on device eth0
Feb 12 17:49:53.282875 osdx WARNING[248836]: No supported link modes on interface eth0
Feb 12 17:49:53.284342 osdx modulelauncher[248836]: osdx.utils.xos cmd error: /sbin/ethtool -A eth0 autoneg on
Feb 12 17:49:53.284356 osdx modulelauncher[248836]: Command '/sbin/ethtool -A eth0 autoneg on' returned non-zero exit status 76.
Feb 12 17:49:53.285731 osdx modulelauncher[248836]: osdx.utils.xos cmd error: /sbin/ethtool -s eth0 autoneg on advertise Asym_Pause off Pause off --
Feb 12 17:49:53.285740 osdx modulelauncher[248836]: Command '/sbin/ethtool -s eth0 autoneg on advertise Asym_Pause off Pause off --' returned non-zero exit status 75.
Feb 12 17:49:53.326323 osdx cfgd[1631]: [79875]Completed change to active configuration
Feb 12 17:49:53.338058 osdx OSDxCLI[79875]: User 'admin' committed the configuration.
Feb 12 17:49:53.362872 osdx OSDxCLI[79875]: User 'admin' left the configuration menu.
Feb 12 17:49:53.565305 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'ping 10.215.168.1 count 1 size 56 timeout 1'.
Feb 12 17:49:53.655735 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system journal show | cat'.
Feb 12 17:49:54.851325 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'service dns proxy stamp calculate dns-over-https host-name remote.dns host-path /dns-query host-port 443 ip 10.215.168.1 hash ff80e2d024d82777d02b37c8a1ed89520186169f14f43384f0622363e9f2d2a7'.
Feb 12 17:49:55.011957 osdx OSDxCLI[79875]: User 'admin' entered the configuration menu.
Feb 12 17:49:55.081680 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set system certificate trust running://remote.dns-server.crt'.
Feb 12 17:49:55.176660 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server-name RD'.
Feb 12 17:49:55.239033 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy static RD stamp sdns://AgAAAAAAAAAADDEwLjIxNS4xNjguMSD_gOLQJNgnd9ArN8ih7YlSAYYWnxT0M4TwYiNj6fLSpwpyZW1vdGUuZG5zCi9kbnMtcXVlcnk'.
Feb 12 17:49:55.329177 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server cert file running://dns.dut0.crt'.
Feb 12 17:49:55.385065 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server cert key running://dns.dut0.key'.
Feb 12 17:49:55.507482 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns static host-name teldat.com inet 10.11.12.13'.
Feb 12 17:49:55.641561 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns resolver local'.
Feb 12 17:49:55.808813 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns static host-name teldat.com inet 10.11.12.13'.
Feb 12 17:49:55.944276 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:49:56.030725 osdx ubnt-cfgd[248937]: inactive
Feb 12 17:49:56.051124 osdx INFO[248945]: FRR daemons did not change
Feb 12 17:49:56.064455 osdx ca-certificates[248960]: Updating certificates in /etc/ssl/certs...
Feb 12 17:49:56.609904 osdx ubnt-cfgd[249973]: rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
Feb 12 17:49:56.618305 osdx ca-certificates[249979]: 1 added, 0 removed; done.
Feb 12 17:49:56.621280 osdx ca-certificates[249985]: Running hooks in /etc/ca-certificates/update.d...
Feb 12 17:49:56.624175 osdx ca-certificates[249987]: done.
Feb 12 17:49:56.744599 osdx systemd[1]: Started dnscrypt-proxy.service - DNSCrypt client proxy.
Feb 12 17:49:56.746183 osdx cfgd[1631]: [79875]Completed change to active configuration
Feb 12 17:49:56.748647 osdx OSDxCLI[79875]: User 'admin' committed the configuration.
Feb 12 17:49:56.766075 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] dnscrypt-proxy 2.0.45
Feb 12 17:49:56.766323 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] Network connectivity detected
Feb 12 17:49:56.766373 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] Dropping privileges
Feb 12 17:49:56.768993 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] Network connectivity detected
Feb 12 17:49:56.769072 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
Feb 12 17:49:56.769072 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
Feb 12 17:49:56.769072 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] Now listening to https://[::]:3000/dns-query [DoH]
Feb 12 17:49:56.769072 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] Firefox workaround initialized
Feb 12 17:49:56.769072 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] Loading the set of cloaking rules from [/tmp/tmpq_p5ivix]
Feb 12 17:49:56.778246 osdx OSDxCLI[79875]: User 'admin' left the configuration menu.
Feb 12 17:49:56.847182 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] [RD] OK (DoH) - rtt: 59ms
Feb 12 17:49:56.847182 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] Server with the lowest initial latency: RD (rtt: 59ms)
Feb 12 17:49:56.847182 osdx dnscrypt-proxy[250046]: [2026-02-12 17:49:56] [NOTICE] dnscrypt-proxy is ready - live servers: 1

Step 4: Run command service dns proxy stamp calculate dns-over-https host-name dns.dut0 host-path /dns-query host-port 3000 ip 10.215.168.64 hash becacdb6bed90b0973d6a8407119685ba4539097d1b5bcb26ac762db2c812cfc at DUT1 and expect this output:

Show output
sdns://AgAAAAAAAAAADTEwLjIxNS4xNjguNjQgvsrNtr7ZCwlz1qhAcRloW6RTkJfRtbyyasdi2yyBLPwNZG5zLmR1dDA6MzAwMAovZG5zLXF1ZXJ5

Step 5: Set the following configuration in DUT1 :

set interfaces ethernet eth0 address 10.215.168.65/24
set protocols static route 0.0.0.0/0 next-hop 10.215.168.1
set service dns proxy server-name DUT0
set service dns proxy static DUT0 stamp 'sdns://AgAAAAAAAAAADTEwLjIxNS4xNjguNjQgvsrNtr7ZCwlz1qhAcRloW6RTkJfRtbyyasdi2yyBLPwNZG5zLmR1dDA6MzAwMAovZG5zLXF1ZXJ5'
set service dns static host-name dns.dut0 inet 10.215.168.64
set service ssh
set system certificate trust 'running://CA.crt'
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 6: Run command system journal show | cat at DUT1 and check if output matches the following regular expressions:

(?m)^.*\[DUT0\] OK \(DoH\) - rtt: \d+ms$
Show output
Feb 12 17:49:52.278323 osdx systemd-journald[1751]: Runtime Journal (/run/log/journal/4b9b84bfb27047f880a6339fcfe21077) is 932.0K, max 6.5M, 5.6M free.
Feb 12 17:49:52.282039 osdx systemd-journald[1751]: Received client request to rotate journal, rotating.
Feb 12 17:49:52.282098 osdx systemd-journald[1751]: Vacuuming done, freed 0B of archived journals from /run/log/journal/4b9b84bfb27047f880a6339fcfe21077.
Feb 12 17:49:52.287993 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'system journal clear'.
Feb 12 17:49:52.495874 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'system coredump delete all'.
Feb 12 17:49:53.695716 osdx OSDxCLI[37265]: User 'admin' entered the configuration menu.
Feb 12 17:49:53.800811 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set interfaces ethernet eth0 address 10.215.168.65/24'.
Feb 12 17:49:53.871038 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set protocols static route 0.0.0.0/0 next-hop 10.215.168.1'.
Feb 12 17:49:54.008712 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service ssh'.
Feb 12 17:49:54.088382 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:49:54.194794 osdx ubnt-cfgd[94698]: inactive
Feb 12 17:49:54.279746 osdx INFO[94719]: FRR daemons did not change
Feb 12 17:49:54.318035 osdx kernel: 8021q: adding VLAN 0 to HW filter on device eth0
Feb 12 17:49:54.363785 osdx WARNING[94788]: No supported link modes on interface eth0
Feb 12 17:49:54.365213 osdx modulelauncher[94788]: osdx.utils.xos cmd error: /sbin/ethtool -A eth0 autoneg on
Feb 12 17:49:54.365226 osdx modulelauncher[94788]: Command '/sbin/ethtool -A eth0 autoneg on' returned non-zero exit status 76.
Feb 12 17:49:54.366749 osdx modulelauncher[94788]: osdx.utils.xos cmd error: /sbin/ethtool -s eth0 autoneg on advertise Pause off Asym_Pause off --
Feb 12 17:49:54.366759 osdx modulelauncher[94788]: Command '/sbin/ethtool -s eth0 autoneg on advertise Pause off Asym_Pause off --' returned non-zero exit status 75.
Feb 12 17:49:54.458354 osdx systemd[1]: Starting ssh.service - OpenBSD Secure Shell server...
Feb 12 17:49:54.472179 osdx sshd[94854]: Server listening on 0.0.0.0 port 22.
Feb 12 17:49:54.472207 osdx sshd[94854]: Server listening on :: port 22.
Feb 12 17:49:54.472319 osdx systemd[1]: Started ssh.service - OpenBSD Secure Shell server.
Feb 12 17:49:54.473822 osdx cfgd[1426]: [37265]Completed change to active configuration
Feb 12 17:49:54.486640 osdx OSDxCLI[37265]: User 'admin' committed the configuration.
Feb 12 17:49:54.502850 osdx OSDxCLI[37265]: User 'admin' left the configuration menu.
Feb 12 17:49:54.659052 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'ping 10.215.168.64 count 1 size 56 timeout 1'.
Feb 12 17:49:57.010844 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'service dns proxy stamp calculate dns-over-https host-name dns.dut0 host-path /dns-query host-port 3000 ip 10.215.168.64 hash becacdb6bed90b0973d6a8407119685ba4539097d1b5bcb26ac762db2c812cfc'.
Feb 12 17:49:57.152866 osdx OSDxCLI[37265]: User 'admin' entered the configuration menu.
Feb 12 17:49:57.231091 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns static host-name dns.dut0 inet 10.215.168.64'.
Feb 12 17:49:57.329672 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set system certificate trust running://CA.crt'.
Feb 12 17:49:57.385155 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy server-name DUT0'.
Feb 12 17:49:57.484854 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 stamp sdns://AgAAAAAAAAAADTEwLjIxNS4xNjguNjQgvsrNtr7ZCwlz1qhAcRloW6RTkJfRtbyyasdi2yyBLPwNZG5zLmR1dDA6MzAwMAovZG5zLXF1ZXJ5'.
Feb 12 17:49:57.551857 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:49:57.649687 osdx ubnt-cfgd[94901]: inactive
Feb 12 17:49:57.672286 osdx INFO[94909]: FRR daemons did not change
Feb 12 17:49:57.685839 osdx ca-certificates[94925]: Updating certificates in /etc/ssl/certs...
Feb 12 17:49:58.287580 osdx ubnt-cfgd[95937]: rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
Feb 12 17:49:58.297897 osdx ca-certificates[95943]: 1 added, 0 removed; done.
Feb 12 17:49:58.301729 osdx ca-certificates[95949]: Running hooks in /etc/ca-certificates/update.d...
Feb 12 17:49:58.305573 osdx ca-certificates[95951]: done.
Feb 12 17:49:58.402539 osdx systemd[1]: Started dnscrypt-proxy.service - DNSCrypt client proxy.
Feb 12 17:49:58.404308 osdx cfgd[1426]: [37265]Completed change to active configuration
Feb 12 17:49:58.406429 osdx OSDxCLI[37265]: User 'admin' committed the configuration.
Feb 12 17:49:58.421822 osdx OSDxCLI[37265]: User 'admin' left the configuration menu.
Feb 12 17:49:58.422641 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] dnscrypt-proxy 2.0.45
Feb 12 17:49:58.422846 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] Network connectivity detected
Feb 12 17:49:58.422912 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] Dropping privileges
Feb 12 17:49:58.424815 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] Network connectivity detected
Feb 12 17:49:58.424871 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
Feb 12 17:49:58.424871 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
Feb 12 17:49:58.424921 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] Firefox workaround initialized
Feb 12 17:49:58.424921 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] Loading the set of cloaking rules from [/tmp/tmpq_3e8yza]
Feb 12 17:49:58.524543 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] [DUT0] OK (DoH) - rtt: 52ms
Feb 12 17:49:58.524673 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] Server with the lowest initial latency: DUT0 (rtt: 52ms)
Feb 12 17:49:58.524708 osdx dnscrypt-proxy[95958]: [2026-02-12 17:49:58] [NOTICE] dnscrypt-proxy is ready - live servers: 1

Step 7: Run command show host lookup teldat.com type A at DUT1 and check if output contains the following tokens:

teldat.com has address 10.11.12.13
Show output
;; communications error to ::1#53: connection refused
;; communications error to ::1#53: connection refused
teldat.com has address 10.11.12.13

Server With Upstream DNSCrypt

Description

Configures DUT0 to connect, using DNSCrypt over an upstream server.

Scenario

Step 1: Run command service dns proxy dnscrypt public-key running://dnscrypt.crt at DUT0 and expect this output:

Show output
e3:36:1c:08:56:19:37:f9:ec:95:e3:77:f7:65:f8:dc:33:96:84:dd:91:3f:72:f0:73:13:4c:fe:6a:d0:3e:ad

Step 2: Set the following configuration in DUT0 :

set interfaces ethernet eth0 address 10.215.168.64/24
set protocols static route 0.0.0.0/0 next-hop 10.215.168.1
set service dns proxy server cert file 'running://dns.dut0.crt'
set service dns proxy server cert key 'running://dns.dut0.key'
set service dns proxy server-name RD
set service dns proxy static RD protocol dns-crypt ip 10.215.168.1
set service dns proxy static RD protocol dns-crypt port 8443
set service dns proxy static RD protocol dns-crypt provider name 2.dnscrypt-cert.remote.dns
set service dns proxy static RD protocol dns-crypt provider public-key 'e3:36:1c:08:56:19:37:f9:ec:95:e3:77:f7:65:f8:dc:33:96:84:dd:91:3f:72:f0:73:13:4c:fe:6a:d0:3e:ad'
set service dns resolver local
set service dns static host-name teldat.com inet 10.11.12.13
set system certificate trust 'running://remote.dns-server.crt'
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 3: Run command system journal show | cat at DUT0 and check if output matches the following regular expressions:

(?m)^.*\[RD\] OK \(DNSCrypt\) - rtt: \d+ms$
Show output
Feb 12 17:50:05.314341 osdx systemd-journald[1959]: Runtime Journal (/run/log/journal/fef7273cfed74888920ec39438478308) is 2.3M, max 17.2M, 14.9M free.
Feb 12 17:50:05.316806 osdx systemd-journald[1959]: Received client request to rotate journal, rotating.
Feb 12 17:50:05.316867 osdx systemd-journald[1959]: Vacuuming done, freed 0B of archived journals from /run/log/journal/fef7273cfed74888920ec39438478308.
Feb 12 17:50:05.328953 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system journal clear'.
Feb 12 17:50:05.547501 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system coredump delete all'.
Feb 12 17:50:05.802085 osdx OSDxCLI[79875]: User 'admin' entered the configuration menu.
Feb 12 17:50:05.946142 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set interfaces ethernet eth0 address 10.215.168.64/24'.
Feb 12 17:50:06.011708 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set protocols static route 0.0.0.0/0 next-hop 10.215.168.1'.
Feb 12 17:50:06.175399 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:50:06.257822 osdx ubnt-cfgd[251789]: inactive
Feb 12 17:50:06.284854 osdx INFO[251795]: FRR daemons did not change
Feb 12 17:50:06.324833 osdx kernel: 8021q: adding VLAN 0 to HW filter on device eth0
Feb 12 17:50:06.372923 osdx WARNING[251864]: No supported link modes on interface eth0
Feb 12 17:50:06.374871 osdx modulelauncher[251864]: osdx.utils.xos cmd error: /sbin/ethtool -A eth0 autoneg on
Feb 12 17:50:06.374888 osdx modulelauncher[251864]: Command '/sbin/ethtool -A eth0 autoneg on' returned non-zero exit status 76.
Feb 12 17:50:06.376617 osdx modulelauncher[251864]: osdx.utils.xos cmd error: /sbin/ethtool -s eth0 autoneg on advertise Asym_Pause off Pause off --
Feb 12 17:50:06.376630 osdx modulelauncher[251864]: Command '/sbin/ethtool -s eth0 autoneg on advertise Asym_Pause off Pause off --' returned non-zero exit status 75.
Feb 12 17:50:06.429171 osdx cfgd[1631]: [79875]Completed change to active configuration
Feb 12 17:50:06.443278 osdx OSDxCLI[79875]: User 'admin' committed the configuration.
Feb 12 17:50:06.476134 osdx OSDxCLI[79875]: User 'admin' left the configuration menu.
Feb 12 17:50:06.626551 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'ping 10.215.168.1 count 1 size 56 timeout 1'.
Feb 12 17:50:06.728341 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system journal show | cat'.
Feb 12 17:50:08.046993 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'service dns proxy dnscrypt public-key running://dnscrypt.crt'.
Feb 12 17:50:08.225818 osdx OSDxCLI[79875]: User 'admin' entered the configuration menu.
Feb 12 17:50:08.348595 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set system certificate trust running://remote.dns-server.crt'.
Feb 12 17:50:08.463502 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server-name RD'.
Feb 12 17:50:08.600502 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy static RD protocol dns-crypt ip 10.215.168.1'.
Feb 12 17:50:08.656220 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy static RD protocol dns-crypt port 8443'.
Feb 12 17:50:08.765437 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy static RD protocol dns-crypt provider name 2.dnscrypt-cert.remote.dns'.
Feb 12 17:50:08.861544 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy static RD protocol dns-crypt provider public-key e3:36:1c:08:56:19:37:f9:ec:95:e3:77:f7:65:f8:dc:33:96:84:dd:91:3f:72:f0:73:13:4c:fe:6a:d0:3e:ad'.
Feb 12 17:50:08.990208 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns resolver local'.
Feb 12 17:50:09.109581 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server cert file running://dns.dut0.crt'.
Feb 12 17:50:09.236761 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server cert key running://dns.dut0.key'.
Feb 12 17:50:09.341021 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns static host-name teldat.com inet 10.11.12.13'.
Feb 12 17:50:09.432289 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:50:09.529142 osdx ubnt-cfgd[251966]: inactive
Feb 12 17:50:09.548819 osdx INFO[251974]: FRR daemons did not change
Feb 12 17:50:09.563597 osdx ca-certificates[251990]: Updating certificates in /etc/ssl/certs...
Feb 12 17:50:10.215303 osdx ubnt-cfgd[253002]: rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
Feb 12 17:50:10.224785 osdx ca-certificates[253007]: 1 added, 0 removed; done.
Feb 12 17:50:10.228097 osdx ca-certificates[253014]: Running hooks in /etc/ca-certificates/update.d...
Feb 12 17:50:10.230936 osdx ca-certificates[253016]: done.
Feb 12 17:50:10.369233 osdx systemd[1]: Started dnscrypt-proxy.service - DNSCrypt client proxy.
Feb 12 17:50:10.370868 osdx cfgd[1631]: [79875]Completed change to active configuration
Feb 12 17:50:10.373698 osdx OSDxCLI[79875]: User 'admin' committed the configuration.
Feb 12 17:50:10.397972 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] dnscrypt-proxy 2.0.45
Feb 12 17:50:10.398246 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] Network connectivity detected
Feb 12 17:50:10.398329 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] Dropping privileges
Feb 12 17:50:10.401412 osdx OSDxCLI[79875]: User 'admin' left the configuration menu.
Feb 12 17:50:10.401827 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] Network connectivity detected
Feb 12 17:50:10.401827 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
Feb 12 17:50:10.401827 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
Feb 12 17:50:10.401827 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] Now listening to https://[::]:3000/dns-query [DoH]
Feb 12 17:50:10.401827 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] Firefox workaround initialized
Feb 12 17:50:10.401827 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] Loading the set of cloaking rules from [/tmp/tmp5o2x7il8]
Feb 12 17:50:10.402549 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] [RD] OK (DNSCrypt) - rtt: 0ms
Feb 12 17:50:10.402549 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] Server with the lowest initial latency: RD (rtt: 0ms)
Feb 12 17:50:10.402549 osdx dnscrypt-proxy[253075]: [2026-02-12 17:50:10] [NOTICE] dnscrypt-proxy is ready - live servers: 1

Step 4: Set the following configuration in DUT1 :

set interfaces ethernet eth0 address 10.215.168.65/24
set protocols static route 0.0.0.0/0 next-hop 10.215.168.1
set service dns proxy server-name DUT0
set service dns proxy static DUT0 protocol dns-over-https hash becacdb6bed90b0973d6a8407119685ba4539097d1b5bcb26ac762db2c812cfc
set service dns proxy static DUT0 protocol dns-over-https host name dns.dut0
set service dns proxy static DUT0 protocol dns-over-https host port 3000
set service dns proxy static DUT0 protocol dns-over-https ip 10.215.168.64
set service dns static host-name dns.dut0 inet 10.215.168.64
set service ssh
set system certificate trust 'running://CA.crt'
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 5: Run command system journal show | cat at DUT1 and check if output matches the following regular expressions:

(?m)^.*\[DUT0\] OK \(DoH\) - rtt: \d+ms$
Show output
Feb 12 17:50:05.283663 osdx systemd-journald[1751]: Runtime Journal (/run/log/journal/4b9b84bfb27047f880a6339fcfe21077) is 956.0K, max 6.5M, 5.5M free.
Feb 12 17:50:05.284138 osdx systemd-journald[1751]: Received client request to rotate journal, rotating.
Feb 12 17:50:05.284186 osdx systemd-journald[1751]: Vacuuming done, freed 0B of archived journals from /run/log/journal/4b9b84bfb27047f880a6339fcfe21077.
Feb 12 17:50:05.294671 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'system journal clear'.
Feb 12 17:50:05.506067 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'system coredump delete all'.
Feb 12 17:50:06.799063 osdx OSDxCLI[37265]: User 'admin' entered the configuration menu.
Feb 12 17:50:06.939938 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set interfaces ethernet eth0 address 10.215.168.65/24'.
Feb 12 17:50:07.056558 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set protocols static route 0.0.0.0/0 next-hop 10.215.168.1'.
Feb 12 17:50:07.154193 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service ssh'.
Feb 12 17:50:07.283304 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:50:07.342727 osdx ubnt-cfgd[97687]: inactive
Feb 12 17:50:07.416047 osdx INFO[97708]: FRR daemons did not change
Feb 12 17:50:07.448133 osdx kernel: 8021q: adding VLAN 0 to HW filter on device eth0
Feb 12 17:50:07.492434 osdx WARNING[97777]: No supported link modes on interface eth0
Feb 12 17:50:07.493800 osdx modulelauncher[97777]: osdx.utils.xos cmd error: /sbin/ethtool -A eth0 autoneg on
Feb 12 17:50:07.493811 osdx modulelauncher[97777]: Command '/sbin/ethtool -A eth0 autoneg on' returned non-zero exit status 76.
Feb 12 17:50:07.494980 osdx modulelauncher[97777]: osdx.utils.xos cmd error: /sbin/ethtool -s eth0 autoneg on advertise Pause off Asym_Pause off --
Feb 12 17:50:07.494990 osdx modulelauncher[97777]: Command '/sbin/ethtool -s eth0 autoneg on advertise Pause off Asym_Pause off --' returned non-zero exit status 75.
Feb 12 17:50:07.584657 osdx systemd[1]: Starting ssh.service - OpenBSD Secure Shell server...
Feb 12 17:50:07.598794 osdx sshd[97843]: Server listening on 0.0.0.0 port 22.
Feb 12 17:50:07.599137 osdx sshd[97843]: Server listening on :: port 22.
Feb 12 17:50:07.599337 osdx systemd[1]: Started ssh.service - OpenBSD Secure Shell server.
Feb 12 17:50:07.601534 osdx cfgd[1426]: [37265]Completed change to active configuration
Feb 12 17:50:07.614540 osdx OSDxCLI[37265]: User 'admin' committed the configuration.
Feb 12 17:50:07.632913 osdx OSDxCLI[37265]: User 'admin' left the configuration menu.
Feb 12 17:50:07.787015 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'ping 10.215.168.64 count 1 size 56 timeout 1'.
Feb 12 17:50:10.646052 osdx OSDxCLI[37265]: User 'admin' entered the configuration menu.
Feb 12 17:50:10.853784 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns static host-name dns.dut0 inet 10.215.168.64'.
Feb 12 17:50:10.926155 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set system certificate trust running://CA.crt'.
Feb 12 17:50:11.034570 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy server-name DUT0'.
Feb 12 17:50:11.117426 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 protocol dns-over-https host name dns.dut0'.
Feb 12 17:50:11.215655 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 protocol dns-over-https host port 3000'.
Feb 12 17:50:11.322419 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 protocol dns-over-https ip 10.215.168.64'.
Feb 12 17:50:11.388861 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 protocol dns-over-https hash becacdb6bed90b0973d6a8407119685ba4539097d1b5bcb26ac762db2c812cfc'.
Feb 12 17:50:11.496835 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:50:11.618884 osdx ubnt-cfgd[97892]: inactive
Feb 12 17:50:11.640973 osdx INFO[97900]: FRR daemons did not change
Feb 12 17:50:11.654713 osdx ca-certificates[97916]: Updating certificates in /etc/ssl/certs...
Feb 12 17:50:12.250670 osdx ubnt-cfgd[98928]: rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
Feb 12 17:50:12.261064 osdx ca-certificates[98935]: 1 added, 0 removed; done.
Feb 12 17:50:12.264075 osdx ca-certificates[98940]: Running hooks in /etc/ca-certificates/update.d...
Feb 12 17:50:12.267013 osdx ca-certificates[98942]: done.
Feb 12 17:50:12.338797 osdx systemd[1]: Started dnscrypt-proxy.service - DNSCrypt client proxy.
Feb 12 17:50:12.343719 osdx cfgd[1426]: [37265]Completed change to active configuration
Feb 12 17:50:12.347916 osdx OSDxCLI[37265]: User 'admin' committed the configuration.
Feb 12 17:50:12.371417 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] dnscrypt-proxy 2.0.45
Feb 12 17:50:12.371742 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] Network connectivity detected
Feb 12 17:50:12.371854 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] Dropping privileges
Feb 12 17:50:12.374606 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] Network connectivity detected
Feb 12 17:50:12.374692 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
Feb 12 17:50:12.374692 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
Feb 12 17:50:12.374692 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] Firefox workaround initialized
Feb 12 17:50:12.374692 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] Loading the set of cloaking rules from [/tmp/tmpx9ddq9j6]
Feb 12 17:50:12.410716 osdx OSDxCLI[37265]: User 'admin' left the configuration menu.
Feb 12 17:50:12.549653 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] [DUT0] OK (DoH) - rtt: 124ms
Feb 12 17:50:12.549653 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] Server with the lowest initial latency: DUT0 (rtt: 124ms)
Feb 12 17:50:12.549653 osdx dnscrypt-proxy[98949]: [2026-02-12 17:50:12] [NOTICE] dnscrypt-proxy is ready - live servers: 1

Step 6: Run command show host lookup teldat.com type A at DUT1 and check if output contains the following tokens:

teldat.com has address 10.11.12.13
Show output
;; communications error to ::1#53: connection refused
;; communications error to ::1#53: connection refused
teldat.com has address 10.11.12.13

Server With Upstream DNSCrypt With Stamp

Description

Configures DUT0 to connect, using DNSCrypt over an upstream server (generating a DNS stamp and using it to configure the connection).

Scenario

Step 1: Run command service dns proxy dnscrypt public-key running://dnscrypt.crt at DUT0 and expect this output:

Show output
e3:36:1c:08:56:19:37:f9:ec:95:e3:77:f7:65:f8:dc:33:96:84:dd:91:3f:72:f0:73:13:4c:fe:6a:d0:3e:ad

Step 2: Run command service dns proxy stamp calculate dns-crypt provider-name 2.dnscrypt-cert.remote.dns provider-key e3:36:1c:08:56:19:37:f9:ec:95:e3:77:f7:65:f8:dc:33:96:84:dd:91:3f:72:f0:73:13:4c:fe:6a:d0:3e:ad ip 10.215.168.1 port 8443 at DUT0 and expect this output:

Show output
sdns://AQAAAAAAAAAAETEwLjIxNS4xNjguMTo4NDQzIOM2HAhWGTf57JXjd_dl-NwzloTdkT9y8HMTTP5q0D6tGjIuZG5zY3J5cHQtY2VydC5yZW1vdGUuZG5z

Step 3: Set the following configuration in DUT0 :

set interfaces ethernet eth0 address 10.215.168.64/24
set protocols static route 0.0.0.0/0 next-hop 10.215.168.1
set service dns proxy server cert file 'running://dns.dut0.crt'
set service dns proxy server cert key 'running://dns.dut0.key'
set service dns proxy server-name RD
set service dns proxy static RD stamp 'sdns://AQAAAAAAAAAAETEwLjIxNS4xNjguMTo4NDQzIOM2HAhWGTf57JXjd_dl-NwzloTdkT9y8HMTTP5q0D6tGjIuZG5zY3J5cHQtY2VydC5yZW1vdGUuZG5z'
set service dns resolver local
set service dns static host-name teldat.com inet 10.11.12.13
set system certificate trust 'running://remote.dns-server.crt'
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 4: Run command system journal show | cat at DUT0 and check if output matches the following regular expressions:

(?m)^.*\[RD\] OK \(DNSCrypt\) - rtt: \d+ms$
Show output
Feb 12 17:50:19.326227 osdx systemd-journald[1959]: Runtime Journal (/run/log/journal/fef7273cfed74888920ec39438478308) is 2.3M, max 17.2M, 14.9M free.
Feb 12 17:50:19.329388 osdx systemd-journald[1959]: Received client request to rotate journal, rotating.
Feb 12 17:50:19.329458 osdx systemd-journald[1959]: Vacuuming done, freed 0B of archived journals from /run/log/journal/fef7273cfed74888920ec39438478308.
Feb 12 17:50:19.337700 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system journal clear'.
Feb 12 17:50:19.576339 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system coredump delete all'.
Feb 12 17:50:19.817313 osdx OSDxCLI[79875]: User 'admin' entered the configuration menu.
Feb 12 17:50:19.930576 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set interfaces ethernet eth0 address 10.215.168.64/24'.
Feb 12 17:50:19.998958 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set protocols static route 0.0.0.0/0 next-hop 10.215.168.1'.
Feb 12 17:50:20.095840 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:50:20.153565 osdx ubnt-cfgd[254817]: inactive
Feb 12 17:50:20.174584 osdx INFO[254823]: FRR daemons did not change
Feb 12 17:50:20.205373 osdx kernel: 8021q: adding VLAN 0 to HW filter on device eth0
Feb 12 17:50:20.246410 osdx WARNING[254892]: No supported link modes on interface eth0
Feb 12 17:50:20.248122 osdx modulelauncher[254892]: osdx.utils.xos cmd error: /sbin/ethtool -A eth0 autoneg on
Feb 12 17:50:20.248133 osdx modulelauncher[254892]: Command '/sbin/ethtool -A eth0 autoneg on' returned non-zero exit status 76.
Feb 12 17:50:20.249691 osdx modulelauncher[254892]: osdx.utils.xos cmd error: /sbin/ethtool -s eth0 autoneg on advertise Asym_Pause off Pause off --
Feb 12 17:50:20.249700 osdx modulelauncher[254892]: Command '/sbin/ethtool -s eth0 autoneg on advertise Asym_Pause off Pause off --' returned non-zero exit status 75.
Feb 12 17:50:20.282978 osdx cfgd[1631]: [79875]Completed change to active configuration
Feb 12 17:50:20.293928 osdx OSDxCLI[79875]: User 'admin' committed the configuration.
Feb 12 17:50:20.309819 osdx OSDxCLI[79875]: User 'admin' left the configuration menu.
Feb 12 17:50:20.456293 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'ping 10.215.168.1 count 1 size 56 timeout 1'.
Feb 12 17:50:20.522543 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'system journal show | cat'.
Feb 12 17:50:21.651495 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'service dns proxy dnscrypt public-key running://dnscrypt.crt'.
Feb 12 17:50:21.743817 osdx OSDxCLI[79875]: User 'admin' executed a new command: 'service dns proxy stamp calculate dns-crypt provider-name 2.dnscrypt-cert.remote.dns provider-key e3:36:1c:08:56:19:37:f9:ec:95:e3:77:f7:65:f8:dc:33:96:84:dd:91:3f:72:f0:73:13:4c:fe:6a:d0:3e:ad ip 10.215.168.1 port 8443'.
Feb 12 17:50:21.902988 osdx OSDxCLI[79875]: User 'admin' entered the configuration menu.
Feb 12 17:50:21.971907 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set system certificate trust running://remote.dns-server.crt'.
Feb 12 17:50:22.075005 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server-name RD'.
Feb 12 17:50:22.134355 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy static RD stamp sdns://AQAAAAAAAAAAETEwLjIxNS4xNjguMTo4NDQzIOM2HAhWGTf57JXjd_dl-NwzloTdkT9y8HMTTP5q0D6tGjIuZG5zY3J5cHQtY2VydC5yZW1vdGUuZG5z'.
Feb 12 17:50:22.223469 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns resolver local'.
Feb 12 17:50:22.281573 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server cert file running://dns.dut0.crt'.
Feb 12 17:50:22.376372 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns proxy server cert key running://dns.dut0.key'.
Feb 12 17:50:22.432540 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'set service dns static host-name teldat.com inet 10.11.12.13'.
Feb 12 17:50:22.540699 osdx OSDxCLI[79875]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:50:22.608146 osdx ubnt-cfgd[254994]: inactive
Feb 12 17:50:22.627567 osdx INFO[255002]: FRR daemons did not change
Feb 12 17:50:22.640510 osdx ca-certificates[255018]: Updating certificates in /etc/ssl/certs...
Feb 12 17:50:23.143542 osdx ubnt-cfgd[256030]: rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
Feb 12 17:50:23.151450 osdx ca-certificates[256035]: 1 added, 0 removed; done.
Feb 12 17:50:23.154302 osdx ca-certificates[256042]: Running hooks in /etc/ca-certificates/update.d...
Feb 12 17:50:23.157080 osdx ca-certificates[256044]: done.
Feb 12 17:50:23.277740 osdx systemd[1]: Started dnscrypt-proxy.service - DNSCrypt client proxy.
Feb 12 17:50:23.279143 osdx cfgd[1631]: [79875]Completed change to active configuration
Feb 12 17:50:23.281589 osdx OSDxCLI[79875]: User 'admin' committed the configuration.
Feb 12 17:50:23.296709 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] dnscrypt-proxy 2.0.45
Feb 12 17:50:23.296909 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] Network connectivity detected
Feb 12 17:50:23.297069 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] Dropping privileges
Feb 12 17:50:23.299852 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] Network connectivity detected
Feb 12 17:50:23.299914 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
Feb 12 17:50:23.299914 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
Feb 12 17:50:23.299914 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] Now listening to https://[::]:3000/dns-query [DoH]
Feb 12 17:50:23.299914 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] Firefox workaround initialized
Feb 12 17:50:23.299914 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] Loading the set of cloaking rules from [/tmp/tmp9btk1cnm]
Feb 12 17:50:23.300709 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] [RD] OK (DNSCrypt) - rtt: 0ms
Feb 12 17:50:23.300709 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] Server with the lowest initial latency: RD (rtt: 0ms)
Feb 12 17:50:23.300773 osdx dnscrypt-proxy[256103]: [2026-02-12 17:50:23] [NOTICE] dnscrypt-proxy is ready - live servers: 1
Feb 12 17:50:23.305514 osdx OSDxCLI[79875]: User 'admin' left the configuration menu.

Step 5: Run command service dns proxy stamp calculate dns-over-https host-name dns.dut0 host-path /dns-query host-port 3000 ip 10.215.168.64 hash becacdb6bed90b0973d6a8407119685ba4539097d1b5bcb26ac762db2c812cfc at DUT1 and expect this output:

Show output
sdns://AgAAAAAAAAAADTEwLjIxNS4xNjguNjQgvsrNtr7ZCwlz1qhAcRloW6RTkJfRtbyyasdi2yyBLPwNZG5zLmR1dDA6MzAwMAovZG5zLXF1ZXJ5

Step 6: Set the following configuration in DUT1 :

set interfaces ethernet eth0 address 10.215.168.65/24
set protocols static route 0.0.0.0/0 next-hop 10.215.168.1
set service dns proxy server-name DUT0
set service dns proxy static DUT0 stamp 'sdns://AgAAAAAAAAAADTEwLjIxNS4xNjguNjQgvsrNtr7ZCwlz1qhAcRloW6RTkJfRtbyyasdi2yyBLPwNZG5zLmR1dDA6MzAwMAovZG5zLXF1ZXJ5'
set service dns static host-name dns.dut0 inet 10.215.168.64
set service ssh
set system certificate trust 'running://CA.crt'
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 7: Run command system journal show | cat at DUT1 and check if output matches the following regular expressions:

(?m)^.*\[DUT0\] OK \(DoH\) - rtt: \d+ms$
Show output
Feb 12 17:50:19.304921 osdx systemd-journald[1751]: Runtime Journal (/run/log/journal/4b9b84bfb27047f880a6339fcfe21077) is 956.0K, max 6.5M, 5.5M free.
Feb 12 17:50:19.308172 osdx systemd-journald[1751]: Received client request to rotate journal, rotating.
Feb 12 17:50:19.308257 osdx systemd-journald[1751]: Vacuuming done, freed 0B of archived journals from /run/log/journal/4b9b84bfb27047f880a6339fcfe21077.
Feb 12 17:50:19.316567 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'system journal clear'.
Feb 12 17:50:19.546007 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'system coredump delete all'.
Feb 12 17:50:20.559224 osdx OSDxCLI[37265]: User 'admin' entered the configuration menu.
Feb 12 17:50:20.641769 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set interfaces ethernet eth0 address 10.215.168.65/24'.
Feb 12 17:50:20.712845 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set protocols static route 0.0.0.0/0 next-hop 10.215.168.1'.
Feb 12 17:50:20.833095 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service ssh'.
Feb 12 17:50:20.896803 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:50:20.990899 osdx ubnt-cfgd[100675]: inactive
Feb 12 17:50:21.085757 osdx INFO[100696]: FRR daemons did not change
Feb 12 17:50:21.116160 osdx kernel: 8021q: adding VLAN 0 to HW filter on device eth0
Feb 12 17:50:21.167670 osdx WARNING[100765]: No supported link modes on interface eth0
Feb 12 17:50:21.169397 osdx modulelauncher[100765]: osdx.utils.xos cmd error: /sbin/ethtool -A eth0 autoneg on
Feb 12 17:50:21.169407 osdx modulelauncher[100765]: Command '/sbin/ethtool -A eth0 autoneg on' returned non-zero exit status 76.
Feb 12 17:50:21.170916 osdx modulelauncher[100765]: osdx.utils.xos cmd error: /sbin/ethtool -s eth0 autoneg on advertise Pause off Asym_Pause off --
Feb 12 17:50:21.170922 osdx modulelauncher[100765]: Command '/sbin/ethtool -s eth0 autoneg on advertise Pause off Asym_Pause off --' returned non-zero exit status 75.
Feb 12 17:50:21.260612 osdx systemd[1]: Starting ssh.service - OpenBSD Secure Shell server...
Feb 12 17:50:21.289613 osdx sshd[100831]: Server listening on 0.0.0.0 port 22.
Feb 12 17:50:21.289687 osdx sshd[100831]: Server listening on :: port 22.
Feb 12 17:50:21.289941 osdx systemd[1]: Started ssh.service - OpenBSD Secure Shell server.
Feb 12 17:50:21.292359 osdx cfgd[1426]: [37265]Completed change to active configuration
Feb 12 17:50:21.311145 osdx OSDxCLI[37265]: User 'admin' committed the configuration.
Feb 12 17:50:21.326594 osdx OSDxCLI[37265]: User 'admin' left the configuration menu.
Feb 12 17:50:21.474454 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'ping 10.215.168.64 count 1 size 56 timeout 1'.
Feb 12 17:50:23.487691 osdx OSDxCLI[37265]: User 'admin' executed a new command: 'service dns proxy stamp calculate dns-over-https host-name dns.dut0 host-path /dns-query host-port 3000 ip 10.215.168.64 hash becacdb6bed90b0973d6a8407119685ba4539097d1b5bcb26ac762db2c812cfc'.
Feb 12 17:50:23.644997 osdx OSDxCLI[37265]: User 'admin' entered the configuration menu.
Feb 12 17:50:23.714191 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns static host-name dns.dut0 inet 10.215.168.64'.
Feb 12 17:50:23.809031 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set system certificate trust running://CA.crt'.
Feb 12 17:50:23.887398 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy server-name DUT0'.
Feb 12 17:50:23.992467 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'set service dns proxy static DUT0 stamp sdns://AgAAAAAAAAAADTEwLjIxNS4xNjguNjQgvsrNtr7ZCwlz1qhAcRloW6RTkJfRtbyyasdi2yyBLPwNZG5zLmR1dDA6MzAwMAovZG5zLXF1ZXJ5'.
Feb 12 17:50:24.063128 osdx OSDxCLI[37265]: User 'admin' added a new cfg line: 'show working'.
Feb 12 17:50:24.159537 osdx ubnt-cfgd[100878]: inactive
Feb 12 17:50:24.182148 osdx INFO[100886]: FRR daemons did not change
Feb 12 17:50:24.195304 osdx ca-certificates[100902]: Updating certificates in /etc/ssl/certs...
Feb 12 17:50:24.726665 osdx ubnt-cfgd[101914]: rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
Feb 12 17:50:24.733843 osdx ca-certificates[101919]: 1 added, 0 removed; done.
Feb 12 17:50:24.736798 osdx ca-certificates[101926]: Running hooks in /etc/ca-certificates/update.d...
Feb 12 17:50:24.739532 osdx ca-certificates[101928]: done.
Feb 12 17:50:24.812651 osdx systemd[1]: Started dnscrypt-proxy.service - DNSCrypt client proxy.
Feb 12 17:50:24.814685 osdx cfgd[1426]: [37265]Completed change to active configuration
Feb 12 17:50:24.818011 osdx OSDxCLI[37265]: User 'admin' committed the configuration.
Feb 12 17:50:24.833615 osdx OSDxCLI[37265]: User 'admin' left the configuration menu.
Feb 12 17:50:24.834682 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] dnscrypt-proxy 2.0.45
Feb 12 17:50:24.834836 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] Network connectivity detected
Feb 12 17:50:24.834948 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] Dropping privileges
Feb 12 17:50:24.836708 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] Network connectivity detected
Feb 12 17:50:24.836742 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
Feb 12 17:50:24.836742 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
Feb 12 17:50:24.836768 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] Firefox workaround initialized
Feb 12 17:50:24.836768 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] Loading the set of cloaking rules from [/tmp/tmp3yzzam5k]
Feb 12 17:50:24.955033 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] [DUT0] OK (DoH) - rtt: 73ms
Feb 12 17:50:24.955033 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] Server with the lowest initial latency: DUT0 (rtt: 73ms)
Feb 12 17:50:24.955033 osdx dnscrypt-proxy[101935]: [2026-02-12 17:50:24] [NOTICE] dnscrypt-proxy is ready - live servers: 1

Step 8: Run command show host lookup teldat.com type A at DUT1 and check if output contains the following tokens:

teldat.com has address 10.11.12.13
Show output
;; communications error to ::1#53: connection refused
;; communications error to ::1#53: connection refused
teldat.com has address 10.11.12.13