NMS Supported Environment
NMS Control Manager runs in standalone mode on a dedicated virtual machine (VM). Before installation, check the VM specifications, supported OS, and ports.
System requirements
The following are the recommended specifications for the VM where NMS Control Manager is installed. Values in parentheses are the minimum specifications.
| Item | Specification |
|---|---|
| CPU | 4 cores or more (minimum 2 cores) |
| Memory | 16GB or more (minimum 8GB) |
| Disk | 50GB or more, SSD recommended (minimum 30GB) |
| Network Interface | 1Gbps or more |
OS support
| OS | Python version | Support status |
|---|---|---|
| Ubuntu 22.04 | 3.10 | Supported, Recommended |
| Ubuntu 23.04 | 3.11 | Supported |
| Ubuntu 24.04 | 3.12 | Supported |
| Rocky Linux 9.4 | 3.9 | Supported, Recommended |
| Rocky Linux 8.10 | 3.11 | Supported |
| Red Hat 8.10 | 3.11 | Supported, Recommended |
Python version support
You can install NMS Control Manager on an OS not listed above if one of the following Python versions is available. However, use a recommended OS from the table above.
| Family | Supported Python versions |
|---|---|
| Debian family | Python 3.10, 3.11, 3.12 |
| Red Hat family | Python 3.9, 3.10, 3.11, 3.12 |
TCP/UDP ports used
The following are the default ports for each service. You can change them to suit your environment.
| Category | TCP | UDP | Description | Direction | Notes |
|---|---|---|---|---|---|
| SNMP | - | 161 | polling | Outbound | Default port |
| SNMP Trap | - | 162 | trap message | Inbound | Default port |
| syslog | - | 514 | syslog message | Inbound | Default port |
| manager U/I | 5000(http) 8443(https) | - | NMS Control Manager GUI | Inbound | Default http, requires port 8443 permission when using https |
| WhaTap collection server | 6600 | - | Data transmission | Outbound | - |
| ICMP | - | - | ICMP health Check | - | ICMP protocol permission required |
| TCP | - | - | TCP-based health Check | In/Out | Monitoring target TCP port number connection permission required (Options) |
Service deployment models
You can use WhaTap Monitoring as a SaaS or on-premises (self-hosted) service. Whichever you choose, you use the same agents and the same monitoring features.
| Deployment | Support | Description |
|---|---|---|
| SaaS | ✅ | Connects to collection servers operated by WhaTap. See the firewall section for regional addresses |
| On-premises (self-hosted) | ✅ | Collection servers you build and operate yourself (air-gapped environments supported). Contact your sales representative for the scope |
You can also deploy WhaTap on-premises in air-gapped environments without internet connectivity.
Feature differences by deployment model
Whichever you choose, the monitoring features are the same. The mobile app is the only exception and is available on the service.whatap.io SaaS service only.
To use certain features on-premises, a separate agreement is required.
Firewall
The WhaTap agent must be able to access the collection server through TCP port 6600. Allow access to the collection server address that is closest to the monitored target.
Source: WhaTap agent
| Cloud | Destination | Destination IP | Port |
|---|---|---|---|
| AWS | WhaTap collection server (Seoul) | 13.124.11.223 / 13.209.172.35 | TCP 6600 |
| WhaTap collection server (Tokyo) | 52.68.36.166 / 52.193.60.176 | TCP 6600 | |
| WhaTap collection server (Singapore) | 18.138.0.93 / 18.139.67.236 | TCP 6600 | |
| WhaTap collection server (Jakarta) | 108.136.91.69 / 108.137.158.44 | TCP 6600 | |
| WhaTap collection server (Thailand) | 43.209.109.219 / 43.209.48.86 | TCP 6600 | |
| WhaTap collection server (Mumbai) | 13.127.125.69 / 13.235.15.118 | TCP 6600 | |
| WhaTap collection server (California) | 52.8.223.130 / 52.8.239.99 | TCP 6600 | |
| WhaTap collection server (Virginia) | 107.23.220.101 / 54.236.221.105 | TCP 6600 | |
| WhaTap collection server (Frankfurt) | 3.125.142.162 / 3.127.76.140 | TCP 6600 | |
| Azure | WhaTap collection server (Seoul) | 52.231.66.38 / 20.194.5.115 | TCP 6600 |
| WhaTap collection server (Tokyo) | 52.246.169.54 / 20.210.27.232 | TCP 6600 | |
| Kakao | WhaTap collection server (Seoul) | 61.109.237.237 / 61.109.238.166 | TCP 6600 |
If you use an inbound blocking policy, check the response traffic.
The agent starts the connection to the collection server, so you do not need to open inbound port 6600 on the agent host. However, the response packets sent by the collection server must reach the agent host. Check that your inbound policy does not block the response traffic of connections that are already open (established, related).
If you must block response traffic, add one exception. Allow only the traffic that comes from port 6600 of the collection server IP to the ephemeral port range of the agent host.
If the agent cannot directly access the collection server, use the provided proxy module to access it.

Main service components and ports
NMS Control Manager Web-Based U/I
uvicorn.service runs the management UI and API. You can use it to manage NMS settings, check system status, and back up or restore settings.
-
Ports used: HTTP 5000, HTTPS 8443 (when configured)
-
Service start and stop: You can start, stop, or restart
uvicorn.servicewith the following command.systemctl {start|restart|stop} uvicorn.service
Contact the WhaTap technical team for manager access information.
NMS engine
nmscore.service is the NMS engine service. It monitors network devices and traffic and processes events.
-
Ports used:
- SNMP Trap: UDP 162 (default)
- Syslog: UDP 514 (default)
-
Service start and stop: You can start, stop, or restart
nmscore.servicewith the following command.systemctl {start|restart|stop} nmscore.service
Health Check
icmptcphealthd.service performs ICMP and TCP Health Checks on network devices. It periodically checks device availability and connection status.
-
Service start and stop: You can start, stop, or restart
icmptcphealthd.servicewith the following command.systemctl {start|restart|stop} icmptcphealthd.service