Vinzenz Mai: (möglicherweise) LAN IP Adresse ausgeben ( nicht online IP!! )

Beitrag lesen

Hallo Marc,

Der Server an sich kann also die IP-Adresse des Clients nicht sehen (bzw. nur die IP-Adresse des Gateways bzw. des Proxys). Ein Server im Intranet könnte das. Wieso richtest du also nicht einfach einen Server im Intranet ein?

diese Frage stellte sich mir auch. Andererseits ist es mit einer Seite auf dem Server im Intranet natürlich auch einfach möglich, diese Daten zu ermitteln.

Ich habe meine Testseite, die ich in diesem Archivposting vorgestellt habe, etwas ergänzt. Mittels VBScript können nun auch der Benutzername und die lokalen IP-Adressen ermittelt werden.

Die lokalen IP-Adressen werden über WMI ermittelt:

  
public function getIPs()  
    Dim WSHWMI, strComputer, sysinfo, IPConfigSet, IPConfig, strIPAddresses  
  
    strComputer = "."  
    Set sysinfo = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")  
    Set IPConfigSet = sysinfo.ExecQuery _  
        ("Select IPAddress from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE")  
    For Each IPConfig in IPConfigSet  
        If Not IsNull(IPConfig.IPAddress) Then  
            For Each strAddress in IPConfig.IPAddress  
                If Len(strIPAddresses) > 0 Then  
                    strIPAddresses = strIPAddresses & chr(10) & chr(13)  
                End If  
                strIPAddresses = strIPAddresses & strAddress  
            Next  
        End If  
    Next  
    getIPs = strIPAddresses  
end function

Um eine Fehlerbehandlung habe ich mich bisher nicht gekümmert. *bg*

Selbstverständlich gelten weiterhin die in meinem Archivposting beschriebenen Restriktionen zur Ausführung. D.h. dieser Seite muss _explizit_ die Ausführung von für das Scripting unsicheren ActiveX-Controls erlaubt werden. Vielleicht erbarmt sich ja jetzt jemand und prüft auf anderen Plattformen :-)

Freundliche Grüße

Vinzenz