如何查找使用 powershell 或 cmd 连接到 vpn 的时间?
我只会在与 vpn 建立活动连接时执行此操作,并且只需要我建立当前连接的时间。(我的想法是,只有当 vpn 已连接并且最近十分钟内连接时,我才想触发脚本)。对于我的用途来说,它不必如此,但我敢打赌,任何解决方案通常都可以用于确定任何互联网连接(而不仅仅是 vpn 连接)的建立时间。
我正在运行 Windows 10 Enterprise。VPN 是我雇主的,所以我无权访问服务器上的日志,所以我想在客户端执行此操作。我也没有计算机的管理员权限。
我已尝试过ipconfig
并netstat
包括了他们的一些选项,但没有发现任何可以返回连接建立时间的东西。
抱歉,这可能非常容易做到,但我还没有找到答案。谢谢!
答案1
如果您使用的是内置的 Windows VPN 客户端,则可以按照其他评论所建议的那样搜索事件日志。以下是它在 powershell 中的样子:
$vpnlog = Get-eventlog -LogName Application -Message *VPN* | select Timegenerated -first 1
$vpnTime = $vpnlog.TimeGenerated.ToString("MM-dd-yyyy hh:mm:ss tt")
$currentTime = Get-Date -Format "MM/dd/yyyy hh:mm:ss tt"
$timeSpan = New-TimeSpan –Start $vpnTime –End $currentTime
$uptime = $timeSpan.ToString("dd' days 'hh' hours 'mm' minutes 'ss' seconds'")
Write-Host "Uptime is: $uptime"
输出:Uptime is: 01 days 13 hours 33 minutes 26 seconds