diff --git a/src/osmo_gsm_tester/suite.py b/src/osmo_gsm_tester/suite.py
index 5d03b95..3f4c552 100644
--- a/src/osmo_gsm_tester/suite.py
+++ b/src/osmo_gsm_tester/suite.py
@@ -266,13 +266,13 @@
         for process in self._processes:
             process.terminate()
 
-    def nitb_iface(self):
-        return self.reserved_resources.get(resource.R_NITB_IFACE)
+    def ip_address(self):
+        return self.reserved_resources.get(resource.R_IP_ADDRESS)
 
-    def nitb(self, nitb_iface=None):
-        if nitb_iface is None:
-            nitb_iface = self.nitb_iface()
-        return osmo_nitb.OsmoNitb(self, nitb_iface)
+    def nitb(self, ip_address=None):
+        if ip_address is None:
+            ip_address = self.ip_address()
+        return osmo_nitb.OsmoNitb(self, ip_address)
 
     def bts(self):
         return bts_obj(self, self.reserved_resources.get(resource.R_BTS))
