Skip to content

Adding a DNS Server Config on the LS#307

Open
vamerick wants to merge 2 commits into
ovn-org:mainfrom
vamerick:vagarwal-dns-server
Open

Adding a DNS Server Config on the LS#307
vamerick wants to merge 2 commits into
ovn-org:mainfrom
vamerick:vagarwal-dns-server

Conversation

@vamerick

@vamerick vamerick commented Jun 7, 2026

Copy link
Copy Markdown

When inspecting flows in SB DB for DNS, they appear as follows:

  table=28(ls_in_dns_response ), priority=100  , match=(udp.dst == 53 && reg0[4]), action=(eth.dst <-> eth.src; ip6.src <-> ip6.dst; udp.dst = udp.src; udp.src = 53; outport = inport; flags.loopback = 1; output;)

The challenge is this is intercepting all udp port 53 packets. This PR is experimental, and is adding a DNS server configuration for logical switches. This server is added as a parameter in the flow rules. The new flow rules are supposed to validate udp.dst==53 and the destination ipv4 before attempting to check OVN for the DNS entries.

Built as follows:

cd ovs
./boot.sh
./configure
make -j$(nproc)
cd ..

./boot.sh
./configure --with-ovs-source=./ovs
make -j$(nproc)

Then tested as follows:

ubuntu@txdr-disk-bandwidth:~/ovn/ovn$ make check TESTSUITEFLAGS='-k "dns lookup"'
...
182: dns lookup : 1 HV, 2 LS, 2 LSPs/LS -- parallelization=yes -- ovn_monitor_all=yes ok
183: dns lookup : 1 HV, 2 LS, 2 LSPs/LS -- parallelization=yes -- ovn_monitor_all=no ok
184: dns lookup : dns_server_ip -- parallelization=yes -- ovn_monitor_all=yes ok
185: dns lookup : dns_server_ip -- parallelization=yes -- ovn_monitor_all=no ok
186: dns lookup : EDNS -- parallelization=yes -- ovn_monitor_all=yes skipped (ovn.at:12647)
187: dns lookup : EDNS -- parallelization=yes -- ovn_monitor_all=no skipped (ovn.at:12647)

Note
This requires additional testing. It is just experimental.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant