diff --git a/lib/config.py b/lib/config.py
index ba4bbdf6137099c77cc8d19ac6506cb231d8b0f7..20bf6917c22224a3274e8526da86f580e4cf5635 100644
--- a/lib/config.py
+++ b/lib/config.py
@@ -1148,12 +1148,16 @@ class ConfigWriter:
     instance_names = utils.NiceSort(self._UnlockedGetInstanceList())
     node_names = utils.NiceSort(self._UnlockedGetNodeList())
     node_info = [self._UnlockedGetNodeInfo(name) for name in node_names]
+    node_pri_ips = [ninfo.primary_ip for ninfo in node_info]
+    node_snd_ips = [ninfo.secondary_ip for ninfo in node_info]
 
     instance_data = fn(instance_names)
     off_data = fn(node.name for node in node_info if node.offline)
     on_data = fn(node.name for node in node_info if not node.offline)
     mc_data = fn(node.name for node in node_info if node.master_candidate)
     node_data = fn(node_names)
+    node_pri_ips_data = fn(node_pri_ips)
+    node_snd_ips_data = fn(node_snd_ips)
 
     cluster = self._config_data.cluster
     cluster_tags = fn(cluster.GetTags())
@@ -1166,6 +1170,8 @@ class ConfigWriter:
       constants.SS_MASTER_NETDEV: cluster.master_netdev,
       constants.SS_MASTER_NODE: cluster.master_node,
       constants.SS_NODE_LIST: node_data,
+      constants.SS_NODE_PRIMARY_IPS: node_pri_ips_data,
+      constants.SS_NODE_SECONDARY_IPS: node_snd_ips_data,
       constants.SS_OFFLINE_NODES: off_data,
       constants.SS_ONLINE_NODES: on_data,
       constants.SS_INSTANCE_LIST: instance_data,
diff --git a/lib/constants.py b/lib/constants.py
index 09f79171e3a13915aa77c05433792da7f89c924b..95c38981965710894576749668b36f3a062c480f 100644
--- a/lib/constants.py
+++ b/lib/constants.py
@@ -545,6 +545,8 @@ SS_MASTER_IP = "master_ip"
 SS_MASTER_NETDEV = "master_netdev"
 SS_MASTER_NODE = "master_node"
 SS_NODE_LIST = "node_list"
+SS_NODE_PRIMARY_IPS = "node_primary_ips"
+SS_NODE_SECONDARY_IPS = "node_secondary_ips"
 SS_OFFLINE_NODES = "offline_nodes"
 SS_ONLINE_NODES = "online_nodes"
 SS_INSTANCE_LIST = "instance_list"
diff --git a/lib/ssconf.py b/lib/ssconf.py
index 93c057dd0003a12ee98348de4d42c3b2dcb0f137..6e69eb00c975e3c288b26325349fa6e0d9d847fb 100644
--- a/lib/ssconf.py
+++ b/lib/ssconf.py
@@ -101,6 +101,8 @@ class SimpleStore(object):
     constants.SS_MASTER_NETDEV,
     constants.SS_MASTER_NODE,
     constants.SS_NODE_LIST,
+    constants.SS_NODE_PRIMARY_IPS,
+    constants.SS_NODE_SECONDARY_IPS,
     constants.SS_OFFLINE_NODES,
     constants.SS_ONLINE_NODES,
     constants.SS_INSTANCE_LIST,
@@ -214,6 +216,22 @@ class SimpleStore(object):
     nl = data.splitlines(False)
     return nl
 
+  def GetNodePrimaryIPList(self):
+    """Return the list of cluster nodes' primary IP.
+
+    """
+    data = self._ReadFile(constants.SS_NODE_PRIMARY_IPS)
+    nl = data.splitlines(False)
+    return nl
+
+  def GetNodeSecondaryIPList(self):
+    """Return the list of cluster nodes' secondary IP.
+
+    """
+    data = self._ReadFile(constants.SS_NODE_SECONDARY_IPS)
+    nl = data.splitlines(False)
+    return nl
+
   def GetClusterTags(self):
     """Return the cluster tags.