接続できない原因を切り分ける(ドメイン・IP・ポート)¶
該当する症状¶
ドメイン名でVPSにアクセスできない
以前は接続できていたのに、急に接続できなくなった
どこに原因があるのか(DNSの設定ミスか、VPS自体への到達性か、特定のサービスの問題か)を切り分けたい
対応方法¶
Step1. ドメイン名が正しいIPアドレスを指しているか確認する¶
ドメイン名でアクセスしている場合、まずドメインが現在のVPSのIPアドレスを正しく指しているかを確認します。クライアントPC(お手元のPC)で以下のコマンドを実行してください。
> nslookup example.com
出力される Address の値が、コントロールパネルに表示されているご利用VPSのIPアドレスと一致しているかを確認してください。
Address: XXX.XXX.XXX.XXX
Note
Aレコードの設定変更は、VPSのコントロールパネルではなく、そのドメインを管理しているドメイン登録・DNS管理サービス側 (お名前.comやさくらのドメイン等)で行います。ご利用中のドメインをどのサービスで管理しているかご不明な場合は、 契約時の登録情報や、ドメインの登録事業者情報(Whois)からご確認ください。
Aレコードを変更したにもかかわらず反映されない場合、以下もあわせてご確認ください。
複数の外部DNSリゾルバで確認する:
nslookupだけではお手元の環境のDNSキャッシュを参照している場合があります。 以下のように外部のパブリックDNS(例: Google Public DNS)を明示的に指定して確認すると、実際にインターネット上へ 反映されているかをより正確に確認できます。外部リゾルバを指定して確認する場合¶> dig example.com @8.8.8.8
ローカルDNSキャッシュ・ブラウザのキャッシュ: お手元のPCやブラウザが、変更前の古いIPアドレスを一時的に キャッシュしている場合があります。別の端末やネットワーク(スマートフォンのモバイル回線等)から確認する、 ブラウザのキャッシュを削除して再度確認する、といった切り分けも有効です。
TTLの経過: 設定変更前のTTL値の時間が経過するまでは、古い情報がキャッシュされ続けることがあります。
一致する場合、DNS側の設定に問題はないと考えられます。Step2へ進んでください。
Note
ドメインを使わずIPアドレスへ直接アクセスしても接続できない場合は、DNSの設定に関わらずStep2から確認してください。
Step2. VPS自体への到達性を確認する¶
VPSの正しいIPアドレスに対して、以下のコマンドで到達性を確認します。
> ping XXX.XXX.XXX.XXX
応答がない場合、VPS自体への到達性に問題がある可能性があります。VPSの電源状態やパケットフィルターの設定など、詳しい確認方法は VPSへのアクセスが切れてしまった をご参照ください。
Note
セキュリティ上の理由でICMP(ping)への応答を遮断している環境もあります。pingの応答がないことが、必ずしも通信経路すべてに問題があることを意味するわけではありません。次のStepで、実際に利用したいポートへの到達性もあわせてご確認ください。
応答がある場合、VPSへのネットワーク到達性に問題はないと考えられます。Step3へ進んでください。
Step3. 特定のポート・サービスへの到達性を確認する¶
VPS自体には到達できているものの、Webサーバーやメールサーバーなど特定のサービスに接続できない場合、そのサービスが利用しているポートへの到達性を確認します。
クライアントPCでWindowsをご利用の場合、PowerShellから以下のコマンドで確認できます。
> Test-NetConnection XXX.XXX.XXX.XXX -Port 80
TcpTestSucceeded の項目が True になっていれば、対象ポートへの到達性に問題はありません。False の場合、パケットフィルターの設定やVPS内部のサービス起動状況など、詳しい調査方法は 特定のポート(サービス)への通信ができない場合 をご参照ください。
SSH(22番ポート)で接続できない場合は、個別の対応方法を SSHでアクセス出来ない場合 にまとめていますので、あわせてご確認ください。