首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >命令行禁用netbios?

命令行禁用netbios?
EN

Stack Overflow用户
提问于 2015-12-21 00:16:44
回答 5查看 18.3K关注 0票数 3

我有一个以太网适配器和一个无线适配器,在我的生命中,我无法找到用于在TCP/IP上为系统上的所有适配器禁用Netbios的命令行(或powershell)。如果能对此提出意见,我将不胜感激。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2015-12-21 02:06:37

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

代码语言:javascript
复制
$adapters=(gwmi win32_networkadapterconfiguration )
Foreach ($adapter in $adapters){
  Write-Host $adapter
  $adapter.settcpipnetbios(0)
}

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

代码语言:javascript
复制
ServiceName      DHCPEnabled     Index     Description               
-----------      -----------     -----     -----------               
VMSMP            True            14        Intel Wireless Adapter
VMSMP            True            29        Intel Ethernet Adapter

使用为Where对象提供的筛选器选择要禁用的对象,如下所示。我想关掉局域网上的NetBios。

代码语言:javascript
复制
$adapter = Get-WmiObject Win32_NetworkAdapterConfiguration | Where Description -like "*Ethernet*" 
$adapter.SetTcpIPNetbios(0) | Select ReturnValue

ReturnValue
-----------
          0

但是有很多可能的返回码,就像很多。确保查一下这里的清单,不要懒惰地假设该功能将在每个设备上工作。您一定要先测试这一点,并了解其后果。

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

票数 7
EN

Stack Overflow用户

发布于 2018-07-21 19:51:46

如果试图在没有连接的适配器上设置NetBIOS配置,则可以更改注册表中的设置,而不是直接使用SetTcpIPNetbios。

我遍历每个适配器端口(我有16个),然后关闭所有这些端口的NetBIOS:

代码语言:javascript
复制
$i = 'HKLM:\SYSTEM\CurrentControlSet\Services\netbt\Parameters\interfaces'  
Get-ChildItem $i | ForEach-Object {  
    Set-ItemProperty -Path "$i\$($_.pschildname)" -name NetBiosOptions -value 2
}
票数 3
EN

Stack Overflow用户

发布于 2020-06-07 05:19:52

从其他答案和评论中,我将其用作一行命令来禁用NetBIOS:

(Get-WmiObject Win32_NetworkAdapterConfiguration -Filter IpEnabled="true").SetTcpipNetbios(2)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34387413

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档