すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:ECSインスタンスのパブリックIPアドレスをpingできない場合はどうすればよいですか。

最終更新日:Dec 12, 2024

さまざまな理由で、Elastic Compute Service (ECS) インスタンスへのpingに失敗する可能性があります。 このトピックでは、問題のトラブルシューティング方法について説明します。

問題の説明

オンプレミスのクライアントからECSインスタンスのパブリックIPアドレスをpingすることはできません。 例:

  • 次の図に示すように、オンプレミスのLinuxクライアントを使用してECSインスタンスのパブリックIPアドレスにpingを送信すると、応答は返されません。

    2023-05-28_16-53-11..png

  • 次の図に示すように、オンプレミスのWindowsクライアントを使用してECSインスタンスのパブリックIPアドレスにpingを送信すると、リクエストのタイムアウトエラーが返されます。

    2023-05-28_16-52-16..png

発生原因

ネットワーク接続が良好で、他のWebサイトにアクセスまたはpingを実行できる場合、次の表に示す原因により、ECSインスタンスのパブリックIPアドレスのpingに失敗する可能性があります。

原因

解決策

ECSインスタンスが実行中状態ではありません。

ECSインスタンスのステータスを確認します。

ECSインスタンスのセキュリティグループには、クライアントからのアクセスを許可するルールは含まれていません。

ECSインスタンスのセキュリティグループルールを確認します

ECSインスタンスのファイアウォール設定では、クライアントからのアクセスが許可されていません。

ECSインスタンスのファイアウォール設定を確認します

ECSインスタンスのCPU使用率または帯域幅使用率が高い。

ECSインスタンスのCPU使用率または帯域幅使用率を確認します

ECSインスタンスに対してブラックホールフィルタリングがトリガーされます。

ECSインスタンスに対してブラックホールフィルタリングがトリガーされているかどうかを確認します

ECSインスタンスが侵入しました。

インスタンスのセキュリティアラートがsecurity Centerで生成されているかどうかを確認します

ECSインスタンスは、中国 (香港) リージョンまたは中国以外のリージョンにデプロイされています。

ECSインスタンスが中国 (香港) リージョンにデプロイされているか、中国以外のリージョンにデプロイされているかを確認します

クライアントからECSインスタンスに到達できません。

ECSインスタンスがクライアントのみから到達できないかどうかを確認します

ドメイン名がInternet Content Provider (ICP) ファイルでないか、解決できません。

ドメイン名がICPファイルおよびドメイン名の解決設定であるかどうかを確認します

ECSインスタンスのステータスの確認

インスタンスが [実行中] 状態の場合にのみ、外部サービスを提供できます。 次の操作を実行して、ECSインスタンスのステータスを確認します。

  1. ECS コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[インスタンスとイメージ] > [インスタンス] を選択します。

  3. 上部のナビゲーションバーの左上隅で、インスタンスが存在するリージョンを選択します。

  4. [インスタンス] ページでインスタンスを見つけ、インスタンスのステータスを確認します。

ECSインスタンスのセキュリティグループルールの確認

デフォルトでは、ECSインスタンスのセキュリティグループには、インスタンスへのインターネット制御メッセージプロトコル (ICMP) トラフィックを許可するルールが含まれています。 ルールが削除された場合、インスタンスはpingできません。 次の操作を実行して、ECSインスタンスのセキュリティグループルールを確認します。

  1. ECSコンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[インスタンスとイメージ] > [インスタンス] を選択します。

  3. 上部のナビゲーションバーで、リソースが属するリージョンとリソースグループを選択します。 地域

  4. [インスタンス] ページでインスタンスを見つけ、インスタンスIDをクリックします。

  5. [インスタンスの詳細] ページで、セキュリティグループ タブをクリックします。

  6. セキュリティグループリスト タブでセキュリティグループを見つけ、セキュリティグループIDをクリックします。

  7. [セキュリティグループルール] ページで、ICMPトラフィックを許可するインバウンドルールが存在するかどうかを確認します。

    ICMP协议..png

    • ICMPトラフィックを許可するインバウンドルールが存在しない場合は、そのようなルールを追加します。 詳細については、「セキュリティグループルールの追加」をご参照ください。

      許可ポリシー[許可] に、プロトコルタイプすべての ICMP (IPv4) に、ポート範囲-1/1に設定します。 デフォルトの 優先度 値を使用し、権限付与オブジェクト フィールドで特定のIPアドレスを指定します。

    • ICMPトラフィックを許可するルールが存在する場合は、このトピックの [ECSインスタンスのファイアウォール設定の確認] セクションで説明されている操作に進みます。

ECSインスタンスのファイアウォール設定の確認

インスタンスのオペレーティングシステムに基づいて、ECSインスタンスのファイアウォール設定を確認します。

Linux ECSインスタンスのカーネルパラメーターとファイアウォール設定を確認する

Linux ECSインスタンスにpingを実行するには、icmp_echo_ignore_allカーネルパラメーターが0に設定され、ICMPトラフィックを許可するファイアウォール設定が必要です。

Linux ECSインスタンスのカーネルパラメーターの確認

  1. VNC (Virtual Network Computing) を使用してECSインスタンスに接続します。

    詳細については、「VNCを使用したインスタンスへの接続」をご参照ください。

  2. 次のコマンドを実行して、icmp_echo_ignore_allカーネルパラメーターの値を確認します。

    cat /proc/sys/net/ipv4/icmp_echo_ignore_all
    • 値0が返された場合、インスタンスですべてのICMPトラフィックが許可されます。 このトピックの [Linux ECSインスタンスのファイアウォール設定の確認] セクションで説明されている操作に進みます。

    • 値1が返された場合、インスタンスではすべてのICMPトラフィックが拒否されます。 ステップ3に進む。

  3. 次のいずれかのコマンドを実行してicmp_echo_ignore_allを0に設定し、インスタンスのすべてのICMPトラフィックを許可します。

    1. 次のコマンドを実行して、インスタンス上のすべてのICMPトラフィックを一時的に許可します。

      echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all
    2. 次のコマンドを実行して、インスタンス上のすべてのICMPトラフィックを永久に許可します。

      echo net.ipv4.icmp_echo_ignore_all=0 >> /etc/sysctl.conf
      sysctl -p

Linux ECSインスタンスのファイアウォール設定の確認

  1. VNCを使用してECSインスタンスに接続します。

    詳細については、「VNCを使用したインスタンスへの接続」をご参照ください。

  2. 次のコマンドを実行して、インスタンスのファイアウォール設定を確認します。

    iptables -L
    • 次のコマンド出力が返されると、インスタンスでICMPトラフィックが許可されます。 このトピックの「ECSインスタンスのCPU使用率または帯域幅使用率の確認」セクションで説明されている操作に進みます。

      Chain INPUT (policy ACCEPT)
      target     prot opt source               destination         
      ACCEPT     icmp --  anywhere             anywhere             icmp echo-request        
      Chain OUTPUT (policy ACCEPT)
      target     prot opt source               destination  
      ACCEPT     icmp --  anywhere             anywhere             icmp echo-reque
    • インスタンスでICMPトラフィックが拒否されている場合は、次のコマンドを実行してICMPトラフィックを許可します。

      #Chain INPUT
      iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
      #Chain OUTPUT
      iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT

Windows ECSインスタンスのファイアウォール設定を確認する

この例では、Windows Server 2012を実行するECSインスタンスが使用されます。 他のバージョンのWindows Serverを実行するインスタンスの操作も同様です。

  1. VNCを使用してECSインスタンスに接続します。

    詳細については、「VNCを使用したインスタンスへの接続」をご参照ください。

  2. アイコンをクリックして服务器管理..pngサーバーマネージャーを開きます。

  3. 右上隅で、[ツール] > [セキュリティが強化されたWindows Defenderファイアウォール] を選択します。

    2023-05-28_20-21-16..png

  4. [セキュリティが強化されたWindows Defenderファイアウォール] ページで、[インバウンドルール] および [アウトバウンドルール] セクションでICMPトラフィックが拒否されているかどうかを確認します。

ECSインスタンスのCPU使用率または帯域幅使用率の確認

インスタンスの外部リソース使用状況を確認します。 たとえば、インスタンスのパブリック帯域幅使用率が100% に達しているかどうかを確認します。

  • インスタンスが標準モードで実行されるバースト可能なインスタンスである場合、インスタンスのCPU使用率が100% に達すると、インスタンスにpingを送信できないか、pingプロセス中にパケットが失われる可能性があります。 詳細については、「概要」をご参照ください。

  • インスタンスのEIPまたはパブリックIPアドレスリソースが占有されている場合、インスタンスへのping要求はスロットリングのためにドロップされる可能性があります。 その結果、インスタンスにpingを実行することはできません。

ECSインスタンスのブラックホールフィルタリングがトリガーされているかどうかの確認

インスタンスのブラックホールフィルタリング通知を受け取ったかどうかを確認します。 ブラックホールフィルタリング中、インスタンスを接続またはpingすることはできません。

詳細については、「Alibaba CloudのBlackholeフィルタリングポリシー」をご参照ください。

インスタンスのsecurity Centerでセキュリティアラートが生成されているかどうかを確認する

インスタンスのセキュリティアラートがsecurity Centerで生成されているかどうかを確認します。 侵入はpingの失敗を引き起こす可能性もあります。 詳しくは、「Security Center の概要」をご参照ください。

ECSインスタンスが中国 (香港) リージョンにデプロイされているか、中国以外のリージョンにデプロイされているかを確認します

中国本土にデプロイされているECSインスタンスを使用して、中国 (香港) リージョンまたは中国以外のリージョンにデプロイされているECSインスタンスにアクセスする場合、リンクの品質はインターネットサービスプロバイダー (ISP) 回線の影響を受ける可能性があります。 後でもう一度お試しいただくことを推奨します。

ECSインスタンスがクライアントのみから到達できないかどうかを確認する

クライアントからECSインスタンスにpingできないが、他のクライアントからインスタンスにpingできる場合は、インスタンスとクライアント間の接続をテストすることを推奨します。 詳細については、「pingコマンドの実行後にパケット損失または接続障害が発生したときのネットワークパスのテスト」をご参照ください。

ドメイン名がICPファイルおよびドメイン名の解決設定であるかどうかを確認します

ECSインスタンスのパブリックIPアドレスをpingできますが、ドメイン名をpingできない場合、ドメイン名にICP登録がないか、解決できない可能性があります。

中国本土にデプロイされているサーバーのIPアドレスに解決されるドメイン名は、ドメイン名にアクセスする前に、産業情報技術省 (MIIT) にICPを提出する必要があります。 Webサイトのドメイン名にICP登録がない場合、Webサイトは外部サービスを提供できません。 Alibaba Cloudは、WebサイトがICP登録なしで外部サービスを提供していることを検出した場合、Webサイトをブロックします。

参考資料