diff --git a/gso/oss-params-example.json b/gso/oss-params-example.json
index 574af8c05efe283d3adcf8230458eeaa51ce85b6..d555365d3ded6e28f41879af1d89c85d984e2e36 100644
--- a/gso/oss-params-example.json
+++ b/gso/oss-params-example.json
@@ -14,17 +14,20 @@
     "LO": {
       "V4": {"containers": [], "networks": ["1.1.0.0/28"], "mask": 0},
       "V6": {"containers": [], "networks": ["dead:beef::/80"], "mask": 0},
-      "domain_name": ".lo"
+      "domain_name": ".lo",
+      "dns_view": "default"
     },
     "TRUNK": {
       "V4": {"containers": ["1.1.1.0/24"], "networks": [], "mask": 31},
       "V6": {"containers": ["dead:beef::/64"], "networks": [], "mask": 126},
-      "domain_name": ".trunk"
+      "domain_name": ".trunk",
+      "dns_view": "default
     },
     "GEANT_IP": {
       "V4": {"containers": ["1.1.2.0/24"], "networks": [], "mask": 31},
       "V6": {"containers": ["dead:beef::/64"], "networks": [], "mask": 126},
-      "domain_name": ".geantip"
+      "domain_name": ".geantip",
+      "dns_view": "default
     }
   },
   "PROVISIONING_PROXY": {
diff --git a/gso/services/_ipam.py b/gso/services/_ipam.py
index 8e753e0e35b23ba0752683992f2a583f2d93fc4b..416951db9cb3191068ca3efec0ab910eaa537ad8 100644
--- a/gso/services/_ipam.py
+++ b/gso/services/_ipam.py
@@ -240,6 +240,7 @@ def _allocate_host(hostname=None,
                    addrs=None,
                    networks=None,
                    cname_aliases=None,
+                   dns_view="default",
                    extattrs={}
                    ) -> Union[HostAddresses, str]:
     """
@@ -303,7 +304,7 @@ def _allocate_host(hostname=None,
         ],
         "name": hostname,
         "configure_for_dns": True,
-        "view": "default",
+        "view": dns_view,
         "extattrs": extattrs
     }
 
@@ -324,7 +325,7 @@ def _allocate_host(hostname=None,
         cname_req_payload = {
             "name": "",
             "canonical": hostname,
-            "view": "default",
+            "view": dns_view,
             "extattrs": extattrs
         }
 
@@ -380,11 +381,13 @@ def allocate_service_host(hostname=None,
     oss_ipv4_networks = getattr(ipam_params, service_type).V4.networks
     oss_ipv6_networks = getattr(ipam_params, service_type).V6.networks
     domain_name = getattr(ipam_params, service_type).domain_name
+    dns_view = getattr(ipam_params, service_type).dns_view
 
     assert (oss_ipv4_containers and oss_ipv6_containers) \
         or (oss_ipv4_networks and oss_ipv6_networks), \
         "This service is missing either containers or networks configuration."
     assert domain_name, "This service is missing domain_name configuration."
+    assert dns_view, "This service is missing dns_view configuration."
 
     if cname_aliases:
         cname_aliases = [alias + domain_name for alias in cname_aliases]
@@ -419,6 +422,7 @@ def allocate_service_host(hostname=None,
             host = _allocate_host(hostname=hostname+domain_name,
                                   networks=network_tuple,
                                   cname_aliases=cname_aliases,
+                                  dns_view=dns_view,
                                   extattrs=extattrs)
 
             if "NETWORK_FULL" not in host:
@@ -455,6 +459,7 @@ def allocate_service_host(hostname=None,
             hostname=hostname+domain_name,
             networks=(str(ipv4_network), str(ipv6_network)),
             cname_aliases=cname_aliases,
+            dns_view=dns_view,
             extattrs=extattrs
         )
         assert "NETWORK_FULL" not in host
@@ -482,6 +487,7 @@ def allocate_service_host(hostname=None,
             hostname=hostname+domain_name,
             addrs=(str(ipv4_addr), str(ipv6_addr)),
             cname_aliases=cname_aliases,
+            dns_view=dns_view,
             extattrs=extattrs
         )
         assert "NETWORK_FULL" not in host
diff --git a/gso/settings.py b/gso/settings.py
index 7167785cb32245f51316809db517bd09bbc251d8..1244265dc9d5f23b1b083f1db81ddf4c5a655bac 100644
--- a/gso/settings.py
+++ b/gso/settings.py
@@ -32,6 +32,7 @@ class ServiceNetworkParams(BaseSettings):
     V4: V4NetworkParams
     V6: V6NetworkParams
     domain_name: str
+    dns_view: str
 
 
 class IPAMParams(BaseSettings):