rocky112
Goto Top

Erreichbare Netzwerkcomputer auf Desktop anzeigen

Hallo Leute,

ich habe hier ein Netzwerk mit einem "Server", der gleichzeitig als Desktopstation genutzt wird und 5 Clients, welche entweder per LAN oder WLAN an das Netzwerk angeschlossen sind.
Jeder Rechner hat eine Fest zugewiesene IP im Netzwerk.

Um jetzt die Arbeit zu erleichtern hätte ich gerne auf dem "Server" eine Übersicht (z.B. rote und grüne Punkte) welche IPs (192.168.178.11 + 192.168.178.12 + 192.168.178.13 + 192.168.178.14 + 192.168.178.15) im Netzwerk erreichbar sind.

Ich hatte überlegt es mit einer Homepage zu machen, die auf dem Server liegt und sich alle 15 Min aktualisiert und halt immer die IPs irgendwie anpingt, ich habe nur noch keine genaue Idee, wie ich es verwirklichen soll.

Hat jemand eine Lösung? Gerne auch eine andere als mit der Homepage!

Vielen Dank!

MfG Rocky

Content-Key: 129716

Url: https://administrator.de/contentid/129716

Printed on: July 20, 2024 at 22:07 o'clock

Member: dieseyer
dieseyer Nov 18, 2009 at 20:06:52 (UTC)
Goto Top
Hab' ich schon immer mal gebraucht . . .und jetzt gemacht:

http://dieseyer.de/scr/pclistetesten.hta

Im gleichen Verzeichnis, in dem das pclistetesten.hta liegt, wird eine pclistetesten.ini gesucht, mit je einer IP-Adr. je Zeile.

</html>
<head>

<!--

'*** v9.B *** www.dieseyer.de ******************************  
'  
' Datei:  pclistetesten.hta  
' Autor:  dieseyer@gmx.de  
' Auf:    www.dieseyer.de  
'  
'***********************************************************  

	SHOWINTASKBAR="no"  
	WINDOWSTATE="maximize"  
	BORDER="none"  
	INNERBORDER="no"  
	SCROLL="No"  
	NAVIGABLE="no"  
	ICON="dieseyer.ico"  

-->
  <HTA:APPLICATION ID="oHTA"  
	APPLICATIONNAME="PC Liste testen"  
	SINGLEINSTANCE="yes"  
	MAXIMIZEBUTTON="no"  
  >

  <title>PC Liste testen</title>

<style type="text/css">  

html, body {	background-color: #116;	color: #ec0;	font-weight: normal;	font-size: 9pt; font-family: verdana, arial, sans-serif }

</style>

</head>


<script language="VBscript">  

  Option Explicit ' Siehe http://dieseyer.de/dse-wsh-lernen.html#OptionExpl  
  
  Dim arrTst, arrZeilen(), Titel, HtaSelbst, HtaDatum
  Dim fso		: Set fso		= CreateObject("Scripting.FileSystemObject")  
  Dim AktVerz		: AktVerz		= fso.GetParentFolderName( HtaSelbst )	' : MsgBox "AktVerz: " & AktVerz, , "046 :: "  

'***********************************************************  
Function BeimLaden() ' ruft einige Routinen auf  
'***********************************************************  
  On Error Resume Next
	window.moveto 0, 0
  On Error Goto 0
  Dim fso		: Set fso		= CreateObject("Scripting.FileSystemObject")  
  Dim Tst

  Titel		= oHTA.APPLICATIONNAME

  HtaSelbst	= oHTA.CommandLine


' Auf Vorhandensein der Datei mit IP-Adr. in Array einlesen  
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  Tst = AktVerz & "pclistetesten.ini"  
  If not fso.FileExists( Tst ) Then
	MsgBox "Datei mit IP-Adr. fehlt:" & vbCRLF & vbCRLF & Tst, vbCritical, "066 :: " & Titel  
  Exit Function
  End If
  
  
' Datei mit IP-Adr. in Array einlesen  
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  arrTst = DateiInhalt( Tst )

  Tst = "075 :: UBound( arrTst ) = " & UBound( arrTst )  
' MsgBox Tst, , "076 :: " ' Anzahl der Zeilen anzeigen  


  ReDim Preserve arrZeilen( UBound( arrTst ) )
  Tst = "080 :: UBound( arrZeilen ) = " & UBound( arrZeilen )  
' MsgBox Tst, , "081 :: " ' Anzahl der Zeilen anzeigen  


' ArrayZeigen( arrTst )  
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  


' Array mit IP-Adr. schnell sortieren - ein 'Quicky'  
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  QuickSort arrTst, LBound( arrTst ), UBound( arrTst )
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  


' ArrayZeigen( arrTst )  
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  


  call pclistetesten( 0 )

  window.setInterval "ErgebnZeigen()", 333  

End Function ' BeimLaden()  

'***********************************************************  
Sub ErgebnZeigen()
'***********************************************************  
  Dim t, i

	t = t & "<table border=""1"" width=""100%"">"  
	t = t & "  <colgroup>"  
	t = t & "    <col width=""300*"">"  
	t = t & "    <col >"  
	t = t & "  </colgroup>"  
  For i = LBound( arrTst ) to UBound( arrTst )
	t = t & "  <tr>"  
	t = t & "    <td>" & arrZeilen( i ) & "</td>"  
	t = t & "    <td>" & arrTst( i ) & "</td>"  
	t = t & "  </tr>"  
  Next
	t = t & "</table>"  
	t = t & "<br>"  
	t = t & "<center>"  
	t = t & "  " & now() & " - " & Timer()  
	t = t & "  <br>"  
	t = t & "  <br>"  
	t = t & "  Neu starten mit [F5]"  
	t = t & "  <br>"  
	t = t & "  <br>"  
	t = t & "</center>"  

  T = T &	"<center style="" font-size:7Pt; "">"  
  T = T &	"<a href=""http://dieseyer.de/scr/pclistetesten.hta"" ><b>pclistetesten.hta</b></a>"  
  T = T &	"<a href=""http://dieseyer.de/dse-impressum.html"" >&#160;&#8226;&#160;&copy;&#160;2009&#160;by&#160;dieseyer&#160;&#8226;&#160;all&#160;rights&#160;reserved&#160;&#8226;&#160;</a>"  
  T = T &	"<a href=""http://dieseyer.de"" ><b><b>www.dieseyer.de</b></b></a>"  
  T = T &	"</center>"  

  On Error Resume Next
	document.all.Anzeige.innerHTML = t
  On Error Goto 0
End Sub ' ErgebnZeigen()  

'***********************************************************  
Sub pclistetesten( Nr )
'***********************************************************  
' MsgBox "Nr.: '" & Nr & "'" & vbCRLF & arrTst( Nr )  

  
  If WMIpingOK( arrTst( Nr ) ) Then
	arrZeilen( Nr ) = "<span style=""color:green"">OK " & Time() & "</span>"  
  Else
	arrZeilen( Nr ) = "<span style=""color:red""><strike>OK</strike> " & Time() & "</span>"  
  End If
  Nr = Nr + 1
  If Nr > UBound( arrTst ) Then Nr = LBound( arrTst )

  window.setTimeout "pclistetesten('" & Nr & "')", 1 * 1000  

End Sub ' pclistetesten( Nr )  

'*** v9.3 *** www.dieseyer.de ******************************  
Function WMIpingOK( PCName )
'***********************************************************  
' Aufruf z.B.: If not WMIpingOK( ZielPC ) Then MsgBox ZielPC & " ist nicht erreichbar." : WScript.Quit  
  Dim Tst, objPing, objStatus
  On Error Resume Next
  err.Clear
  Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select * from Win32_PingStatus where address = '" & PCName & "'")  
  Tst = err.Number & " - " & err.Description  
  On Error Goto 0
  If Len( Tst ) > 4 Then : WMIpingOK = "Fehler: " & Tst : Exit Function  

  WMIpingOK = True
  For Each objStatus in objPing
	If IsNull(objStatus.StatusCode) or objStatus.StatusCode<>0 Then
'	  WScript.Echo("PCName " & PCName & " is not reachable")  
	  WMIpingOK = False
	End If
  Next
  Set objPing = Nothing
End Function ' WMIpingOK( PCName )  

'*** v8.3 *** www.dieseyer.de *******************************  
Function QuickSort( vntArray, intVon, intBis )
'************************************************************  

' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
' http://www.heise.de/ct/ftp/listings.shtml  
' Der gute, alte QuickSort-Algorithmus als Windows-Script. c't 5/2002  
' Copyright Ralf Nebelo/c't  

'	QuickSort arrTest, LBound(arrTest), UBound(arrTest)  ' Array "arrTest" wird sortiert  
'	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  

  Dim i, j
  Dim vntTestWert, intMitte, vntTemp

	If intVon < intBis Then
	  intMitte = (intVon + intBis) \ 2
	  vntTestWert = vntArray(intMitte)
	  i = intVon
	  j = intBis

	  Do
		Do While UCase( vntArray(i) ) < Ucase( vntTestWert )
'		Do While        vntArray(i)   <        vntTestWert  
		  i = i + 1
		Loop

		Do While UCase( vntArray(j) ) > Ucase( vntTestWert )
'		Do While        vntArray(j)   >        vntTestWert  
		  j = j - 1
		Loop

                If i <= j Then
                  vntTemp = vntArray(j)
                  vntArray(j) = vntArray(i)
                  vntArray(i) = vntTemp
                  i = i + 1
                  j = j - 1
		End If
	  Loop Until i > j

	  If j <= intMitte Then
		Call QuickSort(vntArray, intVon, j)
		Call QuickSort(vntArray, i, intBis)
	  Else
		Call QuickSort(vntArray, i, intBis)
		Call QuickSort(vntArray, intVon, j)
	  End If
	End If

End Function ' QuickSort( vntArray, intVon, intBis )  

'*** v7.C *** www.dieseyer.de ****************************  
Function DateiInhalt( DateiX )
'*********************************************************  
  Dim fso         	: Set fso       	= CreateObject("Scripting.FileSystemObject")  
  Dim FileIn		: Set FileIn		= fso.OpenTextFile( DateiX, 1 )
  Dim i
	ReDim Preserve Zeile(i)

  Do While Not ( FileIn.atEndOfStream )
	ReDim Preserve Zeile(i)
	Zeile(i) = FileIn.Readline
	i = i + 1
  Loop

  If UBound( Zeile ) < 1 Then
	Zeile(i) = "Leerdatei"  
  End If

  FileIn.Close
  Set FileIn  = nothing
  DateiInhalt = Zeile
End Function ' DateiInhalt( DateiX )  

'*** v7.C *** www.dieseyer.de ****************************  
Function ArrayZeigen( InArray )
'*********************************************************  
' Durch die Prozedur  
'    ArrayZeigen( InArray )  
' werden von einem Array nur die ersten  
' und letzten Elemente angezeigt. Da die MsgBox nur 1024  
' Zeichen anzeigen kann, ist die Anzahl der angezeigten  
' Elemente von der Länge der einzelnen Elemente abhängig.  

  Dim TxtOben, TxtUnten, Tst, i, n, o, u
  Dim Kopf ' für Tests  
  ' Kopf = "LBound( InArray )=" & LBound( InArray ) & "   UBound( InArray )=" & UBound( InArray ) & vbCRLF & vbCRLF & Kopf  
  ' Kopf = "O=00000" & "   U=00000" & "   Len( TxtOben )=00000" & vbCRLF & Kopf  

  For i = LBound( InArray ) to UBound( InArray )

    n = UBound( InArray ) - i
    Tst = Len( TxtOben ) + Len( TxtUnten ) + Len( InArray( i ) ) + Len( Kopf )
    If Tst < 1000 AND n >= i Then
'		TxtOben  = TxtOben  & "i = " & i & vbTab & "n = " & n & vbTab & Tst & vbTab & InArray( i ) & vbCRLF  
		TxtOben  = TxtOben  &          i &                                    vbTab & InArray( i ) & vbCRLF
		o = i
    End If

    n = UBound( InArray ) - i
    Tst = Len( TxtOben ) + Len( TxtUnten ) + Len( InArray( n ) )
    Tst = Len( TxtOben ) + Len( TxtUnten ) + Len( InArray( i ) ) + Len( Kopf )
    If Tst < 1000 AND n > i Then
'		TxtUnten  = "n = " & n & vbTab & "i = " & i & vbTab & Tst & vbTab & InArray( n ) & vbCRLF & TxtUnten  
		TxtUnten  =          n                                    & vbTab & InArray( n ) & vbCRLF & TxtUnten
		u = n
    End If
    If n <=i then Exit For

  Next

  Tst = ""  
  If o <> u AND o + 1 <> u Then Tst = "." & vbCRLF & "." & vbCRLF  

  Kopf = Replace( Kopf, "O=00000", "O=" & o )  
  Kopf = Replace( Kopf, "U=00000", "U=" & u )  
  Kopf = Replace( Kopf, ")=00000", ")=" & Len( Kopf & TxtOben & Tst & TxtUnten ) )  

  TxtOben = Kopf & TxtOben & Tst & TxtUnten

' LogEintrag "303 :: " & vbCRLF & TxtOben  
  MsgBox TxtOben , , "304 :: " & Titel  

End Function ' ArrayZeigen( InArray )  

'**************************************************************  
Sub document_onKeyDown
'**************************************************************   
' TastTaste = window.event.keyCode  
' Trace32Log "312 :: Betätigte Taste: '" & TastTaste & "'", 1  
' If TastTaste = 13 Then Call neuesEnde()  
End Sub


</script>

<body onLoad="BeimLaden()">  

<span id="Anzeige"></span><br>  
<!--
<span id="InfoTxt" style="text-align: center; width: 642px; height: 3em; position: absolute; top: 478px; left: 11px; border: 2px solid red; background-color: #00d;"></span>  
-->

</body>
</html>
Member: palmiii
palmiii Nov 18, 2009 at 20:38:18 (UTC)
Goto Top
Hallo Rocky,
schau mal nach Look@Lan eine simple einfache Software zeigt dir im Netz alle Ip Adressen an die On/ Offline sind.
Sprache engl. , ital. Kostenlos

Gruß

Palmiii
Member: Pimpermann
Pimpermann Nov 19, 2009 at 06:28:31 (UTC)
Goto Top
Schau dir mal das Programm Freeping an
Member: Janno100
Janno100 Nov 19, 2009 at 22:11:21 (UTC)
Goto Top
Ich verwende Hamachi. (LogInMe)

Du kannst hiermit sozusagen gleich noch einmal ein virtuelles Netzwerk im Netzwerk erzeugen und bestimmen was der Client auf dem einzelnen PC darf und was nicht.
Damit siehst du genau sofort, auch ausserhalb des Netzwerks, welcher PC gerade an ist. Vorraussetzung ist Internet. Das kleine Tool kann man auch auf den PCs nach der Installation aus dem Startmenü entfernen, hast sehr schnellen Zugriff auf jeden PC in diesem Netzwerk (eigene virtuelle IP, brauchst nicht mehr nach Passwörtern und Adressen rumsuchen). Kannst auch mehrere Netzwerke gleichzeitig betreuen, ohne das ein Netzwerk was mit dem anderen zu tun hat natürlich.
Bis zu 16 PC´s ist es kostenlos. Mit Lizens 256 Rechner (Preis ist lächerlich). Die Rechner kann man aber auch jederzeit einzeln stellen und später einbinden oder ausschliessen. Du kannst es so einstellen das es keine Möglichkeit gibt das hier Fremde das Netzwerk betreten können. Es ist nirgens gelistet und die Sicherheit kannst du sogar extrem hochschrauben. Es gibt eine Art Tanliste zum einloggen, verändern und so weiter.

Lediglich der Anbieter selber könnte durch eine Veränderung am Clienten etwas verändern. Die haben aber wiederum auch die Datenschutzbestimmungen, die sehr klar ausgedrückt sind bei sich auf der HP hinterlegt. Solange es sich nicht um ein Bankennetzwerk handelt denke ich mal kann man hier auch vertrauen. Die Verbindung ist ja getunnelt und verschlüsselt.

Ich kann mich noch erinnern das ich das mal vor 3 Jahren zum spielen nutzen wollte. Da war es noch Schrott. Jetzt nicht mehr. Habe 80 Systeme und einige Server drinnen ; XP, Vista, W7. Noch nie nen Fehler oder Problem gehabt. Portfreigaben an Router und Firewall entfallen komplett. So.., genug Werbung vor Begeisterung ;) . Die haben auf ihrer Seite einfach zu wenig dazu geschrieben finde ich. Die Installation auf den Clients sind nach der Einrichtung des Accounts auf deren Seite nur noch 2 Klicks bei Vista da alles automatisch geht. Kann man lustig via Link (auch zeitgültig) +eMail verteilen.

Gruß Janno

Bei Notebook´s auch gleich noch nen Effekt von Diebstahlschutz weil ein normaler Anwender das nicht so schnell checken wird wenn er damit ans Netz gehen würde.
Member: dog
dog Nov 19, 2009 at 23:57:53 (UTC)
Goto Top
The Dude von Mikrotik - Kostenloses Monitoring Tool mit zusätzlichem Webinterface.

Grüße

Max
Member: Rocky112
Rocky112 Nov 20, 2009 at 18:19:35 (UTC)
Goto Top
Hallo Leute,

vielen Dank für Eure Antworten. Also das Lock@LAN habe ich schon getestet und muss es leider als "nicht funktionstüchtig" ablegen.

Ich habe nicht alle direkt am ROUTER angeschlossen, sondern evtl. über weitere Router oder dLAN Adapter. Dadurch versagt Look@LAN.

Die Anderen werde ich die kommenden Tage testen und euch dann meine Erfahren schreiben.

Vielen Dank nochmal.

MfG Rocky