最終更新日: | すべてのドキュメントを見る
Let's Encryptは、ACMEクライアントを使用したACME APIへのアクセスと、ドメイン名の制御を検証する際に実施するDNSルックアップとHTTPリクエストの両方でIPv6をサポートしています。
ドメイン検証
IPv4とIPv6の両方のアドレス(例:A
レコードとAAAA
レコードの両方)を持つドメインに対して発信ドメイン検証リクエストを行う場合、Let's Encryptは常に最初の接続にIPv6アドレスを優先します。ネットワークレベルでIPv6接続が失敗した場合(例:タイムアウトが発生した場合)、IPv4アドレスが利用可能であれば、IPv4アドレスのいずれかを使用してリクエストを再試行します。
不正なIPv6アドレス
多くの場合、ドメイン所有者は自分のドメインのAAAA
レコードに気づいていません。AAAA
レコード内のIPv6アドレスが間違っていると、ドメイン検証プロセスに影響します。
一般的に、IPv6アドレスは、ACMEクライアントが実行されているIPv4アドレスとは異なるサーバーになります。ACMEクライアントはIPv4サーバーのみをチャレンジに応答するように構成するため、IPv6サーバーが使用されるとドメイン検証が失敗します。
ほとんどの場合、正しい修正方法は、IPv6アドレスをACMEクライアントが実行されているサーバーを指すように更新するか、ドメインがIPv6で動作することを意図していない場合はAAAA
レコードを削除することです。Let's EncryptにIPv4を優先させる方法はありません。誤った設定を修正する必要があります。
IPv6からIPv4への再試行の詳細
IPv6からIPv4への再試行は、他の種類のエラーではなく、接続タイムアウトでのみ発生します。
たとえば、上記の「よくある落とし穴」のシナリオでは、IPv6アドレスでリスニングしているWebサーバーがある場合、そのWebサーバーがACMEチャレンジに応答する準備ができていない場合、再試行は発生しません。この場合、IPv6アドレスへのアクセスで接続タイムアウトは発生せず、不正な応答が返されたため、再試行せずにチャレンジは失敗します。
CAソフトウェアをシンプルに保つために、「http-01」チャレンジを検証する際、最初のリクエストでのみIPv6からIPv4への再試行を実行します。リダイレクトを使用する場合、リダイレクトは再試行処理を受けません。
たとえば、ドメイン名に常にタイムアウトするAAAA
レコードと、HTTPからHTTPSにリダイレクトするWebサーバーを持つA
レコードがある場合、IPv6からIPv4へのフォールバックは正しく動作しません。ドメインへの最初のリクエストは適切にIPv4にフォールバックし、HTTPからHTTPSへのリダイレクトを受け取ります。後続のリクエストは再びIPv6アドレスを優先しますが、IPv4にフォールバックせずにタイムアウトします。この状況を解決するには、IPv6の誤った設定を修正するか、ACME HTTP-01チャレンジパスへのリクエストに対してHTTPからHTTPSへのリダイレクトを削除します。
ヘルプの取得
IPv6関連の問題の診断に関するヘルプが必要な場合は、当社のコミュニティフォーラムをご覧ください。