pl.trammer.ludwik.geo
Class Traceroute

java.lang.Object
  extended by pl.trammer.ludwik.geo.Traceroute

public class Traceroute
extends Object

Klasa zawiera statyczne metody wywołujące polecenie traceroute (tracert pod Windowsem) i zwracające ich efekt.

Choć klasa wspiera zarówno Uniksowie traceroute jak i Windowsowe tracert to bez przeprowadzenia szerszych testów nie da się stwierdzić czy poprawnie wpsółpracuje ze wszystkimi wersjami i implementacjami tych poleceń. Program był z powodzeniem testowany pod Mac OS X 10.7 Lion, Ubuntu 10.04 Lucid Lynx (po doinstalowaniu pakietu "traceroute") i pod Windowsem 7.

Author:
Ludwik Trammer

Field Summary
static String EXEC_NAME
          Nazwa polecenia realizującego w systemie funkcjonalność traceroute.
static Pattern TRACE_LINE
          Wyrażenie regularne, które interpretuje pojedyńczą linię wyjścia polecenia traceroute (lub tracert jeśli klasa używana jest pod Windowsem) i "wyławia" nazwę hosta (grupa 1) i adres ip (grupa 2)
 
Constructor Summary
Traceroute()
           
 
Method Summary
static InetAddress[] getHosts(InetAddress endPoint)
          Zwraca listę obiektów InetAddress zawierających adres ip i nazwę hosta routerów realizujących połączenia z zadanym serwerem końcowym.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EXEC_NAME

public static final String EXEC_NAME
Nazwa polecenia realizującego w systemie funkcjonalność traceroute. Pod Windowsem ta wartość będzie ustawiona na "tracert". W innych systemach "traceroute".


TRACE_LINE

public static final Pattern TRACE_LINE
Wyrażenie regularne, które interpretuje pojedyńczą linię wyjścia polecenia traceroute (lub tracert jeśli klasa używana jest pod Windowsem) i "wyławia" nazwę hosta (grupa 1) i adres ip (grupa 2)

Constructor Detail

Traceroute

public Traceroute()
Method Detail

getHosts

public static InetAddress[] getHosts(InetAddress endPoint)
Zwraca listę obiektów InetAddress zawierających adres ip i nazwę hosta routerów realizujących połączenia z zadanym serwerem końcowym. Lista jest ułożona w kolejności hronologicznej.

Jeśli polecenie typu traceroute nie mogło zostać wykonane zwracana jest pusta lista.

Parameters:
endPoint - adres serwera końcowego
Returns:
lista routerów, które uczestniczą w połączeniu z tym serwerem