WindowsのBashでpingできない


14

実行しようとすると:

ping www.google.com

次のエラーが表示されます。

ping: icmp open socket: Permission denied

で実行しsudoても違いはありません。


1
Why does the ping command require bash to be started with admin privileges? This is a known issue that has to due with differences between the way the Linux and the Windows kernel handle the ICMP request that makes ping possible. We plan to address this in future releases. msdn.microsoft.com/en-us/commandline/wsl/…–
phuclv

回答:


23

更新:この問題は、Windows 10 Creators Update(2017年4月)以降に修正されました。Windows上のBashは、pingコマンドを実行するために管理者権限を必要としなくなりました。

「Windows TCP / IPスタックでは、セキュリティ対策のためにRAWソケットを開くには管理者権限が必要です」[ ソース ]。MSDNの投稿を参照してください。これは、などによって使用されるICMPなどの低レベルネットワークプロトコルにのみ適用されpingます。

管理者として「Bash on Windows」シェルを実行すると、pingコマンドが機能するようになります。ショートカットを右クリックしてオプションを選択するだけです:

Bashのスタートメニューのショートカットに「管理者として実行」を選択します

これは、これらの権限で開かれた単一セッションでのみ機能します。

他のコマンドは、インターネットに接続できない場合(例えばapt-getwget)あなたも見てする必要がある場合がありますLinux用のWindowsサブシステムで動作していないインターネットアクセス


これは、最近修正されました-いくつかのインサイダーはpingとするping6作業持っている管理者として実行する必要はありません構築する
Magnetic_dud

それはあなたがすでに管理者として実行せずにルートであることを面白いですが、それは動作しません
マイケル・

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.