diff --git a/tests/functional/conftest.py b/tests/functional/conftest.py
index 518b78cd0743705f47d5dcec1120692b7af14c52..05575ffca4382c7ef1ffcd13fd9a51d7d25d429c 100644
--- a/tests/functional/conftest.py
+++ b/tests/functional/conftest.py
@@ -82,6 +82,7 @@ def session(db, request):
 
     Rollback any transaction to always leave the database clean
     """
+    factories.NetworkFactory.reset_sequence()
     factories.InterfaceFactory.reset_sequence()
     connection = db.engine.connect()
     transaction = connection.begin()
diff --git a/tests/functional/factories.py b/tests/functional/factories.py
index febdd62676e5b498dd278d98b86ba7daf6e8b31b..a5fc4d375a454529a711f91de07b6435d06d6d42 100644
--- a/tests/functional/factories.py
+++ b/tests/functional/factories.py
@@ -121,7 +121,7 @@ class NetworkFactory(factory.alchemy.SQLAlchemyModelFactory):
 
     vlan_name = factory.Sequence(lambda n: f'vlan{n}')
     vlan_id = factory.Sequence(lambda n: 1600 + n)
-    address = factory.Faker('ipv4', network=True)
+    address = factory.Sequence(lambda n: f'192.168.{n}.0/24')
     scope = factory.SubFactory(NetworkScopeFactory)
     user = factory.SubFactory(UserFactory)
     domain = factory.SubFactory(DomainFactory)
@@ -130,19 +130,13 @@ class NetworkFactory(factory.alchemy.SQLAlchemyModelFactory):
     def first_ip(self):
         net = ipaddress.ip_network(self.address)
         hosts = list(net.hosts())
-        try:
-            return str(hosts[4])
-        except IndexError:
-            return str(hosts[0])
+        return str(hosts[4])
 
     @factory.lazy_attribute
     def last_ip(self):
         net = ipaddress.ip_network(self.address)
         hosts = list(net.hosts())
-        try:
-            return str(hosts[-5])
-        except IndexError:
-            return str(hosts[-1])
+        return str(hosts[-5])
 
 
 class InterfaceFactory(factory.alchemy.SQLAlchemyModelFactory):