diff --git a/neutron_tempest_plugin/scenario/test_dns_integration.py b/neutron_tempest_plugin/scenario/test_dns_integration.py
index 48619d3..f7ab6ef 100644
--- a/neutron_tempest_plugin/scenario/test_dns_integration.py
+++ b/neutron_tempest_plugin/scenario/test_dns_integration.py
@@ -80,25 +80,21 @@
             raise cls.skipException("Designate support is required")
         if not (dns_base and dns_waiters):
             raise cls.skipException("Designate tempest plugin is missing")
+        # Neutron creates zones for reverse lookups and designate requires
+        # related TLD if there is any
+        if CONF.production:
+            if CONF.dns.existing_tlds and not set([CONF.dns.tld_suffix,
+                    "arpa", "in-addr.arpa"]).issubset(CONF.dns.existing_tlds):
+                raise cls.skipException("Skip on production environment "
+                            "because it doesn't match TLD configuration.")
 
     @classmethod
     @utils.requires_ext(extension="dns-integration", service="network")
     def resource_setup(cls):
         super(BaseDNSIntegrationTests, cls).resource_setup()
-        # Make sure we have an allowed TLD available
-        tld_name = rand_zone_name("zonestest", prefix='')
-        cls.tld_name = f".{tld_name}"
-        cls.class_tld = cls.admin_tld_client.create_tld(tld_name=tld_name[:-1])
-
-        # neutron creates zones for reverse lookups and designate requires
-        # related TLD if there is any
-        cls.tld_reverse_v4 = cls.admin_tld_client.create_tld(
-            tld_name="in-addr.arpa")
-        cls.tld_reverse_v6 = cls.admin_tld_client.create_tld(
-            tld_name="ip6.arpa")
 
         zone_name = rand_zone_name(
-            name="dnsinttest", prefix='', suffix=cls.tld_name)
+            name="dnsinttest", prefix='')
         _, cls.zone = cls.dns_client.create_zone(name=zone_name)
         cls.addClassResourceCleanup(cls.dns_client.delete_zone,
             cls.zone['id'], ignore_errors=lib_exc.NotFound)
@@ -114,9 +110,6 @@
 
     @classmethod
     def resource_cleanup(cls):
-        cls.admin_tld_client.delete_tld(cls.tld_reverse_v6[1]['id'])
-        cls.admin_tld_client.delete_tld(cls.tld_reverse_v4[1]['id'])
-        cls.admin_tld_client.delete_tld(cls.class_tld[1]['id'])
         super(BaseDNSIntegrationTests, cls).resource_cleanup()
 
     def _create_floatingip_with_dns(self, dns_name):
