The AI Assistant Service resource group is deployed in a Virtual Private Cloud (VPC). If this VPC does not have a public egress (no NAT gateway, public IP address, or SNAT rule), it cannot directly access IM endpoints on the internet. This document describes how to use Alibaba Cloud DNS PrivateZone with PrivateLink to enable resources within the VPC to access IM platform endpoints entirely over a private network.
This document applies to scenarios where you need to configure IM channel connectivity (DingTalk, Feishu, Lark, and WeCom) for the AI Assistant Service resource group, but the associated VPC has no public egress.
Target IM endpoints
IM platform | Domain name |
DingTalk | oapi.dingtalk.com, api.dingtalk.com, wss-open-connection.dingtalk.com |
Feishu | open.feishu.cn |
Lark (international version of Feishu) | open.larksuite.com |
WeCom | qyapi.weixin.qq.com, openws.work.weixin.qq.com |
Procedure
Create an endpoint and connect it to the corresponding endpoint service.
Configure Alibaba Cloud DNS PrivateZone to resolve the IM endpoint domain names to the endpoint service domain name.
Step 1: Create an endpoint
The following table lists the endpoint service names for each region.
Region | Endpoint service name |
China (Beijing) | com.aliyuncs.privatelink.cn-beijing.epsrv-2zeciz4ntuthx6mrxrk7 |
China (Zhangjiakou) | com.aliyuncs.privatelink.cn-zhangjiakou.epsrv-8vb47zkwnaqw1pqcuhl9 |
China (Chengdu) | com.aliyuncs.privatelink.cn-chengdu.epsrv-2vcn7v0pclwfu734seyl |
China (Shenzhen) | com.aliyuncs.privatelink.cn-shenzhen.epsrv-wz9gfwq7qu96nojcyhg9 |
US (Silicon Valley) | com.aliyuncs.privatelink.us-west-1.epsrv-rj9k3jozp2ikqfpovkma |
US (Virginia) | com.aliyuncs.privatelink.us-east-1.epsrv-0xi9a0yweqibneo0e3yw |
Malaysia (Kuala Lumpur) | com.aliyuncs.privatelink.ap-southeast-3.epsrv-8psdc50rodmluek1xprp |
China (Shanghai) | com.aliyuncs.privatelink.cn-shanghai.epsrv-uf642rlrq651r54tsrsm |
Japan (Tokyo) | com.aliyuncs.privatelink.ap-northeast-1.epsrv-6we2bf7j3qxyhjrruodd |
Indonesia (Jakarta) | com.aliyuncs.privatelink.ap-southeast-5.epsrv-k1ao71n7bsueh43jxab8 |
Germany (Frankfurt) | com.aliyuncs.privatelink.eu-central-1.epsrv-gw8dbt8r04rhvv768c8m |
UK (London) | com.aliyuncs.privatelink.eu-west-1.epsrv-d7ocvmeaz8rscy8i8f7w |
China (Ulanqab) | com.aliyuncs.privatelink.cn-wulanchabu.epsrv-0jl3ff4svzgnx8m4cdll |
China (Hangzhou) | com.aliyuncs.privatelink.cn-hangzhou.epsrv-bp17q2rl5mjwmf89zw8v |
Singapore | com.aliyuncs.privatelink.ap-southeast-1.epsrv-t4nimtw1dos0n6xrbwcj |
China (Hong Kong) | com.aliyuncs.privatelink.cn-hongkong.epsrv-j6cjwpdkyb4mxfrvgd2j |
Thailand (Bangkok) | com.aliyuncs.privatelink.ap-southeast-7.epsrv-0jo7k2om1q8u1pnc4q7d |
UAE (Dubai) | com.aliyuncs.privatelink.me-east-1.epsrv-eb3m5b63logfqfr5rm66 |
South Korea (Seoul) | com.aliyuncs.privatelink.ap-northeast-2.epsrv-mj7hsmg98wr5ebqs9gyx |
Mexico | com.aliyuncs.privatelink.na-south-1.epsrv-4hfxnk96zbwulu9a1dln |
In the left-side navigation pane, choose Endpoint > Interface Endpoint. Click Create Endpoint.
On the Create Endpoint pane, configure the following parameters:
Region: Select the same region as your DataWorks workspace.
Endpoint type: Interface Endpoint.
Endpoint name: Enter a custom name, such as
AI-Assistant-Service-im-endpoint.Available services: Search for and select the Endpoint Service Name for your region from the preceding table.
VPC: Select the default VPC associated with the AI Assistant Service resource group.
Availability zone: Select the same availability zone as the AI Assistant Service resource group.
Security group: Create a security group that allows both inbound and outbound traffic on port 443. If a suitable security group already exists, you can select it.
Click OK to create the endpoint. After the endpoint is created, find it in the list and record its endpoint service domain name (for example, ep-xxxxxxxx.vpc-endpoint.aliyuncs.com).
Use this endpoint service domain name as the CNAME record value when you configure the PrivateZone.
Step 2: Configure DNS resolution with PrivateZone
Configure DNS resolution only for the IM platforms you need. For example, if you need to connect to DingTalk, you only need to create DNS records for its domains: oapi.dingtalk.com, api.dingtalk.com, and wss-open-connection.dingtalk.com.
Log on to the Alibaba Cloud DNS console.
In the left-side navigation pane, choose Private DNS.
On the Private Zone tab, click Add Zone to create an authoritative domain for the top-level domain of each IM endpoint.
Private zone name (Zone): Enter the top-level domain of the IM endpoint, such as
dingtalk.com,feishu.cn,larksuite.com, orqq.com.IM platform
Authoritative domain
DingTalk
dingtalk.com
Feishu
feishu.cn
Lark (international version of Feishu)
larksuite.com
WeCom
qq.com
Scope: Under Effective in Alibaba Cloud VPC, find and select the VPC associated with your AI Assistant Service resource group. This ensures that instances within this VPC use the PrivateZone for DNS resolution.
Save the configuration to add the zone.
Add a CNAME record for each authoritative domain. In the list of private zones, click Resolution Settings in the Actions column of the target zone. Then, click Add Record and configure the following parameters:
Record type: Select CNAME.
Host record: Enter the part of the IM endpoint domain name that precedes the top-level domain. For example, for
oapi.dingtalk.com, the host record isoapi.Resolution request source: Keep the default value (All Sources).
TTL: Keep the default value of 600 seconds.
Record value: Enter the endpoint service domain name from Step 1. You can copy this from the Default Service Domain Name on the endpoint's basic information page.
Refer to the following table for record information:
Authoritative domain
Record type
Host record
Value
dingtalk.com
CNAME
oapi
endpoint service domain name (from Step 1)
dingtalk.com
CNAME
api
dingtalk.com
CNAME
wss-open-connection
feishu.cn
CNAME
open
larksuite.com
CNAME
open
qq.com
CNAME
qyapi.weixin
qq.com
CNAME
openws.work.weixin
endpoint service domain name (from Step 1)
After adding each record, click OK to save it.
Return to DataWorks. On the details page of your AI Assistant Service instance, test the network connectivity of the IM configuration. A successful test confirms that the configuration is correct.