3
4

2 回答 2

4

netsh(MS 试图让我们摆脱并放弃的工具)

获取 WLAN 接口名称:netsh wlan show interfaces
      help states : show interfaces - 显示系统上的无线 LAN 接口列表。
获取 LAN 接口名称:netsh lan show interfaces
      help states : show interfaces - 显示系统上当前有线接口的列表。
获取所有接口的名称:netsh interface show interface
      帮助状态show interfaces - 显示接口。

LAN 的命令确实需要Wired AutoConfig 服务,该服务通常不启动。

此批处理脚本将启动服务,获取(最后一个)LAN 接口名称,将其更改为新名称,再次停止有线自动配置服务。

sc.exe start dot3svc

for /f "tokens=1* delims=: " %%a in ('netsh lan show interfaces') do if %%a == Name set activeAdapter=%%b
echo %activeAdapter%
netsh interface set interface name="%activeAdapter%" newname="Ethernet"

sc.exe stop dot3svc

限制:

  • 假设只有一个有线接口
  • 它将停止有线自动配置服务,无论它在开始时是否正在运行

对于 Wifi 接口,将上述脚本 'lan' 更改为 'wlan' 并删除 sc.exe 服务启动/停止


电源外壳

为了更好地控制重命名的接口,PowerShell 将是一个更容易的选择。

这可能在大多数情况下都有效:
Get-NetAdapter | Where-Object { $_.HardwareInterface -eq $True -and $_.MediaType -eq "802.3" } | Rename-NetAdapter -NewName "Ethernet"

HardwareInterface将消除虚拟接口,例如 VMWare
MediaType 802.3将只显示“有线”接口而不显示 Wifi、宽带或其他接口。

在脚本文件中,使用上述版本的命令,简写版本为:
Get-NetAdapter | ? HardwareInterface | ? MediaType -eq "802.3" | Rename-NetAdapter "Ethernet"

还有更多选项如何选择所需的接口。检查可以选择它的所有参数:
(Get-NetAdapter)[0] | Format-List -Property * -Force

例如
,列出所有由 Realtek 制造的(Realtek 供应商 10ec,Intel:8086):
Get-NetAdapter | ? ComponentID -like "PCI\VEN_10EC*"

非虚拟:
Get-NetAdapter | ? Virtual -eq $false

连接器存在:
Get-NetAdapter | ? ConnectorPresent

然后是 WMI 对象
Get-WmiObject -Class Win32_NetworkAdapterConfiguration


登记处

如果您更改了网络适配器卡并且新的网络适配器使用名称:Ethernet 2或类似名称,并且您想将其重命名为“Ethernet”,则会出现错误提示:

"You were not connected because a duplicate name exists on the network. If joining a domain, go to System in Control Panel to change the computer name and try again. If joining a workgroup, choose another workgroup name."

这当然是关于重命名计算机的错误消息。
PowerShell 会正确地说:An attempt was made to create an object and the object name already existed.

但是去那里Control Panel\Network and Internet\Network Connections尝试重命名界面也无济于事。

似乎这种情况的唯一选择是在这些注册表路径中找到相应的键:

HKEY_LOCAL_MACHINE\SYSTEM\Setup\Upgrade\NetworkDriverBackup\Control\Network\{4d36e972-e325-11ce-bfc1-08002be10318}\
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\
HKEY_LOCAL_MACHINE\SYSTEM\Setup\Upgrade\NetworkDriverBackup\Control\NetworkSetup2\Interfaces\

并删除旧界面的密钥(不是上面写的整个路径!),然后重新启动。
通过 cmd 批处理、PS 或在控制面板中重命名现在应该可以工作了。

于 2016-02-14T18:41:26.710 回答
0

您可以使用 Powershell 做很多事情,这取决于您的服务器的新程度,可能会安装它。谷歌“Get-WmiObject -Class Win32_NetworkAdapterConfiguration”查看更多信息。

于 2013-01-14T12:07:18.537 回答