IP überprüfen / pingen?

flasherMX

Mitglied
Hallo,

gibt es eine möglichkeit alle 15 minuten (threading geht glaube hier...) eine IP zu überprüfen, ob diese aktiv ist -sprich ob ein user diese IP besitzt?

mfg flasha
 
Klar geht das. :)

Alles was Du dazu brauchst ist ein Timer-Objekt, welches so eingestellt wird, dass die darin enthaltene Funktionalität alle 15 Minuten (Interval = 900.000 Millisekunden) ausführt. Sieht in etwa so aus:
Code:
private void Timer15Min_Tick(object sender, System.EventArgs e)
{
   // Hier muss der Code zum Überprüfen der IP-Adresse hin
}
 
Weiss jemand wie man testen kann ob eine IP vergeben ist?

Ich habe das bis jetzt mit einem try catch Block gemacht in dem ein TCPClient versucht zu einer IP zu verbinden, nur leider dauert das 30 Sek. bis der Schnallt das die IP garnicht vergeben ist...
 
Zuletzt bearbeitet:
Na ja, man versucht einfach einen Connect auf die IP-Adresse und prüft das Ergebnis. Kann eine Verbindung aufgebaut werden, so ist die IP-Adresse gültig, ansonsten ist sie ungültig. Das kann kann man in einem try-catch-Block recht bequem lösen.

Ich kann das hier leider nicht testen, weil ich gerade hinter einer sehr pingeligen Firewall sitze. Kannst ja mal testen obs klappt, aber als Anhaltspunkt sollte es reichen:
Code:
System.Net.Sockets.TcpClient tcp = new System.Net.Sockets.TcpClient();
tcp.Connect("100.101.102.103", 80);
:)
 
Hab ich schon probiert mit dem TCPClient, das dauert ewig... steht oben ja schon...
 
Zuletzt bearbeitet:
Hallo,

danke bis jetzt erstmal nur:
dieses tcp.connect gibt mir keinen wert zurück. Ich brauch aber ein true oder false damit ich weiß, ob nun eine verbindung augebaut wurde oder nicht... wie bekomm ich des hin?

mfg flasha
 
Steht doch schon oben: Packs innen try - catch Block rein, wenn er connecten kann gehts weiter im code, wenn nicht, dann wird das ausgeführt was im catch block steht...

Beispiel:
Code:
try
{
    System.Net.Sockets.TcpClient tcp = new System.Net.Sockets.TcpClient();
    tcp.Connect("100.101.102.103", 80);
     //.............
}
catch(Exception)
{
MessageBox.Show("Kann nicht verbinden...", "Fehler");
}
 
Zuletzt bearbeitet:
Hallo!

*buddel* *kram*

Ich weiss der Thread sit schon alt, aber ich kann das jetzt nicht so im Raum stehen lassen.
Code:
try {
	string sURL = "www.domain.com";
	IPHostEntry Host = Dns.GetHostByName( sURL );
	MessageBox.Show( string.Format( "{0} hat die IP: {1}", sURL, Convert.ToString( Host.AddressList[0] ) );
}
catch( SocketException e ) {
	MessageBox.Show( e.ToString() )
}
Das ist eine schnelle und einfache Variante, um zu überprüfen ob die Gegegenstelle vorhanden ist.

MfG, cosmo
 

Neue Beiträge

Zurück