命令行禁用netbios?

DDJ*_*DDJ 2 powershell netbios command-line-interface

我有一个以太网适配器和一个无线适配器,但终生无法弄清楚用于禁用系统上所有适配器的 TCP/IP 上的 Netbios 的命令行(或 powershell)。我将不胜感激。

在此处输入图片说明

Fox*_*loy 7

根据安德烈·维奥特的博客:

$adapters=(gwmi win32_networkadapterconfiguration )
Foreach ($adapter in $adapters){
  Write-Host $adapter
  $adapter.settcpipnetbios(0)
}
Run Code Online (Sandbox Code Playgroud)

应该在每个适配器上禁用 Netbios。您可能希望更加挑剔,并确保在正确的界面上禁用 Netbios,但是,因此我首先运行Get-WmiObject Win32_NetworkAdapterConfiguration | Where IPAddress, 以查看当前连接的适配器列表。

ServiceName      DHCPEnabled     Index     Description               
-----------      -----------     -----     -----------               
VMSMP            True            14        Intel Wireless Adapter
VMSMP            True            29        Intel Ethernet Adapter
Run Code Online (Sandbox Code Playgroud)

使用提供给 Where Object 的过滤器选择要禁用的那个,如下所示。我想关闭 LAN 上的 NetBios。

$adapter = Get-WmiObject Win32_NetworkAdapterConfiguration | Where Description -like "*Ethernet*" 
$adapter.SetTcpIPNetbios(0) | Select ReturnValue

ReturnValue
-----------
          0
Run Code Online (Sandbox Code Playgroud)

但是,有许多可能的返回代码,例如整个批次。请务必检查此处的列表,不要懒惰地假设该功能适用​​于所有设备。您绝对应该先对此进行测试并了解其后果。

http://www.alexandreviot.net/2014/10/09/powershell-disable-netbios-interface/

  • `SetTcpipNetbios(0)` == 通过 DHCP 启用 NetBIOS。`SetTcpNetbios(2)` 禁用它。此外,首先过滤启用 IP 的适配器的列表是有意义的。 (2认同)