diff --git a/src/main/java/org/opencord/cordvtn/cli/CordVtnNodeListCommand.java b/src/main/java/org/opencord/cordvtn/cli/CordVtnNodeListCommand.java
index 0b25e7b..b8aa2cd 100644
--- a/src/main/java/org/opencord/cordvtn/cli/CordVtnNodeListCommand.java
+++ b/src/main/java/org/opencord/cordvtn/cli/CordVtnNodeListCommand.java
@@ -47,12 +47,12 @@
             print("%s", json(nodeManager, nodes));
         } else {
             for (CordVtnNode node : nodes) {
-                print("hostname=%s, hostMgmtIp=%s, dataIp=%s, br-int=%s, dataIface=%s, init=%s",
+                print("hostname=%s, hostMgmtIp=%s, dpIp=%s, br-int=%s, dpIntf=%s, init=%s",
                       node.hostname(),
                       node.hostMgmtIp().cidr(),
-                      node.dataIp().cidr(),
-                      node.integrationBridgeId().toString(),
-                      node.dataIface(),
+                      node.dpIp().cidr(),
+                      node.intBrId().toString(),
+                      node.dpIntf(),
                       getState(nodeManager, node));
             }
             print("Total %s nodes", nodeManager.getNodeCount());
@@ -66,9 +66,9 @@
             result.add(mapper.createObjectNode()
                                .put("hostname", node.hostname())
                                .put("hostManagementIp", node.hostMgmtIp().cidr())
-                               .put("dataPlaneIp", node.dataIp().cidr())
-                               .put("bridgeId", node.integrationBridgeId().toString())
-                               .put("dataPlaneInterface", node.dataIface())
+                               .put("dataPlaneIp", node.dpIp().cidr())
+                               .put("bridgeId", node.intBrId().toString())
+                               .put("dataPlaneInterface", node.dpIntf())
                                .put("init", getState(nodeManager, node)));
         }
         return result;
