ファイアウォールとして機能するJavaでプロジェクトを開発しています。ホスト ファイルへの読み取り/書き込み操作を使用して、特定の URL をブロックしました。
今、開いたウェブサイトの広告をブロック/フィルタリングしたいと思います。使ってみjpcap,java.net
たけどダメなの?
インターネット経由で渡されたパケットを読み取り、Java プログラミング言語を使用してフィルタリングするために使用するパッケージを教えてください。
ありがとうございました。
開いたウェブサイトの広告をブロック/フィルタリングしたい。
ウェブサイトをブロックするためのより簡単な解決策は、これらのサイトのホスト ファイルにダミー アドレスを入れることです。追加すると
127.0.0.1 www.ads.com
お使いの PC はその Web サイトにアクセスできなくなります。/etc/hosts
Unixでは、Windows ではホストを検索できます。C:\Windows\System32\drivers\etc\hosts
アドレス全体をブロックしたくない場合は、独自のプロキシ サーバーを実装して、ブラウザにこのプロキシ サーバーを使用させることができます。
ところで: 多くのブラウザーには、広告のブロックをサポートするプラグインがあります。まずはこちらを試してみてはいかがでしょうか。
jpcap はパケットをフィルタリングできません。
パケットのフィルタリングは、プラットフォーム固有です。
netfilter_queue
とiptables
ipfw
これらは、パケット レベルのフィルタリング用です。単一の URL が複数のパケットに分割される可能性があるため、これは URL のフィルタリングには適していません。ただし、実際にはうまく機能します。
また、私は Java バインディングを認識していないため、JNI を使用して独自のものを作成する必要があります。