# 启用系统级 IP 路由转发(永久生效)
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name "IPEnableRouter" -Value 1
# 立即启用 IPv4 全局转发(无需重启)
netsh interface ipv4 set global forwarding=enabled
# 放行 WireGuard 端口(UDP 51820,可自定义)
New-NetFirewallRule -DisplayName "WireGuard" -Direction Inbound -Protocol UDP -LocalPort 51820 -Action Allow
Get-NetNat
Get-NetNatSession # 查看活跃 NAT 会话
# 启用所有网络接口的 IPv4 转发
Set-NetIPInterface -AddressFamily IPv4 -Forwarding Enabled
# 验证是否启用成功
Get-NetIPInterface -AddressFamily IPv4 | Select InterfaceAlias, Forwarding
[Interface]
# 服务端私钥(用 wg genkey 生成)
PrivateKey = 你的服务端私钥
# 服务端虚拟 IP
Address = 10.0.0.1/24
# 监听端口
ListenPort = 51820
# 启动时:创建 NAT + 放行转发
PostUp = powershell -Command "New-NetNat -Name WireGuardNAT -InternalIPInterfaceAddressPrefix 10.0.0.0/24; netsh advfirewall firewall add rule name='WireGuard Forward' dir=in action=allow remoteip=10.0.0.0/24"
# 停止时:删除 NAT + 清理规则
PostDown = powershell -Command "Remove-NetNat -Name WireGuardNAT -Confirm:$false; netsh advfirewall firewall delete rule name='WireGuard Forward'"
# 客户端1
[Peer]
PublicKey = 客户端1公钥
AllowedIPs = 10.0.0.2/32
# 客户端2
[Peer]
PublicKey = 客户端2公钥
AllowedIPs = 10.0.0.3/32
New-NetIPAddress -IPAddress -PrefixLength -InterfaceIndex
New-NetNat -Name -InternalIPInterfaceAddressPrefix