【发布时间】:2011-07-25 19:19:40
【问题描述】:
我目前正在使用以下方式更改默认网关:
ManagementBaseObject gateway = mo.GetMethodParameters("SetGateways");
gateway["DefaultIPGateway"] = new string[] { "192.168.0.1" };
var r = mo.InvokeMethod("SetGateways", gateway, null);
我想知道如何清除网关,我尝试将空字符串和空值作为参数而不是“192.168.0.1”,但没有奏效。有人对此有任何想法吗?
谢谢
【问题讨论】:
-
InvokeMethod的返回值是多少?
-
好吧,我的第一次尝试是传入一个空字符串数组,就像@Hand-E-Food 在这里的答案一样,它在网关上设置了 0.0.0.0(我的意思是当我检查时看到 0.0.0.0它通常在Windows中使用网络和共享中心)但0.0.0.0与清除它一样吗?然后我尝试使用
netsh interface ipv4 set address name="Local Area Connection" gateway=none,它就像我真正想要的那样工作,空而不是 0.0.0.0 -
我尝试了您的
netsh命令,但遇到了无效的语法错误。我正在使用 Windows 7。它似乎需要source=dhcp|static。再次尝试您的命令,然后键入netsh interface ipv4 show address name="Local Area Connection"以查看 IP 地址或启用 DHCP 的设置是否已更改。 -
遇到同样的问题... 将 InParameters 设置为 Null 或 Empty,不会放回我重写的启用 DHCP 的网关。我试图远离netsh。我正在使用远程服务器,我不想调用进程或 psexec 会话。