# verbindung zu netzwerkserver testen



## fig0 (16. Aug 2006)

Hi,

ich möchte ein programm schreiben, das in einem gewissen intervall prüft ob ein Server im netzwerk online ist. Ich habe jetzt eine weile gesucht und bin auf das hier gestoßen:


```
import java.io.*;
import java.net.*;

public class ServerTest {

Socket s;
String server = "google.de";

  public void test() {
    try {
     s = new Socket(server,80);
     System.out.println("Der Server " + server + " ist online !");
    } catch ( UnknownHostException uhe ) {
       System.out.println("Der Server " + server + " ist down !");
      } 
      catch ( IOException ioe ) {
         System.err.println(ioe.getMessage()); 
       }
   }
}
```

das ist in etwa auch das was ich mir vorstelle (also nur um zu prüfen ob der server online ist, das mit dem intervall krieg ich schon hin). Mein problem ist jetzt, dass das eben leider nicht mit netzwerk ips funktioniert, den port habe ich mal auf 7 gestellt,  erhalte dann aber eine IOException "Connection refused: connect"

Wäre sehr danbkar wenn mir jemand einen tipp geben könnte.[/quote]


----------



## MeinerEiner_80 (16. Aug 2006)

Moin!
Die Exception wird geworfen, wenn der Server nicht erreichbar ist. Ergo, hast du wohl nicht die korrekte IP eingeben.
Mit der IP von google.de und Port 80 läuft es problemlos:



```
import java.io.*;
import java.net.*;

public void test() {
    try {
     InetSocketAddress addr = new InetSocketAddress("216.239.59.104", 80);
     Socket s = new Socket();
     s.connect(addr);
     System.out.println("Der Server  ist online !");
    } catch ( UnknownHostException uhe ) {
       System.out.println("Der Server  ist down !");
      } 
      catch ( IOException ioe ) {
         System.err.println(ioe.getMessage()); 
       }
   }
```


*grüssle*
MeinerEiner


----------



## fig0 (16. Aug 2006)

die ip stimmt schon, firewall ist auch keine aktiv, ich schätz es liegt schlicht daran, dass ja auf dem zielrechner nichts läuft und somit keine antwort zurückkommt...Im endeffekt möchte ich nur schauen ob die netzwerkverbindung aktiv ist, dazu will ich irgendeinen rechner erreichen, praktisch wie wenn ich mit ping server..auf eine antwort warte, das ist nicht wirklich vergleichbar aber vielleicht gibt es ja irgendeine möglichkeit.


----------



## njoerd (17. Aug 2006)

nicht verzagen google fragen:

www.torsten-horn.de/techdocs/java-net.htm#PingSimple


----------



## AlArenal (17. Aug 2006)

Welche zwei möglichen Aussagen hat wohl eine Exception, wenn man versucht eine (korrekte) IP auf Port 80 anzusprechen?

Kannst ja mal zufällig in den Gelben Seiten einen anrufen und fragen, ob man dir ein Wiener Schnitzel machen kann. Funzt auch nicht in allen Fällen, selbst wenn die angegebene Firma tatsächlich existiert..


----------

