Windowsホスト経由でIPアドレスをブロックする方法

Windowsホスト経由でIPアドレスをブロックする方法

Windows ホスト経由で特定の IP アドレスへのアクセスをブロックしたい。

これは IP アドレスです41.190.8.17。そして、これが私のホスト ファイルの内容です。

# localhost name resolution is handle within DNS itself.

127.0.0.1 41.190.8.17

ブラウザで と入力すると41.190.8.17、サイトに直接移動します。

なぜこれを無視しているのか誰か教えてもらえますか?

答え1

この方法では動作しません。ホスト ファイルは DNS 経由の名前解決にのみ使用されるためです。すでに IP アドレスであるため、Windows (またはアプリケーション) は DNS ルックアップを実行する必要はありません。

Windowsファイアウォールを使用してIPアドレスへのアクセスをブロックする必要があると思います。これ役立つでしょうが、使用している Windows のバージョンによって異なります。

答え2

ホスト ファイル経由で IP アドレスをブロックすることはできません。ドメイン解決のみ可能です。IP をローカルホストに転送する場合はプロキシ ルールを作成する必要がありますが、IP アドレス トラフィックのみをブロックする場合は、これを使用することをお勧めします。

これをblock.batとして保存します

set ip=%1
netsh advfirewall firewall add rule name="BLOCK IP ADDRESS - %ip%" dir=in action=block remoteip=%ip%
netsh advfirewall firewall add rule name="BLOCK IP ADDRESS - %ip%" dir=out action=block remoteip=%ip%

次に、管理コマンド ラインから、 block.bat 192.168.0.1 ブロックする IP アドレスを実行します。これにより、127.0.0.1 にリダイレクトされず、ブロックされるだけです。

関連情報