2016-04-07 5 views
1

Ich versuche, Hop Count Filtering Algorithmus zu implementieren. Um die HCF-Tabelle zu aktualisieren, um IP-Spoofing zu verhindern, muss ich einen Zähler aktualisieren, wenn eine IP-Adresse TCP-Verbindungen im festgelegten Zustand in Java hat.Wie finde ich die Anzahl der TCP-Verbindungen, die durch eine IP-Adresse in Java hergestellt werden?

+0

Müssen die Verbindungen zu Ihrer Anwendung oder zu dem Gerät hergestellt werden, auf dem die App ausgeführt wird? – f1sh

+0

Die Maschine, auf der es läuft. Es ist für ein Intrusion Detection System. – GeekTreasure

Antwort

0

Mit Ausnahme der netstat -at | grep ESTA erhalten Sie alle TCP-Verbindungen in Ihrem Rechner eingerichtet. Um diesen Befehl auszuführen in Java können Sie Runtime.getRuntime().exec() verwenden wie folgt

public class Test { 
    public static void main(String args[]) { 
     String s; 
     Process p; 
     try { 
      p = Runtime.getRuntime().exec("netstat -at | grep ESTA"); 
      BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream())); 

      while ((s = br.readLine()) != null){ 

       // Update here counters if an IP have established a new TCP connection 
       System.out.println("line: " + s); 
      } 

      p.waitFor(); 
      p.destroy(); 
     } catch (Exception e) {} 
    } 
} 

Hoffe, es hilft.

Verwandte Themen