为了账号安全,请及时绑定邮箱和手机立即绑定

如何发现正在运行的 AWS lambda 的本地 IP 地址或 ENI?

如何发现正在运行的 AWS lambda 的本地 IP 地址或 ENI?

白衣非少年 2022-05-24 13:05:38
我正在尝试发现当前执行的 AWS Lambda 的 VPC IP 地址或 AWS ENI,以便我可以使用 IP 地址过滤 VPC 日志以查找匹配记录。Lambda 在 VPC 中运行并且没有公共 IP 地址。我尝试了这里建议的各种技术:使用 Python 的 stdlib 查找本地 IP 地址但这些对我不起作用,因为我认为它们是从容器的角度而不是 VPC 的角度显示容器的 IP 地址。
查看完整描述

2 回答

?
梦里花落0921

TA贡献1772条经验 获得超6个赞

我们对此的解决方案是在 VPC 中生成一个私有 API,并带有一个模拟响应,它将告诉您调用的私有 IP 地址。然后根据该私有 IP 查询 EC2 DescribeNetworkInterfaces api。

由于这很耗时,我们只在冷启动时运行它,而不是在每次 lambda 运行时运行。



查看完整回答
反对 回复 2022-05-24
?
森栏

TA贡献1810条经验 获得超5个赞

部分答案是在创建 lambda 时而不是每次运行时设置 ENI。似乎,但我不确定,运行具有相同安全组的相同 VPC 的 lambda 共享相同的 ENI。所以,严格来说,我不需要在运行时从 lambda 本身的代码中发现 IP 地址。相反,我可以检查网络接口控制台以发现 lambda ENI 并将其用于我的过滤目的(当然,前提是没有来自同一网络接口上运行的其他 lambda 的太多流量)。



查看完整回答
反对 回复 2022-05-24
  • 2 回答
  • 0 关注
  • 230 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号