使用VBScript获取WAN IP

时间:2011-11-28 16:49:46

标签: vbscript ip-address rdp wan

我正在运行Windows登录脚本,并且正在编译一组在用户登录时记录的详细信息。由于这是一个远程服务器,所有登录都是通过RDP完成的。我需要获取已登录用户的IP地址。我使用了以下内容:

Function WAN_IP()
    Set objxmlHTTP = CreateObject("Microsoft.XMLHTTP")
    Call objxmlHTTP.open("get", "http://checkip.dyndns.org", False)
    objxmlHTTP.Send()

    strHTMLText = objxmlHTTP.ResponseText
    Set objxmlHTTP = Nothing

    If strHTMLText <> "" Then
        varStart = InStr(1, strHTMLText, "Current IP Address:", vbTextCompare) + 19
        If varStart Then varStop = InStr(varStart, strHTMLText, "</body>", vbTextCompare)
        If varStart And varStop Then strIP = Mid(strHTMLText, varStart, varStop - varStart)
    Else
        strIP = "Unavailable"
    End If

    WAN_IP = Trim(strIP)
End Function

正如预期的那样,这将返回服务器本身的外部IP,而不是已连接的用户的IP。

有人能告诉我如何通过RDP连接用户的IP吗?

1 个答案:

答案 0 :(得分:0)

根据@MarcB的回复,我使用How to get the IP Address of the Remote Desktop Client?来了解该怎么做。

然后我在这里找到了一些示例代码:http://pleasepressanykey.blogspot.com/2008/09/get-users-last-successful-and-failed.html