Windows Server 2022 具有 RRAS 连接用户的持久路由(SSTP VPN)

Windows Server 2022 具有 RRAS 连接用户的持久路由(SSTP VPN)

我在一端有 Windows Server 2022,在另一端有 Keenetic 路由器。它们通过 SSTP VPN 连接。Windows 作为服务器,Keenetic 作为客户端(使用移动连接的公路战士)。Keenetic 后面有一些用户,网络为 192.168.87.0/24。当它连接到 Windows RRAS VPN 服务器时,它会获得地址 11.11.11.3,其中 11.11.11.1 - Windows 服务器。在此之后,我添加路由:route -P add 192.168.87.0 mask 255.255.255.0 11.11.11.3,它开始工作。

Persistent routes:
  Network address        Mask             Gateway      Metrics
     192.168.87.0    255.255.255.0       11.11.11.3       1

但它一直工作到用户重新连接为止。我在 RRAS MMC 控制台中看到连接,我在路由表中看到路由,但它不起作用。我需要删除路由并再次添加。然后它又开始工作了。

客户端连接时是否有一些选项可以启动路由?尝试调试日志并使用事件管理器捕获事件以启动脚本,但 RRAS 不会记录传入连接的事件,我只能看到来自 Windows VPN 的传出连接。

在 PS 中尝试过:

New-NetRoute -DestinationPrefix 192.168.87.0/24 -InterfaceAlias "RAS (Dial In) Interface" -NextHop 11.11.11.3

它添加了正确的路线但是也不起作用。

有人能帮忙吗?有什么想法吗?

更新:制作了一个解决方法脚本,直到我找到添加路线的正确方法。

    while($true)
{
$hostname = "192.168.87.1"
$isReachable = Test-Connection -ComputerName $hostname -Quiet
if ($isReachable) {
    Write-Host "$hostname is reachable."
    Get-Date -Format "yyyy/MM/dd HH:mm:ss" >> E:\tmp\route87.log;
    echo "OK, working." >> E:\tmp\route87.log;
} else {
    Write-Host "$hostname is not reachable."
    Get-Date -Format "yyyy/MM/dd HH:mm:ss" >> E:\tmp\route87.log;
    echo "Restart route" >> E:\tmp\route87.log;
    route delete 192.168.87.0 mask 255.255.255.0
    route add 192.168.87.0 mask 255.255.255.0 11.11.11.3
}
Start-Sleep 60
}

相关内容