如何使用 Python 和 boto3 列出 AWS EC2 实例的 MAC 地址
How to list MAC Address of an AWS EC2 instance with Python and boto3
如何使用 Python boto3 库查找有关 MAC Amazon EC2 实例地址的信息。
假设您有一个网络接口连接到您的实例。如果您的实例连接了多个网络接口,请根据您的需要调整代码。
import boto3
ec2 = boto3.resource('ec2')
insts = list(ec2.instances.all())
for inst in insts:
for iface in inst.network_interfaces:
print inst.instance_id, iface.mac_address
如果您在实例本身上,可以通过 instance metadata service:
检索 MAC 地址
$ curl http://169.254.169.254/latest/meta-data/mac/
02:72:f3:75:2f:83
ips = []
macs = []
print self.nodes
vpc = self.resource.Vpc(self.config['vpc_id'])
for node in self.nodes:
node_name = node.name
if re.search(re.escape(instance_name) + r"-*[0-9]*", node_name) and node.state == 'running':
ips.append(node.private_ips)
for n in node.network_interfaces:
if n.private_ip_address == node.private_ip_address:
macs.append(n.mac_address)
break
return ips, macs
如何使用 Python boto3 库查找有关 MAC Amazon EC2 实例地址的信息。
假设您有一个网络接口连接到您的实例。如果您的实例连接了多个网络接口,请根据您的需要调整代码。
import boto3
ec2 = boto3.resource('ec2')
insts = list(ec2.instances.all())
for inst in insts:
for iface in inst.network_interfaces:
print inst.instance_id, iface.mac_address
如果您在实例本身上,可以通过 instance metadata service:
检索 MAC 地址$ curl http://169.254.169.254/latest/meta-data/mac/
02:72:f3:75:2f:83
ips = []
macs = []
print self.nodes
vpc = self.resource.Vpc(self.config['vpc_id'])
for node in self.nodes:
node_name = node.name
if re.search(re.escape(instance_name) + r"-*[0-9]*", node_name) and node.state == 'running':
ips.append(node.private_ips)
for n in node.network_interfaces:
if n.private_ip_address == node.private_ip_address:
macs.append(n.mac_address)
break
return ips, macs