In this tutorial we will show you how to install and configure the SNMP service in Windows 10/11 and Windows Server 2022/2019.
What Is SNMP and Why Itโs Used
SNMP is a popular protocol that is used for the exchange of data between devices on a network. SNMP (Simple Network Management Protocol) is most commonly used in modern networks for monitoring, event notification, and device management.
To remotely query a network device via SNMP, it must have an SNMP agent installed.
Note. Microsoft considers SNMP deprecated on modern Windows builds and may remove it in future releases. We recommend using newer management technologies (such as Windows Management Instrumentation (WMI), Common Information Model (CIM), or PowerShell remoting) where possible.
SNMP Components and Architecture
SNMP monitoring infrastructure usually consists of the following components:
| Component | Description |
|---|---|
| SNMP Agent | Software running on a monitored device that exposes management information |
| SNMP Manager | Monitoring server that queries devices and collects metrics |
| MIB (Management Information Base) | Database describing available SNMP objects and OIDs |
| OID (Object Identifier) | Unique identifier of a monitored parameter |
| SNMP Trap | Unsolicited notification sent by the agent to the monitoring server |
In a typical deployment case, monitoring systems (such as Zabbix, PRTG, Nagios, or SCOM) periodically poll SNMP-enabled devices to collect performance metrics, hardware status, uptime, network interface statistics, and other operational data.
Installing SNMP Service on Windows 10 and 11
Install SNMP via Settings (Feature on Demand)
The SNMP service is available as a separate Feature on Demand (FoD) on Windows 10 and 11, and is not installed by default. On modern Windows 10 and 11 builds, you can install the SNMP service from the Settings app:
- Click Start > Settings > Apps > Optional Features > Add an optional feature > View features (or run the URI command: Win+R > ms-settings:optionalfeatures);

- Select Simple Network Management Protocol (SNMP) and WMI SNMP Provider (optional) to install;

- Click Next > Install;
- Windows will download the SNMP binaries from the Windows Update servers and install the service.
Install SNMP Using PowerShell Commands
You can also install the SNMP service on Windows 11 and 10 using PowerShell:
- Open Windows Terminal or PowerShell console as an administrator;
- Check if the SNMP service is not installed (State=NotPresent):
Get-WindowsCapability -Online -Name "*SNMP*"|select name,DisplayName,State

- Install the SNMP service and the WMI SNMP Provider using the commands:
Add-WindowsCapability -Online -Name "SNMP.Client~~~~0.0.1.0" Add-WindowsCapability -Online -Name "WMI-SNMP-Provider.Client~~~~0.0.1.0"
- Wait for the installation to complete;
- Use the Get-Service cmdlet to verify that SNMP service is installed:
Get-Service -Name snmp*

Install SNMP via Optional Features on Older Windows Builds
In previous Windows 10 builds (1803-), including Windows 8.1 and 7 you can install the SNMP service using the Turn Windows features on or off applet.
- Run the command: optionalfeatures.exe
- Install the Simple Network Management Protocol (SNMP) and the WMI SNMP Provider

Canโt Install the SNMP Feature on Windows: Error 0x800f0954
SNMP feature is part of the Feature on Demand (FoD) concept, which requires a direct connection to Microsoft’s online update servers for component downloads.
Why the 0x800f0954 Error Appears
You may receive error 0x800f0954 when installing SNMP on a computer that is on an isolated segment or corporate network:
Add-WindowsCapability failed error. Error code = 0x800f0954
This error occurs if your computer is on a corporate network configured to receive Windows updates from an internal WSUS server. The computer is trying to download SNMP binaries from the WSUS server instead of from Microsoft Update servers.
Allow Feature Installation from Microsoft Update Instead of WSUS
You can allow computers to download optional feature files directly from Windows Update instead of from WSUS:
- Open the Local Group Policy Editor (gpedit.msc);
- Go to Computer Configuration > Administrative Templates > System;
- Enable the GPO option Specify settings for optional component installation and component repair and check the box Download repair content and optional features directly from Windows Updates instead of Windows Server Updates Services (WSUS);

- Update the Group Policy settings on a computer:
gpupdate /force
- Restart the Windows Update service:
Get-Service wuauserv| Restart-Service -Force
Now you can install any Windows optional feature.
Install SNMP from Offline FoD ISO Image
In an environment that is not connected to the Internet, you can install SNMP from the offline FoD ISO image:
- Download the FOD media from your Volume License Servicing Center (VLSC)
- Mount the ISO image to a virtual DVD drive (for example, E:)
- Now install SNMP using PowerShell.
For Windows 10/11 FoD media, use:
Add-WindowsCapability -Online `
-Name "SNMP.Client~~~~0.0.1.0" `
-Source "E:\" `
-LimitAccessOn older Windows versions/installation media that contain the SNMP component in the SxS store, you can also use the command:
Enable-WindowsOptionalFeature -Online -FeatureName SNMP -Source "E:\Sources\sxs"
Installing SNMP Service on Windows Server 2022/2019
Now letโs see how to the install SNMP service and WMI providers on Windows Server 2022/2019/2016.
SNMP is not installed by default on Windows Server. You can install the SNMP service:
Install SNMP via Server Manager GUI
Via the Server Manager: Add roles and Features > Features > SNMP Service (you can also check SNMP WMI Providers).
Install SNMP Using PowerShell on Server Core
Using PowerShell (this is the only way to install SNMP on Windows Server Core):
Install-WindowsFeature SNMP-Service,SNMP-WMI-Provider โIncludeManagementTools

Enable and Configure SNMP Service on Windows Computer
The SNMP feature adds two new services snap-in:
- SNMP Service โ this is the primary SNMP agent service, that tracks activity and sends information;
- SNMP Trap โ only required in case the Windows host is expected to receive and process SNMP traps.
Start both SNMP services manually if they are stopped and change the startup type to Automatic.

Agent Tab Settings (Contact, Location, and Data Types)
Open the SNMP Service properties and go to the Agent tab. Fill in the Contact and Location fields (you can specify the userโs contact name and computer location). Then select the list of services from which you want to collect data and send it to the monitoring device. There are five options:
- Physical;
- Applications;
- Internet;
- End-to-end;
- Datalink and subnetwork.

Configuring SNMP Community Names and Access Levels
Click the Security tab. Here you can configure various security settings for your SNMP servers.
The list of Accepted community names contains the names of the communities whose SNMP hosts are authenticated to send SNMP requests to this computer. An SNMP community string functions similarly to a shared password used to authenticate SNMP requests.
Click the Add button and specify the Community Name and one of the five access levels:
- None
- Notify
- READ ONLY
- READ WRITE,
- READ CREATE
READ WRITE is the maximum privilege level that allows the SNMP management application to make changes to the computer. For monitoring systems, it is usually enough to select READ ONLY (the monitoring server can only query the device, but cannot make any changes). In this example, we added a community name public with READ ONLY permissions.
Adding Authorized Hosts (Monitoring Systems: Zabbix, PRTG, Nagios, etc.)
Add a list of monitoring servers (IP addresses) to the Accept SNMP packets from these hosts from which you want to accept SNMP packets. This could be your monitoring system, for example, Zabbix, Nagios, Icinga, OpenNMS, PRTG, and Microsoft System Center Operations Manager (SCOM).

Tip. If you select the Accept SNMP packets from any host option, your SNMP agent will accept packets from any host without restrictions. This option is not recommended for use on public computers for security reasons.
Save the changes and restart the SNMP service.
Through SNMP, you can collect the following typical monitoring metrics:
- CPU utilization
- Memory usage
- Network interface statistics
- Disk status and storage usage
- System uptime
- Printer and peripheral status
- Hardware temperature and health events
- Network bandwidth utilization
- Interface errors and packet drops
How to Test SNMP on Windows
After configuring SNMP, you should verify that the service responds correctly to SNMP queries. To check if the SNMP service is running, run the command:
Get-Service SNMP
After that verify if UDP port 161 is listening:
Get-NetUDPEndpoint | Where-Object {$_.LocalPort -eq 161} You can test SNMP connectivity from a monitoring server using tools such as:
- snmpwalk
- snmpget
- Paessler SNMP Tester
- Zabbix server
- PRTG probe
Here is an example SNMP query using snmpwalk:
snmpwalk -v2c -c public 192.168.1.10 system
In case the SNMP query fails, verify the following:
- Windows Defender Firewall rules
- Community name config
- Allowed SNMP managers list
- Network connectivity
- SNMP service status
Verifying SNMP Config from PowerShell
You can quickly inspect the current SNMP config directly from PowerShell:
Get-Service SNMP
Get-NetUDPEndpoint | Where-Object {$_.LocalPort -eq 161}
Get-ItemProperty `
HKLM:\SYSTEM\CurrentControlSet\Services\SNMP\Parameters
The commands listed above allow you to check if the SNMP service is running, UDP port 161 is listening, and the SNMP config is present in the registry.
Hint. To enable your Windows host to receive and send SNMP queries and traps, you need to open SNMP ports in Windows Defender Firewall. Two ports are used: UDP 161 (SNMP) and UDP 162 (SNMPTRAP). You can open inbound and outbound SNMP ports in Windows using the following commands:
netsh advfirewall firewall add rule name="SNMP UDP Port 161 In" dir=in action=allow protocol=UDP localport=161
netsh advfirewall firewall add rule name="SNMP UDP Port 161 Out" dir=out action=allow protocol=UDP localport=161
netsh advfirewall firewall add rule name="SNMPTRAP UDP Port 162 In" dir=in action=allow protocol=UDP localport=162
netsh advfirewall firewall add rule name="SNMPTRAP UDP Port 162 Out" dir=out action=allow protocol=UDP localport=162
Common SNMP Issues on Windows
After installing and configuring the SNMP service, you may face connectivity/monitoring problems. Below are several common SNMP issues and troubleshooting steps.
SNMP service is installed but not responding
Possible causes of this issue are:
- Your Windows Defender Firewall blocks UDP port 161
- You have incorrect SNMP community name
- Monitoring server IP address is not added to permitted managers
- SNMP Service is stopped
- Network devices/ACLs block SNMP traffic
You need to verify if the SNMP service is running:
Get-Service SNMP
After that check that UDP port 161 is listening:
Get-NetUDPEndpoint | Where-Object {$_.LocalPort -eq 161} SNMP queries timeout
In case the monitoring system cannot query the device, verify the following:
- Network connectivity between the monitoring server and target host
- Firewall rules on Windows and network devices
- Correct SNMP version config
- Correct community string
- Routing and VLAN config
SNMP Trap messages are not received
In case monitoring systems do not receive SNMP traps, check the following:
- UDP port 162 firewall rules
- SNMP Trap service status
- Trap destination config
- Monitoring server IP config
You should verify if the SNMP Trap service is running:
Get-Service SNMPTRAP
SNMP config changes are not applied
After modifying SNMP settings, restart the SNMP service:
Restart-Service SNMP -Force
Error 0x800f0954 during SNMP installation
This problem usually occurs when Windows attempts to download Features on Demand from a WSUS server instead of Microsoft Update. In such case, you need to config Windows to download optional components directly from Microsoft Update servers.
Configuring SNMP Settings in Windows via Group Policy
There are several GPO options that allow you to configure SNMP parameters for multiple Windows hosts from a central location. These parameters are located in the GPO editor (gpedit.msc) under Computer Configuration > Policies > Administrative Templates > Network > SNMP.
- Specify communities โ specify a list of communities for the SNMP service;
- Specify permitted managers โ defines a list of allowed hosts that can send SNMP queries to the Agent;
- Specify traps for public community โ configure Simple Network Management Protocol trap settings.

Configuring Communities and Managers via GPO
Another way to configure SNMP parameters is through the registry. These parameters are set in the following Registry Editor key: HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ services\ SNMP\ Parameters.
You can configure SNMP parameters as needed on a reference computer, export them to a REG file, and deploy the REG file to computers via GPO (Computer Configuration > Preferences > Windows Settings > Registry).

Windows only supports SNMP v1 and SNMP v2c versions. These versions of the protocol are not encrypted. This means that an attacker can intercept all your SNMP data and view it in clear text. Windows doesn’t support SNMP v3, which is an encrypted and more secure protocol.
| SNMP Version | Encryption | Authentication | Supported on Windows |
|---|---|---|---|
| SNMPv1 | No | Community string only | Yes |
| SNMPv2c | No | Community string only | Yes |
| SNMPv3 | Yes | Secure authentication | No |
Note that you should use SNMP v1 and SNMP v2c transmit community strings and monitoring data without encryption only on trusted/internal networks or dedicated management VLANs. You should avoid using common community strings such as public/private in production environments.
In case you you’re looking for encrypted monitoring, you should consider using WMI over HTTPS, CIM cmdlets with encrypted transport, or PowerShell remoting with Kerberos/SSL instead of SNMP.
What is SNMP?
SNMP (Simple Network Management Protocol) is a network protocol used to monitor and manage devices on a network. It allows monitoring systems to collect information such as CPU usage, memory utilization, interface statistics, uptime, and hardware status from network devices and servers.
What is an SNMP agent?
An SNMP agent is software running on a monitored device that exposes management information to SNMP managers. On Windows, the SNMP Service acts as the SNMP agent.
What is an SNMP manager?
An SNMP manager is a monitoring system that queries SNMP-enabled devices and collects metrics. Examples include:
- Zabbix
- PRTG Network Monitor
- Nagios
- Microsoft System Center Operations Manager
Which SNMP versions are supported on Windows?
Windows supports:
- SNMPv1
- SNMPv2c
Windows does not support SNMPv3 natively.
Is SNMP secure?
SNMPv1 and SNMPv2c are not encrypted and use community strings for authentication. Because traffic is transmitted in plain text, SNMP should only be used on trusted internal networks or management VLANs.
What is the WMI SNMP Provider?
The WMI SNMP Provider allows WMI-based applications to access SNMP information through Windows Management Instrumentation.
What is an SNMP community string?
An SNMP community string acts similarly to a shared password used to authenticate SNMP requests. Common access levels include:
- READ ONLY
- READ WRITE
- READ CREATE
For monitoring systems, READ ONLY is usually recommended.



Good job with this great article. You have saved me with testing a system monitoring light board program.
Thank you for your excellent explanations of his lines of code on SNMP.
For the field “Accept SNMP packets from these hosts”, I have never seen a hostname work here. Only IP address works. That is, this window will accept either hostname or IP, but the desired effect only is achieved using IP address(es).
Hello, how can I install SNMP on windows 10 machine without internet?