更新时间:2022-08-11 GMT+08:00
FunctionGraph函数如何解析DNS内网域名?
当前FunctionGraph函数无法直接解析的内网域名,当需要在函数中解析DNS域名,可参考本章节操作,通过调用DNS服务的接口,实现解析功能。
解析DNS内网域名
您需要提前创建VPC和DNS内网域名,再按照如下步骤操作。
- 内网域名关联VPC并添加记录集
登录云解析服务控制台,将内网域名关联VPC。
点击进入域名并添加记录集,类型选择A。
- 创建函数
创建一个运行时语言为Python 2.7版本的函数,代码示例如下:
# -*- coding:utf-8 -*- import json import os def handler(event, context): os.system("curl -iv www.test.com")
- 为函数配置DNS与VPC委托
在IAM页面,为函数工作流服务配置“DNS ReadOnlyAccess”以及“VPC Administrator”权限的委托。
在进行解析域名时,函数需要查看云解析服务资源,所以必须要配置DNS资源数据读取权限,否则在执行函数时,会提示如下错误,获取不成功。
2020/08/20 10:37:12 GMT+08:00 Start invoke request 'a2f105b4-2e72-4fda-94a5-86d3837e961d', version: latest [GET /v2/zones/{zone_id}/recordsets] failed, response: {"code":"DNS.1802","message":"Policy doesn't allow dns:recordset:list to be performed."} 2020/08/20 10:37:13 GMT+08:00 Finish invoke request 'a2f105b4-2e72-4fda-94a5-86d3837e961d', duration: 1030.072ms, billing duration: 1100ms, memory used: 77.039MB.
- 配置函数
进入2创建的函数详情页面,在“设置”页签下,执行以下配置。
- “权限”选择3创建的委托。
- 打开VPC访问开关,配置上述操作中创建的VPC、子网、域名。
- 验证结果
保存后执行函数时,就能在代码中解析该域名中配置的所有IPV4类型的域名。
父主题: 通用问题