私は現在、ちょっとした便利なツールを作ろうとしています。私はネットワーク管理者ですが、上司から、ネットワークを監視し、特定のサイトといくつかのゲーム サーバーの IP をブロックするように言われました。ネットワーク上のすべてのトラフィックを、ゲートウェイに送信する前にトラフィックを監視できるサーバーにリダイレクトします。
このために、Linux で arpspoof を使用します。サイトとサーバーをブロックするためのソリューションを完成させました。これから作成するのは、これらの処理と制御を容易にする GUI です。 ProcessBuilder を使用して Java から arpspoof を実行しても機能せず、出力が得られませんか?
また、while ループにも入りません。これ以上 atm を書くことは思いつきませんが、もっと思いついたらこのスレッドを更新します。
私のコード:
new Thread() {
public void run() {
try {
System.out.println("running arpspoof...");
Process prb = new ProcessBuilder("gksudo", "arpspoof", "-i", "wlan0", Gateway).start();
InputStream is = prb.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line;
while ((line = br.readLine()) != null) {
System.out.println("Output: " + line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}.start();