Windows 11 ファイアウォールで Ping リクエストを有効にする方法: 5 つのテクニック
ファイアウォールがpingをブロックしていて、ネットワーク接続のテストに苦労していませんか?Windows 11はデフォルトでICMPエコーリクエストを非表示にしています。言い換えれば、pingコマンドをブロックするということです。これはセキュリティ上は優れていますが、トラブルシューティングが少し面倒になります。そのため、ネットワークやインターネットに実際にアクセスできるかどうかを確認するためにpingリクエストを許可する必要がある場合は、Windowsファイアウォールの設定を少し調整する必要があります。
ICMPエコー要求のブロックを解除する方法を理解するのは、最初は特に様々な方法があるため、難しそうに思えるかもしれません。しかし、基本的な手順を理解すれば、実はとても簡単です。これらのオプションは、単純なアプリの権限変更、PowerShellやコマンドプロンプトでのコマンド実行、高度なセキュリティルールの調整、さらにはWindowsのプロ版をお使いの場合はグループポリシーの使用など、多岐にわたります。それぞれの方法は、あなたの慣れ具合や、どこまで深く掘り下げたいかによって使い分けることができます。
Windows 11のファイアウォールでPingを許可する方法
Windows セキュリティ設定を使用して Ping を許可する
手間をかけずにすぐに解決したいなら、これが最も簡単な方法です。ICMPエコー要求が依存している「ファイルとプリンターの共有」のブロックを解除したいだけなら、この方法が最適です。注:設定によっては、すぐには機能せず、再起動やファイアウォールの切り替えが必要になる場合があります。とはいえ、まずまずのスタートです。この方法が有効な理由は、基本的にWindowsに「はい、このトラフィックを許可して構いません」と伝えることになるからです。これは、ローカルネットワークデバイスやサーバーのテストが主な目的で、マシンが公開されていない場合に便利です。
- 検索バーに「Windows セキュリティ」と入力し、 Enter キーを押します。
- ファイアウォールとネットワーク保護をクリックします。
- [ファイアウォール経由のアプリの許可]を選択します。
- [設定の変更]をクリックし、リストから[ファイルとプリンターの共有]を見つけます。
- 必要に応じて「プライベート」と「パブリック」のボックスにチェックを入れ、 「OK」をクリックします。
これは基本的に、共有リソースへのpingリクエストをホワイトリスト化し、ネットワーク上の他のデバイスが到達可能かどうかを判断するのに役立ちます。簡単ですよね?ただし、パブリックネットワークや安全性の低いネットワークを使用している場合は、これを永久に開いたままにしないことをお勧めします。
コマンドプロンプトを使用してICMPエコーを有効にする
これは少し技術的な話になりますが、コマンドラインを好む方には便利です。設定GUIがうまく機能しない場合の代替手段としても使えます。これらのコマンドを実行すると、pingで使用されるプロトコルであるICMPv4とICMPv6のルールがWindowsファイアウォールに直接追加されます。この方法は様々な環境で確実に機能することを確認していますが、理由は説明できませんが、ルールを反映させるには、すぐに再起動したり、オン/オフを切り替えたりする必要がある場合もあります。
- Windows+を押してRと入力し
cmd、 を押すとCtrl + Shift + Enter管理者アクセスが可能になります。 - 管理者特権のコマンドプロンプトで次のように入力します。
netsh advfirewall firewall add rule name="ICMPv4 Allow Ping Requests" protocol=icmpv4:8, any dir=in action=allow - IPv6 でも同じことを行います。
netsh advfirewall firewall add rule name="ICMPv6 Allow Ping Requests" protocol=icmpv6:8, any dir=in action=allow
この方法は、特にコマンドラインに慣れている方であれば、非常に迅速かつ効果的です。これらのコマンドを実行すると、pingリクエストは問題なく通過するはずです。ただし、一部のマシンでは、再起動後やルールがまだ有効かどうかを確認するために、これらのコマンドを再度実行する必要があることに注意してください。
高度なセキュリティを備えた Windows Defender ファイアウォールを使用して Ping 要求を有効にする
より詳細なセキュリティルールを細かく設定したい場合は、この方法でICMPエコーリクエストを詳細オプションから個別に設定できます。一般ユーザーにとっては少々面倒かもしれませんが、他の方法で行き詰まっている場合は、この方法が最適です。基本的には、ICMPv4またはICMPv6のエコーリクエストを許可するカスタム受信ルールを作成することになります。
- Windows+を押して とR入力し
wf.msc、Enter キーを押します。 - セキュリティが強化された Windows Defender ファイアウォール ウィンドウが開きます。
- [受信の規則] > [新しい規則]をクリックします。
- 「カスタム」を選択し、「次へ」をクリックします。「すべてのプログラム」を選択します。
- プロトコルの種類をICMPv4またはICMPv6に設定します。「カスタマイズ…」をクリックします。
- 特定のICMPタイプを選択し、エコー要求にチェックを入れます。OKをクリックして確定します。
- 接続を許可し、すべてのプロファイルを選択し、名前を付けて終了します。
これはかなり徹底的なプロセスですが、詳細なセキュリティ設定が必要な場合、非常に具体的なルールを設定する最も「手動」的な方法です。場合によっては、厳重なセキュリティ設定でpingを動作させるには、この方法が必要になることもあります。
PowerShell スクリプトを使用して ICMP Ping を許可する
PowerShellファンの皆さん、これはまさにあなたのためのツールです。スクリプト作成がお好きな方、あるいはクリック操作よりもコマンド入力を重視する方なら、PowerShellで同様の操作が可能です。コマンドはコマンドプロンプトとほぼ同じですが、スクリプト化して保存し、繰り返し使用することができます。
- PowerShell を管理者として開きます (PowerShell を検索し、右クリックして、「管理者として実行」を選択します)。
- 次のように入力して実行します。
netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8, any dir=in action=allow - IPv6の場合:
netsh advfirewall firewall add rule name="ICMP Allow incoming V6 echo request" protocol=icmpv6:128, any dir=in action=allow
これにより、スクリプトを使ってpingを素早く有効にすることができます。複数のマシンで実行する場合や、プロセスを自動化する必要がある場合に便利です。ただし、PowerShellを管理者権限で実行しないと、これらのコマンドは実行されませんのでご注意ください。
Enterprise または Pro ユーザー向けのグループ ポリシー エディターの使用
Windows 11 ProまたはEnterpriseをご利用で、グループポリシーエディターにアクセスできる場合、これはネットワーク全体にpingルールを適用する最も詳細な方法です。通常の設定では必要ありませんが、多数のPCを管理している場合は知っておく価値があります。
- Windows+を押してR、 Enter を押します
gpedit.msc。 - [コンピューターの構成] → [管理用テンプレート] → [ネットワーク] → [ネットワーク接続] → [Windows ファイアウォール] → [ドメイン プロファイル] / [プライベート プロファイル] / [パブリック プロファイル]に移動します。
- ICMP関連の設定(「受信エコー要求を許可する」など)を探して、 「有効」に設定します。
この方法はルールをプロファイル全体に拡張するため、ネットワークプロファイル上のすべてのデバイスがpingリクエストを受け入れるようになります。信頼できる環境を管理している場合は妥当ですが、そうでない場合はリスクを伴う可能性があります。
まとめ
pingリクエストを許可することは、あらゆる設定において最も安全な方法ではありませんが、トラブルシューティングや、到達不能なデバイスを扱う場合の簡単な確認には必要な場合があります。設定を済ませておけば、ネットワーク接続のテストがはるかに簡単になり、推測する必要がなくなります。ただし、それぞれの方法には長所と短所があり、あるマシンでうまくいった方法が別のマシンでは調整が必要になる場合があることを覚えておいてください。賢く試してみてください。
まとめ
- Windows セキュリティを使用してファイルとプリンターの共有を許可します。これは最も簡単な簡単な修正方法です。
- ターミナル経由で制御するには、コマンド プロンプトまたは PowerShell で netsh コマンドを実行します。
- きめ細かな制御を行うには、高度なセキュリティを備えた Windows Defender ファイアウォールでカスタム ルールを設定します。
- ドメイン上で複数のマシンを管理する場合は、グループ ポリシーを調整します。
- パブリック ネットワークまたはセキュリティ保護されていないネットワーク上で ICMP 要求を開くときは、セキュリティに注意してください。
最後に
Windows 11でpingを動作させる方法の概要がこれでお分かりいただけたでしょうか。設定をいくつか切り替えるだけで済む場合もあれば、スクリプトを少し書いたり、ファイアウォールの詳細なルールを設定したりする必要がある場合もあります。いずれにせよ、これらの手順を踏めば、ネットワークのテストがはるかに簡単になります。誰かの時間の節約になれば幸いです!