'Lists all Public IP Addresses.
:rtype: ``list`` of :class:`CloudStackAddress`'

def ex_list_public_ips(self):

    ips = []
    res = self._sync_request(command='listPublicIpAddresses', method='GET')
    if (not res):
        return ips
    for ip in res['publicipaddress']:
        ips.append(CloudStackAddress(ip['id'], ip['ipaddress'], self, ip.get('associatednetworkid', []), ip.get('vpcid'), ip.get('virtualmachineid')))
    return ips
