背景 当你使用函数计算服务访问第三方服务的时候,第三方服务出于安全考虑,要求你设置一个白名单,比如:微信小程序等。但是函数计算服务的 IP 是动态且不可枚举的。为了能够让函数计算服务支持设置白名单,目前有两种常用的方式:ECS + EIP + Nginx 搭建代理和 NAT + EIP,第一个访问操作起来可能比较麻烦,需要准备一台 ECS,第二种方式操作简单,费用可能会高些。
proxy 代理
函数计算+NAT网关,函数从此有IP
同时现在FC也支持配置vpc进行固定IP,可以直接选择配置。此回答来自钉群阿里函数计算官网客户。
如果您想使用阿里云函数计算 (Function Compute, FC) 中 NAT 固定 IP,请按照以下步骤操作:
在阿里云函数计算FC中,如果你需要使用NAT固定IP,你可以按照以下步骤进行:
创建NAT网关:首先,你需要在阿里云控制台中创建一个NAT网关。NAT网关可以将公网IP转换为私网IP,从而实现内外网之间的通信。
创建NAT规则:在NAT网关中,你可以创建NAT规则,指定哪些流量需要通过NAT网关进行转换。
配置函数代码:在你的函数代码中,你需要配置NAT网关的IP地址和端口。这样,你的函数就可以通过NAT网关与外部网络进行通信。
测试函数:最后,你可以测试你的函数,看看是否可以正常工作。
固定公网 IP:是否通过NAT网关和弹性公网IP地址获得一个固定的公网出口IP地址。具体信息,请参见配置固定公网IP地址。https://help.aliyun.com/zh/fc/user-guide/configure-static-public-ip-addresses#task-2174820
函数计算访问数据库、微信小程序或其他第三方服务时,需通过配置白名单来访问。您可以使用函数计算的固定公网IP地址来完成白名单的验证。本文介绍如何在函数计算控制台配置函数出口方向的固定公网IP地址。
注意事项
固定IP地址功能需配合专有网络VPC的公网NAT网关来完成。通过创建一个公网NAT网关,并为其绑定一个弹性公网IP地址和添加一个SNAT条目,允许VPC内的实例通过此弹性公网IP地址访问公网。此时,在公网接收端查询到的客户端IP地址为该NAT网关绑定的弹性公网IP地址。
NAT网关和弹性公网IP地址均只能在某个地域的固定可用区购买。如果NAT网关、弹性公网IP与函数计算的服务所在的可用区不一致,您必须通过设置交换机来实现跨可用区公网互通。更多信息,请参见函数计算支持的可用区。
弹性公网IP地址在同一地域下的所有服务间共享。
RAM用户使用固定IP地址功能前,需先登录RAM 访问控制为其授予AliyunECSFullAccess,AliyunVPCFullAccess,AliyunEIPFullAccess和AliyunNATGatewayFullAccess权限。
计费说明
配置固定公网IP地址可能会创建NAT网关和弹性公网IP地址,产生一定的费用。具体信息,请参见公网NAT网关计费和弹性公网IP地址计费。
首次配置固定公网IP地址
前提条件
已完成函数访问VPC资源相关权限和网络的配置。具体操作,请参见配置网络和角色。
已配置允许访问 VPC为是。具体操作,请参见配置网络。
操作步骤
登录函数计算控制台,在左侧导航栏,单击服务及函数。
在顶部菜单栏,选择地域,然后在服务列表页面,单击目标服务操作列的配置。
在网络配置区域,参数固定公网 IP选择是,参数允许函数访问公网选择为否。
单击保存,在弹出的固定公网 IP 配置对话框,仔细阅读提示信息,勾选复选框,然后单击确定。
1~2分钟后,页面将跳转至服务详情页面。您可以查看到刚才保存的网络配置信息,也可以前往专有网络控制台,查看刚才关联或自动创建的公网NAT网关相关资源信息。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。