An advanced Home Assistant integration for Keenetic routers. Provides mesh network management, VPN control, device tracking, and more.
- Real-time device status via ICMP Ping. You don't need to wait Keenetic's update time for device tracking. This integration ping the devices you selected in every 3 seconds.
- Selectable client list
- 3-seconds update interval
- Automatic updates on IP address changes
Important
- Status of all extenders/repeaters (binary sensors)
- Separate reboot button for each mesh node
- CPU, RAM, and uptime information
- Firmware update notification (update available sensor)
- Number of connected clients (associations)
- Enable/disable WireGuard profiles (switch)
- OpenVPN, IPsec, L2TP, PPTP support
- VPN uptime, RX/TX sensors
- Enable/disable switch for each SSID
- Guest WiFi control
- Real WAN IP address (PPPoE supported)
- Connection status sensor
- Uptime information
-
Number of connected / disconnected devices
-
Connection Policy selection (per client)
- Default, VPN, No VPN, Smart Home, Roblox, etc.
- Deny (block internet access)
-
Event trigger when a new device connects
- Router reboot
- Mesh node reboot (separate for each node)
- HACS > Integrations > โฎ > Custom repositories
- URL:
https://github.com/YOUR_USERNAME/keenetic_router_pro - Category: Integration
- Search for "Keenetic Router Pro" and install
- Restart Home Assistant
- Copy the
keenetic_router_profolder intoconfig/custom_components/ - Restart Home Assistant
To use this integration securely, it is strongly recommended to configure Firewall rules and Port Forwarding properly on your Keenetic router. This section explains why it matters and how to do it.
-
Home Assistant communicates with the router via its web management API
-
Exposing router services directly to the internet without restrictions is a security risk
-
Proper firewall rules ensure:
- Only trusted devices (Home Assistant) can access the router
- No unintended WAN access to router management services
Think of the firewall as a bouncer with a clipboard. Only invited guests get in.
- Enable UPnP if it is not
- Go to Internet > Port forwarding
- Add a new rule:
| Setting | Value |
|---|---|
| Service | Home Assistant Router API |
| Protocol | TCP |
| External Port | 100 |
| Internal IP | Router LAN IP (e.g. 192.168.1.1) |
| Internal Port | 79 |
๐ซ Never expose port 80/443 to WAN without firewall rules
Use Firewall rules to restrict access.
- Go to Network Rules > Firewall
- Create a new rule for your PPPoE connection:
| Option | Value |
|---|---|
| Direction | Input |
| Source | Home Assistant IP (e.g. 192.168.1.50) |
| Destination | Router |
| Service | Custom port |
| Action | Allow |
- Create a second rule:
| Option | Value |
|---|---|
| Direction | Input |
| Source | Any |
| Destination | Router |
| Service | Custom port |
| Action | Deny |
โ Ensure only Home Assistant can talk to the router API.
Settings > Devices & Services > Add Integration > Keenetic Router Pro
| Field | Description | Example |
|---|---|---|
| Host | Router IP address | 192.168.1.1 |
| Port | Web interface port | 100 |
| Username | Admin username | admin |
| Password | Admin password | ******** |
During setup, you can choose which devices should be monitored via ping.
Triggered when a new device connects to the network.
automation:
- alias: "New Device Notification"
trigger:
- platform: event
event_type: keenetic_router_pro_new_device
action:
- service: notify.mobile_app
data:
title: "๐ New Device Connected"
message: "{{ trigger.event.data.name }} ({{ trigger.event.data.ip }})"Event Data:
mac: MAC addressname: Device nameip: IP addresshostname: Hostnameinterface: Connected interfacessid: WiFi SSID (if applicable)
- ๐ฌ๐ง English
- ๐น๐ท Turkish
- ๐ท๐บ Russian
- Home Assistant 2024.1.0 or newer
- Keenetic router (NDMS 3.x / 4.x / 5.x)
- Web management interface must be enabled on the router
- Keenetic Ultra (KN-1810)
- Keenetic Hopper (KN-3810)
- Keenetic Buddy 5 (KN-3311)
- Keenetic Air (KN-1610)
- Verify router IP address and port
- Verify username and password
- Ensure the web interface is enabled on the router
- Restart Home Assistant
- Remove and re-add the integration
- Home Assistant must have permission for ICMP ping
- Docker installations may require
network_mode: host
MIT License
โญ If you like this project, donโt forget to give it a star!




