diff --git a/novaclient/tests/functional/api/__init__.py b/novaclient/tests/functional/api/__init__.py
new file mode 100644
index 000000000..e69de29bb
diff --git a/novaclient/tests/functional/api/test_servers.py b/novaclient/tests/functional/api/test_servers.py
new file mode 100644
index 000000000..5615eb849
--- /dev/null
+++ b/novaclient/tests/functional/api/test_servers.py
@@ -0,0 +1,35 @@
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+import time
+
+from novaclient.tests.functional import base
+
+
+class TestServersAPI(base.ClientTestBase):
+    def test_server_ips(self):
+        server_name = "test_server"
+        initial_server = self.client.servers.create(
+            server_name, self.image, self.flavor)
+        self.addCleanup(initial_server.delete)
+
+        for x in xrange(60):
+            server = self.client.servers.get(initial_server)
+            if server.status == "ACTIVE":
+                break
+            else:
+                time.sleep(1)
+        else:
+            self.fail("Server %s did not go ACTIVE after 60s" % server)
+
+        ips = self.client.servers.ips(server)
+        self.assertIn('private', ips)
diff --git a/novaclient/v2/servers.py b/novaclient/v2/servers.py
index 624651b05..11f1a56eb 100644
--- a/novaclient/v2/servers.py
+++ b/novaclient/v2/servers.py
@@ -819,6 +819,16 @@ class ServerManager(base.BootingManagerWithFind):
         """
         self._action('unshelve', server, None)
 
+    def ips(self, server):
+        """
+        Return IP Addresses associated with the server.
+
+        Often a cheaper call then getting all the details for a server.
+        """
+        _resp, body = self.api.client.get("/servers/%s/ips" %
+                                          base.getid(server))
+        return body['addresses']
+
     def diagnostics(self, server):
         """Retrieve server diagnostics."""
         return self.api.client.get("/servers/%s/diagnostics" %