ホストにアクセスしようとすると、AWS Lambda 関数に DNS 関連のエラーが表示されます。
解決策
名前解決の一時的な失敗、getaddrinfo、ENOTFOUND、ETIMEDOUT などの AWS Lambda の DNS 関連のエラーには、一貫性がある場合もあれば、断続的に発生する場合もあります。一貫したエラーのトラブルシューティングプロセスは、断続的なエラーのトラブルシューティングプロセスとは異なります。
一貫した DNS 関連エラーのトラブルシューティング
DNS サーバーの設定ミス、権限の誤り、ネットワーク接続の問題により、一貫した DNS 関連のエラーが発生する可能性があります。一貫した DNS 関連のエラーをトラブルシューティングするには、次の手順を実行してください。
- 仮想プライベートクラウド (VPC) で構成された Lambda 関数を使用してパブリックリソースにアクセスする場合は、Lambda 関数がインターネットにアクセスできることを確認します。
- プライベートリソースにアクセスするときは、正しい VPC サーバーと DNS サーバーが Lambda 関数用に設定されていることを確認してください。
- VPC にカスタム DHCP オプションセットを使用している場合は、Amazon Route 53 Resolver クエリログを使用して DNS クエリ応答を確認してください。
- Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを AWS Lambdaと同じネットワーク設定で実行します。次に、解決してエンドポイントに到達できることを確認します。
- ホスト名が ENOTFOUND エラーに対して正しいことを確認します。
- ホスト名の代わりに IP アドレスを使用してターゲットにアクセスしてみます。これにより、問題の原因がホスト名の解決にあるのか、エンドポイントのルート不足によるのかを確認できます。
- Lambda 関数のセキュリティグループとネットワークアクセスコントロールリスト (ネットワーク ACL) で、必要なポートと IP 範囲へのインバウンドトラフィックが許可されていることを確認してください。
断続的な DNS 関連エラーのトラブルシューティング
ネットワークの混雑、高トラフィック、およびその他の外部要因により、断続的な DNS 関連のエラーが発生する可能性があります。断続的な DNS 関連のエラーをトラブルシューティングするには、次の手順を実行してください。
関連情報
DNS の仕組みと、部分的または断続的な DNS 障害をトラブルシューティングする方法を教えてください。