スキップしてコンテンツを表示

Route 53 パブリックホストゾーン内ののレコードの DNS 解決に関する問題をトラブルシューティングする方法を教えてください。

所要時間3分
0

Amazon Route 53 ホストゾーン内のドメインとレコードの DNS 解決に関する問題を解決したいと考えています。

簡単な説明

Route 53 ホストゾーンのドメインとレコードの DNS 解決は、次の原因で妨げられる可能性があります。

  • レジストラと Route 53 ネームサーバー間の不一致。
  • ルート 53 の DNS レコードが不適切である場合。
  • 頻繁なレコード変更。
  • サブドメインの委任が不適切である場合。
  • DNS 伝達の遅延
  • ファイアウォールまたはネットワークアクセスコントロールリスト (ネットワーク ACL) により DNS 応答がブロックされる場合。
  • ヘルスチェックがルーティングに影響している場合。

解決策

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI で発生したエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。

レジストラと Route 53 ネームサーバーが一致していない場合のトラブルシューティング

ドメインレジストラで構成したネームサーバーと Route 53 ホストゾーンが一致しない場合、ドメインは正しく解決されません。

ネームサーバーが一致していることを確認するには、次の手順を実行します。

  1. whois コマンドを実行し、レジストラレベルのネームサーバーを確認します。
    whois example-url | grep example-name-server
    注: example_url を URL に、example_name_server をネームサーバーに置き換えてください。
  2. Route 53 コンソールを使用してホストゾーンのネームサーバーを取得します。
  3. whois コマンドの出力をホストゾーンのネームサーバーと比較します。
  4. ネームサーバーが一致しない場合は、レジストラを更新し、ホストゾーンと一致させます。
    次の出力例が取得された場合は、レジストラに ns-2050.awsdns-66.orgns-2051.awsdns-67.co.uk を含めて更新する必要があります。
    Whois の出力:
    Name Server: ns-2048.awsdns-64.com  
    Name Server: s-2049.awsdns-65.net
    ホストゾーンのネームサーバー:
    ns-2048.awsdns-64.com  
    ns-2049.awsdns-65.net  
    ns-2050.awsdns-66.org  
    ns-2051.awsdns-67.co.uk

Route 53 DNS レコードが誤っている場合のトラブルシューティング

dig コマンドを実行すると、DNS レコードタイプに基づく DNS レコードが表示されます。

dig example_type example_url +short

注: example_type を DNS レコードタイプに、example_url を URL に置き換えてください。

次に、DNS レコードタイプに応じて次のトラブルシューティング手順を実行します。

A

出力例:

192.0.2.44

出力の IP アドレスがサーバーホストの IP アドレスと一致することを確認します。

TXT

出力例:

"v=spf1 include: _spf.example _ url ~all"

2 つの部分の間には空白スペースを入れます。TXT 値は二重引用符で囲まないでください。詳細については、「DKIM 構文で TXT レコードを作成した際の エラーを解決する方法を教えてください"CharacterStringTooLong (Value is too long) encountered with {Value}"」を参照してください。

MX

出力例:

10 mail.example_URL.com

Route 53 はレコード名の @ 記号をサポートしていません。レコード名に @ 記号が含まれている場合は、削除します。

CNAME

出力例:

www.example_url.com

レコードが正しい URL を指していることを確認します。

AAAA (IPv6)

出力例:

2001:0db8:85a3:0000:0000:8a2e:0370:7334

IPv6 アドレスがサーバーの構成と一致していることを確認します。

Route 53 がサポートする DNS レコードタイプの全リストについては、「サポートされている DNS レコードタイプ」を参照してください。

頻繁なレコード変更により、意図しない DNS キャッシュが行われる場合のトラブルシューティング

DNS 再帰リゾルバーは、ルーティングポリシーの保持期間 (TTL) 値に基づいて DNS レコードをキャッシュします。DNS キャッシュが行われるため、レコードを頻繁に変更する場合、変更はすぐには反映されません。

TTL 値を確認するには、dig コマンドを実行します。

`dig example_url +ttlunits`

注: example_url を URL に置き換えてください。

次の出力例では、example_url の TTL 値は 300 秒です。

example_url 300 IN A 192.0.2.44

DNS レコードを変更する前に、TTL 値を 60 秒以内に減らします。次に、dig コマンドを複数の場所で実行し、新しい TTL 値が反映されたことを確認します。または、複数の ISP から nslookup コマンドを実行することでも TTL 値を確認できます。

nslookup -type=A -debug www.example_url.com

TTL 値のベストプラクティスについては、「Amazon Route 53 DNS のベストプラクティス」の「DNS レコードの TTL 値を判断する」セクションを参照してください。

サブドメインの委任が不適切である場合のトラブルシューティング

サブドメインの委任において、名前解決の失敗を引き起こすエラーがないかを確認します。

注: 次の例では、sub.example.comexample.com のサブドメインです。

ドメインのネームサーバーレコードを特定するには、dig コマンドと trace コマンドを実行します。

dig +trace sub.example.com

次の出力例では、ns-123.awsdns-45.netns-124.awsdns-46.orgsub.example.com のネームサーバーです。

;; Received 512 bytes from a.root-servers.net  
...  
sub.example.com. 300 IN NS ns-123.awsdns-45.net.  
sub.example.com. 300 IN NS ns-124.awsdns-46.org.

サブドメインのネームサーバーレコードが次のゾーンの DNS ネームサーバーレコードと一致することを確認します。

  • 親ゾーン
  • Route 53 の委任ゾーン

サブドメインのネームサーバーレコードが DNS ネームサーバーレコードと一致しない場合は、DNS サービスを更新します。

詳細については、「Route 53 の新しいサブドメインで DNS 解決に問題がある場合のトラブルシューティング方法を教えてください」を参照してください。

DNS 伝達遅延のトラブルシューティング

ドメイン名のグローバルな伝達状況を確認するには、ウェブサイト whatsmydns.net で DNS Propagation Checker を使用します。レコード値がグローバルに、すべての場所で更新されていることを確認します。

レコード値に一貫性がない場合は、TTL 値が 60 秒以下であることを確認したうえで、DNS キャッシュをクリアします。DNS レコード伝達の遅延が解消されない場合は、レジストラまたは DNS プロバイダーにサポートを依頼してください。

ファイアウォールまたはネットワーク ACL により DNS 応答がブロックされる場合のトラブルシューティング

サーバーと仮想プライベートクラウド (VPN) のファイアウォールとネットワーク ACL は、トラフィックをポート 53 で許可していることを確認します。

ヘルスチェックがルーティングに影響している場合のトラブルシューティング

ドメインがヘルスチェックに失敗した場合、Route 53 はそのドメインの DNS レコードを DNS 応答から削除する可能性があります。

ドメインのヘルスチェックステータスを確認するには、次の AWS CLI コマンド get-health-check-status を実行します。

aws route53 get-health-check-status --health-check-id example-domain-ID

注: example-domain-ID をドメインの識別番号に置き換えてください。

ドメインの StatusFailure または Last failure reason である場合は、ヘルスチェックの非正常な箇所をトラブルシューティングします。

関連情報

親ドメインを移行せず、Amazon Route 53 を DNS サービスとして使用するサブドメインを作成する

AWS公式更新しました 3ヶ月前
コメントはありません

関連するコンテンツ