Dns Priority
Test suite to check DNS service priorities
Valid Address
Description
Configures a simple, valid address and checks the DNS can resolve it. There is no priority involved as a single address is in use.
Scenario
Step 1: Set the following configuration in DUT1
:
set interfaces ethernet eth0 address 10.0.0.2/24 set service dns forwarding record host teldat.com ipv4-address 172.24.0.11 set service dns forwarding record host teldat.com ipv6-address ff00::dead:cafe set service dns resolver local
Step 2: Set the following configuration in DUT0
:
set interfaces ethernet eth0 address 10.0.0.1/24 set service dns forwarding logs set service dns resolver local set service dns forwarding name-server 10.0.0.2
Step 3: Ping IP address 10.0.0.2
from DUT0
:
admin@DUT0$ ping 10.0.0.2 count 1 size 56 timeout 1Show output
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data. 64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=0.422 ms --- 10.0.0.2 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.422/0.422/0.422/0.000 ms
Step 4: Run command show host lookup teldat.com type A wait 0
at DUT0
and check if output contains the following tokens:
172.24.0.11
Show output
teldat.com has address 172.24.0.11
Step 5: Run command service dns forwarding show logs | cat
at DUT0
and expect this output:
Show output
-- Logs begin at Thu 2024-06-20 17:34:17 UTC, end at Thu 2024-06-20 17:34:21 UTC. -- Jun 20 17:34:21 osdx dnsmasq[23120]: dnsmasq: syntax check OK. Jun 20 17:34:21 osdx dnsmasq[23127]: started, version 2.80 cachesize 150 Jun 20 17:34:21 osdx dnsmasq[23127]: DNS service limited to local subnets Jun 20 17:34:21 osdx dnsmasq[23127]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth DNSSEC loop-detect inotify dumpfile Jun 20 17:34:21 osdx dnsmasq[23127]: warning: ignoring resolv-file flag because no-resolv is set Jun 20 17:34:21 osdx dnsmasq[23127]: using nameserver 10.0.0.2#53 Jun 20 17:34:21 osdx dnsmasq[23127]: read /etc/hosts - 1 addresses Jun 20 17:34:21 osdx dnsmasq[23127]: query[A] teldat.com from ::1 Jun 20 17:34:21 osdx dnsmasq[23127]: forwarded teldat.com to 10.0.0.2 Jun 20 17:34:21 osdx dnsmasq[23127]: reply teldat.com is 172.24.0.11
Valid Address IPv6
Description
Configures a simple, valid IPv6 address and checks the DNS can resolve it. There is no priority involved as a single address is in use.
Scenario
Step 1: Set the following configuration in DUT1
:
set interfaces ethernet eth0 address 10::2/64 set service dns forwarding record host teldat.com ipv4-address 172.24.0.11 set service dns forwarding record host teldat.com ipv6-address ff00::dead:cafe set service dns resolver local
Step 2: Set the following configuration in DUT0
:
set interfaces ethernet eth0 address 10::1/64 set service dns forwarding logs set service dns resolver local set service dns forwarding name-server 10::2
Step 3: Ping IP address 10::2
from DUT0
:
admin@DUT0$ ping 10::2 count 1 size 56 timeout 1Show output
PING 10::2(10::2) 56 data bytes 64 bytes from 10::2: icmp_seq=1 ttl=64 time=0.629 ms --- 10::2 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.629/0.629/0.629/0.000 ms
Step 4: Run command show host lookup teldat.com type A wait 0
at DUT0
and check if output contains the following tokens:
172.24.0.11
Show output
teldat.com has address 172.24.0.11
Step 5: Run command service dns forwarding show logs | cat
at DUT0
and expect this output:
Show output
-- Logs begin at Thu 2024-06-20 17:34:27 UTC, end at Thu 2024-06-20 17:34:32 UTC. -- Jun 20 17:34:30 osdx dnsmasq[23556]: dnsmasq: syntax check OK. Jun 20 17:34:30 osdx dnsmasq[23563]: started, version 2.80 cachesize 150 Jun 20 17:34:30 osdx dnsmasq[23563]: DNS service limited to local subnets Jun 20 17:34:30 osdx dnsmasq[23563]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth DNSSEC loop-detect inotify dumpfile Jun 20 17:34:30 osdx dnsmasq[23563]: warning: ignoring resolv-file flag because no-resolv is set Jun 20 17:34:30 osdx dnsmasq[23563]: using nameserver 10::2#53 Jun 20 17:34:30 osdx dnsmasq[23563]: read /etc/hosts - 1 addresses Jun 20 17:34:32 osdx dnsmasq[23563]: query[A] teldat.com from ::1 Jun 20 17:34:32 osdx dnsmasq[23563]: forwarded teldat.com to 10::2 Jun 20 17:34:32 osdx dnsmasq[23563]: reply teldat.com is 172.24.0.11
Multiple Addresses
Description
Configures two DNS addresses: one invalid and the other valid. Checks that the resolution works against the second address, while the first one does not respond.
Scenario
Step 1: Set the following configuration in DUT1
:
set interfaces ethernet eth0 address 10.0.0.2/24 set service dns forwarding record host teldat.com ipv4-address 172.24.0.11 set service dns forwarding record host teldat.com ipv6-address ff00::dead:cafe set service dns resolver local
Step 2: Set the following configuration in DUT0
:
set interfaces ethernet eth0 address 10.0.0.1/24 set service dns forwarding logs set service dns resolver local set service dns forwarding name-server 10.0.0.10 priority 0 set service dns forwarding name-server 10.0.0.2 priority 1
Step 3: Ping IP address 10.0.0.2
from DUT0
:
admin@DUT0$ ping 10.0.0.2 count 1 size 56 timeout 1Show output
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data. 64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=0.500 ms --- 10.0.0.2 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.500/0.500/0.500/0.000 ms
Step 4: Run command show host lookup teldat.com type A wait 0
at DUT0
and check if output contains the following tokens:
172.24.0.11
Show output
teldat.com has address 172.24.0.11
Step 5: Run command service dns forwarding show logs | cat
at DUT0
and expect this output:
Show output
-- Logs begin at Thu 2024-06-20 17:34:39 UTC, end at Thu 2024-06-20 17:34:45 UTC. -- Jun 20 17:34:43 osdx dnsmasq[23996]: dnsmasq: syntax check OK. Jun 20 17:34:43 osdx dnsmasq[24003]: started, version 2.80 cachesize 150 Jun 20 17:34:43 osdx dnsmasq[24003]: DNS service limited to local subnets Jun 20 17:34:43 osdx dnsmasq[24003]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth DNSSEC loop-detect inotify dumpfile Jun 20 17:34:43 osdx dnsmasq[24003]: warning: ignoring resolv-file flag because no-resolv is set Jun 20 17:34:43 osdx dnsmasq[24003]: using nameserver 10.0.0.10#53 Jun 20 17:34:43 osdx dnsmasq[24003]: using nameserver 10.0.0.2#53 Jun 20 17:34:43 osdx dnsmasq[24003]: read /etc/hosts - 1 addresses Jun 20 17:34:43 osdx dnsmasq[24003]: query[A] localhost.domain from ::1 Jun 20 17:34:43 osdx dnsmasq[24003]: forwarded localhost.domain to 10.0.0.10 Jun 20 17:34:43 osdx dnsmasq[24003]: query[A] teldat.com from ::1 Jun 20 17:34:43 osdx dnsmasq[24003]: forwarded teldat.com to 10.0.0.10 Jun 20 17:34:44 osdx dnsmasq[24003]: query[A] teldat.com from 127.0.0.1 Jun 20 17:34:45 osdx dnsmasq[24003]: query[A] teldat.com from ::1 Jun 20 17:34:45 osdx dnsmasq[24003]: forwarded teldat.com to 10.0.0.2 Jun 20 17:34:45 osdx dnsmasq[24003]: reply teldat.com is 172.24.0.11
Multiple IPv6 Addresses
Description
Configures two IPv6 DNS addresses: one invalid and the other valid. Checks that the resolution works against the second address, while the first one does not respond.
Scenario
Step 1: Set the following configuration in DUT1
:
set interfaces ethernet eth0 address 10::2/64 set service dns forwarding record host teldat.com ipv4-address 172.24.0.11 set service dns forwarding record host teldat.com ipv6-address ff00::dead:cafe set service dns resolver local
Step 2: Set the following configuration in DUT0
:
set interfaces ethernet eth0 address 10::1/64 set service dns forwarding logs set service dns resolver local set service dns forwarding name-server 10::10 priority 0 set service dns forwarding name-server 10::2 priority 1
Step 3: Ping IP address 10::2
from DUT0
:
admin@DUT0$ ping 10::2 count 1 size 56 timeout 1Show output
PING 10::2(10::2) 56 data bytes 64 bytes from 10::2: icmp_seq=1 ttl=64 time=0.641 ms --- 10::2 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.641/0.641/0.641/0.000 ms
Step 4: Run command show host lookup teldat.com type A wait 0
at DUT0
and check if output contains the following tokens:
172.24.0.11
Show output
teldat.com has address 172.24.0.11
Step 5: Run command service dns forwarding show logs | cat
at DUT0
and expect this output:
Show output
-- Logs begin at Thu 2024-06-20 17:34:53 UTC, end at Thu 2024-06-20 17:35:01 UTC. -- Jun 20 17:34:57 osdx dnsmasq[24433]: dnsmasq: syntax check OK. Jun 20 17:34:57 osdx dnsmasq[24440]: started, version 2.80 cachesize 150 Jun 20 17:34:57 osdx dnsmasq[24440]: DNS service limited to local subnets Jun 20 17:34:57 osdx dnsmasq[24440]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth DNSSEC loop-detect inotify dumpfile Jun 20 17:34:57 osdx dnsmasq[24440]: warning: ignoring resolv-file flag because no-resolv is set Jun 20 17:34:57 osdx dnsmasq[24440]: using nameserver 10::10#53 Jun 20 17:34:57 osdx dnsmasq[24440]: using nameserver 10::2#53 Jun 20 17:34:57 osdx dnsmasq[24440]: read /etc/hosts - 1 addresses Jun 20 17:34:58 osdx dnsmasq[24440]: query[A] localhost.domain from ::1 Jun 20 17:34:58 osdx dnsmasq[24440]: forwarded localhost.domain to 10::10 Jun 20 17:34:59 osdx dnsmasq[24440]: query[A] teldat.com from ::1 Jun 20 17:34:59 osdx dnsmasq[24440]: forwarded teldat.com to 10::10 Jun 20 17:35:00 osdx dnsmasq[24440]: query[A] teldat.com from 127.0.0.1 Jun 20 17:35:01 osdx dnsmasq[24440]: query[A] teldat.com from ::1 Jun 20 17:35:01 osdx dnsmasq[24440]: forwarded teldat.com to 10::2 Jun 20 17:35:01 osdx dnsmasq[24440]: reply teldat.com is 172.24.0.11