docs: def _config_net_topology(self, conf):
          """
          Initialize and populate all the network related elements, like
          reserving ips and populating network specs of the given confiiguration
          spec
  
          Args:
              conf (dict): Configuration spec to initalize
  
          Returns:
              None
          """
          conf = self._init_net_specs(conf)
          mgmts = self._select_mgmt_networks(conf)
          self._validate_netconfig(conf)
          allocated_subnets, conf = self._allocate_subnets(conf)
          try:
              self._add_mgmt_to_domains(conf, mgmts)
              self._register_preallocated_ips(conf)
              self._allocate_ips_to_nics(conf)
              self._set_mtu_to_nics(conf)
              self._add_dns_records(conf, mgmts)
          except:
              self._subnet_store.release(allocated_subnets)
              raise
          return conf