diff --git a/_modules/maasng.py b/_modules/maasng.py
index 65c5a0f..ace6c90 100644
--- a/_modules/maasng.py
+++ b/_modules/maasng.py
@@ -957,7 +957,7 @@
     return ret
 
 
-def create_fabric(name, fabric_id,  description, update=False):
+def create_fabric(name, description=None, fabric_id=None, update=False):
     """
     Create new fabric.
 
@@ -977,6 +977,7 @@
         data['description'] = description
 
     maas = _create_maas_client()
+    json_res = None
     try:
         if update:
             json_res = json.loads(
@@ -1246,7 +1247,7 @@
     return ipranges
 
 
-def create_iprange(type_range, start_ip, end_ip, comment=None):
+def create_iprange(type_range, start_ip, end_ip, subnet=None, comment=None):
     """
     Create ip range
 
@@ -1265,6 +1266,9 @@
     }
     if comment:
         data['comment'] = comment
+    if subnet:
+        subnet_id = list_subnets()[subnet]['id']
+        data['subnet'] = str(subnet_id)
     maas = _create_maas_client()
     _name = "Type:{}: {}-{}".format(type_range, start_ip, end_ip)
     try:
diff --git a/_states/maasng.py b/_states/maasng.py
index 7b14f99..b6eb01f 100644
--- a/_states/maasng.py
+++ b/_states/maasng.py
@@ -461,7 +461,7 @@
     return ret
 
 
-def iprange_present(name, type_range, start_ip, end_ip, comment=''):
+def iprange_present(name, type_range, start_ip, end_ip, subnet=None, comment=None):
     '''
 
     :param name: Name of iprange
@@ -494,7 +494,7 @@
 
     changes = __salt__['maasng.create_iprange'](type_range=type_range,
                                                 start_ip=start_ip,
-                                                end_ip=end_ip, comment=comment)
+                                                end_ip=end_ip,subnet=subnet, comment=comment)
     ret["changes"] = changes
     if "error" in changes:
         ret['comment'] = "State execution failed for iprange {0}".format(name)
@@ -551,7 +551,7 @@
     return ret
 
 
-def fabric_present(name, description):
+def fabric_present(name, description=None):
     """
 
     :param name: Name of fabric
diff --git a/maas/region.sls b/maas/region.sls
index 0f82cd8..e795585 100644
--- a/maas/region.sls
+++ b/maas/region.sls
@@ -345,6 +345,7 @@
   - type_range: {{ iprange.type }}
   - start_ip: {{ iprange.start }}
   - end_ip: {{ iprange.end }}
+  - subnet: {{ iprange.get('subnet', '' ) }}
   - comment: {{ iprange.get('comment', "") }}
   - require:
     - maas_create_subnet_{{ subnet.cidr }}
