diff --git a/library/cassandra_hosts.py b/library/cassandra_hosts.py
index cded12a..536a61c 100644
--- a/library/cassandra_hosts.py
+++ b/library/cassandra_hosts.py
@@ -39,7 +39,7 @@
                 else:
                     private_ip = NOT_DEFINED
             cassandra_ip_map = cassandra_ip_mappings[cassandra_group_name]
-            cassandra_ip_map[ds_ip] = { 'private_ip': private_ip }
+            cassandra_ip_map[ds_ip] = { 'private_address': private_ip }
     return cassandra_ip_mappings
 
 
@@ -47,7 +47,7 @@
     for cassandra_group_name in cassandra_groups:
         group_name_parts = cassandra_group_name.split('-')
         for ds_ip in cassandra_groups[cassandra_group_name]:
-            cassandra_groups[cassandra_group_name][ds_ip]['private_ip'] = cassandra_groups[cassandra_group_name][ds_ip]['private_ip'] + ":" + group_name_parts[1] + ',1'
+            cassandra_groups[cassandra_group_name][ds_ip]['private_address'] = cassandra_groups[cassandra_group_name][ds_ip]['private_address'] + ":" + group_name_parts[1] + ',1'
     return cassandra_groups
 
 
@@ -67,12 +67,12 @@
     del cassandra_groups['lead_group']
 
     for ds_ip in cassandra_groups[ds_lead_group]:
-            prioritized_groups.append(cassandra_groups[ds_lead_group][ds_ip]['private_ip'])
+            prioritized_groups.append(cassandra_groups[ds_lead_group][ds_ip]['private_address'])
     del cassandra_groups[ds_lead_group]
 
     for cassandra_group_name in cassandra_groups:
         for ds_ip in cassandra_groups[cassandra_group_name]:
-            prioritized_groups.append(cassandra_groups[cassandra_group_name][ds_ip]['private_ip'])
+            prioritized_groups.append(cassandra_groups[cassandra_group_name][ds_ip]['private_address'])
 
     return prioritized_groups
 
