如何在python中获取当前EC2实例的公共IP地址?
答案 0 :(得分:6)
import urllib.request
urllib.request.urlopen("http://169.254.169.254/latest/meta-data/public-ipv4").read()
答案 1 :(得分:3)
如果您已使用boto
,还可以使用boto.utils.get_instance_metadata
功能。这使得对元数据服务器的调用收集所有元数据并将其作为Python字典返回。它还处理重试。
答案 2 :(得分:2)
import requests
ip = requests.get("http://169.254.169.254/latest/meta-data/public-ipv4").content
答案 3 :(得分:0)
def console(cmd):
p = Popen(cmd,shell=True,stdout=PIPE)
out,err = p.communicate()
dir_list = out.split('\n')
return (dir_list)
ip = console("http://169.254.169.254/latest/meta-data/public-ipv4")
print ip