Route 53 でホストされているアプリケーションやウェブサイトに到達できないのはなぜですか?

最終更新日: 2021 年 4 月 20 日

Amazon Route 53 でアプリケーションまたはウェブサイトを実行しています。しかし、自分のアプリケーションやウェブサイトにアクセスできません。この問題をトラブルシューティングするにはどうすればよいですか?

解決方法

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、AWS CLI の最新バージョンを使用していることを確認してください

ドメインステータスの問題を確認する

1.    次のコマンドを使用して、ドメインステータスを確認します。

whois domain_name |grep 'status'

ドメインステータス (Extensible Provisioning Protocol コード) が「非アクティブ」、「ServerHold」、「ClientHold」のいずれかの場合、ドメインは解決されません。

2.    「非アクティブ」、「ServerHold」、「ClientHold」などの異常なドメインステータスコードが表示される場合は、レジストラにお問い合わせください。

次のコマンドを使用して、ドメインレジストラを判定します。

whois domain_name |grep 'Registrar'

分野別または国別トップレベルドメイン (TLD) について、適宜の Whois ユーティリティ (ドメイン登録ルックアップツール) に照会します。

ネームサーバーの問題を確認する

1.    権威ネームサーバーがレジストラで正しく設定されていることを確認します。権威ネームサーバーを検索するには、パブリックホストゾーンのネームサーバー (NS) リソースレコードセットの authoritative_nameserver 値を確認します。

2.    Route 53 を DNS サービスプロバイダーとして使用している場合は、4 つのネームサーバーをそれぞれ正しく設定していることを確認してください。

次のコマンドを使用して、ネームサーバー設定を確認します。

whois domain_name |grep 'Name Server'

例えば、whois amazon.com |grep 'Name Server' の出力は次のようになります。

Name Server: NS1.P31.DYNECT.NET
Name Server: NS2.P31.DYNECT.NET
Name Server: NS3.P31.DYNECT.NET
Name Server: NS4.P31.DYNECT.NET
Name Server: PDNS1.ULTRADNS.NET
Name Server: PDNS6.ULTRADNS.CO.UK

レコードセットの問題を確認する

DNS サービスプロバイダーを使用してホストゾーンに必要なエイリアス (A) レコードが作成されているかどうかを確認するには、次のコマンドを使用します。
dig Domain_name record_type

例えば、$dig amazon.com A の出力は次のようになります。

; <<>> DiG 9.10.6 <<>> amazon.com +question
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29804
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;amazon.com.            IN    A

;; ANSWER SECTION:
amazon.com.        44    IN    A    54.239.28.85
amazon.com.        44    IN    A    205.251.242.103
amazon.com.        44    IN    A    176.32.103.205

;; Query time: 4 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Fri Mar 19 20:28:51 IST 2021
;; MSG SIZE  rcvd: 87

注: レコードタイプは対応するリソースレコードセットの [Type] (タイプ) 列に表示されています。詳細については、サポートされている DNS レコードタイプをご参照ください。

ソースの問題を確認する

ローカルブラウザまたはモバイルデバイスの場合:

  • ブラウザのキャッシュをクリアし、ドメインへのアクセスを試みます。
  • 正しいドメインをリクエストしているかどうかを確認します。モバイルデバイスのブラウザは、ドメインをリクエストするときに「www」を追加することがあります。

VPC .2 リゾルバーを使用して Amazon Virtual Private Cloud (Amazon VPC) または AWS リソースに接続しているオンプレミスのマシンの場合:

「example.com」や「accounting.example.com」など、重複する名前空間を持つプライベートホストゾーンとパブリックホストゾーンがある場合、リゾルバーは最も良く一致するルートにトラフィックをルーティングします。一致するプライベートホストゾーンがあるが、リクエスト内のドメイン名とタイプに一致するレコードがない場合、リゾルバーはリクエストをパブリック DNS リゾルバーに転送しません。代わりに、クライアントに NXDOMAIN (存在しないドメイン) エラーを返します。重複する名前空間を持つプライベートホストゾーンを誤って作成した場合、そのプライベートホストゾーンは削除できます。

レコードキャッシュの問題を確認する

1.    次のコマンドを使用して、DNS リゾルバーから返されたレコード値が、権威ネームサーバーから返された値と一致しているかどうかを確認します。ドメイン解決の結果、想定された IP アドレスが得られない場合は、DNS リゾルバーが値をキャッシュしている可能性があります。ドメイン解決の結果、想定されたものと異なる IP アドレスが得られる場合は、ブラウザのキャッシュをクリアします。

dig domain_name record_type @authorative_name_server

例えば、$dig amazon.com @NS1.P31.DYNECT.NET の出力は次のようになります。

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.64.amzn1 <<>> amazon.com @NS1.P31.DYNECT.NET
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63711
;; flags: qr aa rd; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;amazon.com.            IN    A

;; ANSWER SECTION:
amazon.com.        60    IN    A    205.251.242.103
amazon.com.        60    IN    A    54.239.28.85
amazon.com.        60    IN    A    176.32.103.205

;; Query time: 2 msec
;; SERVER: 208.78.70.31#53(208.78.70.31) 
;; WHEN: Fri Mar 19 15:08:52 2021
;; MSG SIZE  rcvd: 76

2.    パブリックリゾルバーで同じ結果が表示されるかどうかを確認するには、次のコマンドを使用します。パブリックリゾルバーが想定される応答を返している場合、問題はローカルマシン上の DNS リゾルバーにある可能性が高いと考えられます。

dig domain @public_resolver_Ip

例えば、$dig amazon.com @8.8.8.8 の出力は次のようになります。

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.64.amzn1 <<>> amazon.com @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26860
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;amazon.com.            IN    A

;; ANSWER SECTION:
amazon.com.        15    IN    A    205.251.242.103
amazon.com.        15    IN    A    54.239.28.85
amazon.com.        15    IN    A    176.32.103.205

;; Query time: 1 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Mar 19 15:09:41 2021
;; MSG SIZE  rcvd: 76

DNSSEC の問題を確認する

ドメインの DNSSEC が正しく設定されていることを確認します。DNSSEC 分析ツールまたは適宜のユーティリティを使用して、ドメインに DNSSEC の問題があるかどうかを確認します。

DNSSEC を渡し、想定される結果が得られるかどうかを確認します。

dig domain_name +cd

例えば、$ dig amazon.com +cd の出力は次のようになります。

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.64.amzn1 <<>> amazon.com +cd
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55636
;; flags: qr rd ra cd; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;amazon.com.            IN    A

;; ANSWER SECTION:
amazon.com.        29    IN    A    205.251.242.103
amazon.com.        29    IN    A    176.32.103.205
amazon.com.        29    IN    A    54.239.28.85

;; Query time: 2 msec
;; SERVER: 1.1.1.1#53(1.1.1.1)
;; WHEN: Fri Mar 19 15:10:13 2021
;; MSG SIZE  rcvd: 76

ウェブサーバーの問題を確認する

curl コマンドの出力のドメインについて想定された IP アドレスが表示される場合は、想定された HTTP レスポンスをサーバーから取得しているかどうかを確認します。

  • 1XX (情報)
  • 2XX (成功)
  • 3XX (リダイレクト)
  • 4XX (クライアントエラー)
  • 5XX (サーバーエラー)

DNS 解決が想定どおりに動作しているがサーバーが応答しない場合は、ウェブサイトまたはアプリケーションがホストされているウェブサーバーに問題があります。

コマンド:

curl -Iv http://domain_name:Port/Path

例えば、$ curl -Iv http://amazon.com:80 の出力は次のようになります。

* Rebuilt URL to: http://amazon.com:80/
*   Trying 176.32.103.205...   <--- Indicates no issues with the DNS resolution as we are getting expected IP address for the domain amazon.com.
* TCP_NODELAY set
* Connected to amazon.com (176.32.103.205) port 80 (#0)
> HEAD / HTTP/1.1
> Host: amazon.com
> User-Agent: curl/7.61.1
> Accept: */*
> 
< HTTP/1.1 301 Moved Permanently
HTTP/1.1 301 Moved Permanently
< Server: Server
Server: Server
< Date: Fri, 19 Mar 2021 15:11:18 GMT
Date: Fri, 19 Mar 2021 15:11:18 GMT
< Content-Type: text/html
Content-Type: text/html
< Content-Length: 179
Content-Length: 179
< Connection: keep-alive
Connection: keep-alive
< Location: https://amazon.com/
Location: https://amazon.com/

< 
* Connection #0 to host amazon.com left intact

注: [Port] (ポート) の値は、ウェブサイトまたはアプリケーションがリッスンするように設定されているウェブサーバーポートです。


この記事はお役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?