Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 11 additions & 10 deletions source/_components/upnp.markdown
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
layout: page
title: "UPnP"
description: "Automatically creates port mappings on your router for Home Assistant."
description: "Internet Gateway Device (IGD) Protocol for Home Assistant."
date: 2016-04-10 19:16
sidebar: true
comments: false
Expand All @@ -12,17 +12,11 @@ ha_category: "Other"
ha_release: 0.18
---

The `upnp` component automatically creates port forwarding mappings on your router for Home Assistant. UPnP or NAT-PMP needs to be enabled on your router for this component to work.
The `upnp` component enables you to collect network statistics from your router such as bytes in/out and packets in/out. This information is provided by the Internet Gateway Device (IGD) Protocol if enabled on your router.

You need to install [miniupnpc](https://github.com/miniupnp/miniupnp/tree/master/miniupnpc) before using the UPnP component:
The IGD can also automatically create port forwarding mappings on your router for Home Assistant.

```bash
$ git clone https://github.com/miniupnp/miniupnp.git
$ cd miniupnp/miniupnpc
$ make
$ make pythonmodule3
$ sudo make installpythonmodule3
```
Please note that UPnP or NAT-PMP needs to be enabled on your router for this component to work.

To integrate this into Home Assistant, add the following section to your `configuration.yaml` file:

Expand All @@ -32,3 +26,10 @@ upnp:
```

A port mapping will be created using the IP address and port that Home Assistant is running on. The mapping will never automatically expire. Upon stopping Home Assistant, the mapping will be removed from your router.

If you which to have the statistics without having port mapping done through IGD, add the option:
```yaml
# Example configuration.yaml entry with port mapping disabled
upnp:
port_mapping: false
```