Right now we can only set domain names at a global level, using the dns_domain parameter neutron.conf file.
However, there are use cases where it is useful to provide more granularity to DNS, like at a network or port level where the dns_domain attribute exists.
This is feasible with the OVN driver because OVN sets the DNS naming at a port level:
[root@controller-0 /]# ovn-nbctl list DNS
_uuid : 9f8ce4cf-29b2-4118-84e8-f269b86f423c
external_ids : {ls_name=neutron-b857b04d-005e-44d7-8766-c440ec665715}
records : {server1="192.168.100.12", server1.example.org="192.168.100.12", server2="192.168.100.120", server2.example.org="192.168.100.120"}
Thus, we could create an option to allow DNS using network naming as subdomains.
e.g.:
Global dns_domain: example.org
Networks: net-a, net-b
Server in Network A: server1
Server in Network B: server1
FQDN for server1: server1.net-a.example.org
FQDN for server1: server1.net-b.example.org
This would allow servers from different networks with the same name to have unique FQDNs, as opposed to the current approach were we would get the same FQDN in both cases: server1.example.org
Right now we can only set domain names at a global level, using the dns_domain parameter neutron.conf file.
However, there are use cases where it is useful to provide more granularity to DNS, like at a network or port level where the dns_domain attribute exists.
This is feasible with the OVN driver because OVN sets the DNS naming at a port level:
[root@controller-0 /]# ovn-nbctl list DNS 29b2-4118- 84e8-f269b86f42 3c neutron- b857b04d- 005e-44d7- 8766-c440ec6657 15} "192.168. 100.12" , server1. example. org="192. 168.100. 12", server2= "192.168. 100.120" , server2. example. org="192. 168.100. 120"}
_uuid : 9f8ce4cf-
external_ids : {ls_name=
records : {server1=
Thus, we could create an option to allow DNS using network naming as subdomains.
e.g.:
Global dns_domain: example.org net-a.example. org net-b.example. org
Networks: net-a, net-b
Server in Network A: server1
Server in Network B: server1
FQDN for server1: server1.
FQDN for server1: server1.
This would allow servers from different networks with the same name to have unique FQDNs, as opposed to the current approach were we would get the same FQDN in both cases: server1.example.org