當我嘗試連線主機時,我在 AWS Lambda 函數中看到 DNS 相關錯誤。
解決方案
AWS Lambda 中的 DNS 相關錯誤 (例如名稱解析暫時性錯誤、 getaddrinfo、ENOTFOUND和 ETIMEDOUT) 可能是持續性或間歇性。持續性錯誤和間歇性錯誤的疑難排解程序不同。
疑難排解持續性 DNS 相關錯誤
DNS 伺服器設定錯誤、權限不正確和網路連線問題可能會導致持續性 DNS 相關錯誤。請採取下列步驟來疑難排解持續性 DNS 相關錯誤:
- 當您使用已配置虛擬私有雲端 (VPC) 的 Lambda 函數存取公用資源時,請確認 Lambda 函數具有網際網路存取權限。
- 當您存取私有資源時,請確認 Lambda 函數是否已配置正確的 VPC 和 DNS 伺服器。
- 當您為 VPC 使用自訂 DHCP 選項組時,請透過 Amazon Route 53 Resolver 查詢記錄確認 DNS 查詢回應。
- 使用與 AWS Lambda 相同的網路組態執行您的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體。然後確認您能夠解析並連線至該端點。
- 若是 ENOTFOUND 錯誤,請確認主機名稱是否正確。
- 嘗試使用 IP 地址而非主機名稱來存取目標。如此一來,您可以確認問題是由主機名稱解析或缺少端點路由所造成。
- 請確認 Lambda 函數的安全群組和網路存取控制清單 (network ACL) 允許輸入流量至必要的連接埠和 IP 範圍。
疑難排解間歇性 DNS 相關錯誤
網路壅塞、高流量和其他外部因素都可能導致間歇性 DNS 相關錯誤。請採取下列步驟來疑難排解間歇性 DNS 相關錯誤:
相關資訊
DNS 如何運作,以及如何疑難排解部分或間歇性 DNS 故障?