我需要能够带上我的笔记本电脑并插入多个位置的多个不同网络。每个网络都要求我使用一个静态地址。我目前有一个 shell 脚本,提示输入网络位置并使用 netsh 设置 IP 地址。但是,Microsoft 警告说他们可能会删除 netsh 并使用 Powershell,因此我尝试在 Powershell 中重新创建我的脚本。
我遇到的问题是,如果我从 dhcp 转到静态地址,我可以使用:
New-NetIPAddress -InterfaceAlias $myAdapter -AddressFamily IPv4 10.1.2.3 -PrefixLength 24 -Type Unicast -DefaultGateway 10.1.2.1
Run Code Online (Sandbox Code Playgroud)
但是,当使用 New-NetIPAddress 从一个静态地址到另一个静态地址时,只需向适配器添加另一个 IP 地址(而且我无法连接到任何东西,因为它似乎只使用第一个 IP 地址)。为了解决这个问题,我可以使用 Set-NetIPAddress,但这似乎不接受 -DefaultGateway 参数,因此我分配了新地址,但使用了旧网关。我尝试使用 Remove-NetIPAddress,但这似乎保留了网关参数,因此 New-NetIPAddress 命令失败并显示“Instance DefaultGateway already exists”。如何删除网关以便我可以使用 New-NetIPAddress 重新开始或在使用 Set-NetIPAddress 时替换网关?