Universal Plug and Play

Document revision 1.3 (29-Dec-2003)
This document applies to the MikroTik RouterOS v2.7

Table of Contents

Summary

The MikroTik RouterOS supports Universal Plug and Play architecture for transparent peer-to-peer network connectivity of personal computers and network-enabled intelligent devices or appliances. UPnP builds enables these devices to automatically connect with one another and work together to make networking possible for more people.

Specifications

Packages required : None
License required : Any
Home menu level : /ip upnp
Standarts and Technologies : TCP/IP (RFC1180), HTTP (RFC2616), XML (XML)
Hardware usage : may require additional memory

Related Documents

Software Package Installation and Upgrading
IP Addresses and Address Resolution Protocol (ARP)
Firewall Filters and Network Address Translation (NAT)

Description

UPnP enables data communication between any two devices under the command of any control device on the network. Universal Plug and Play is completely independent of any particular physical medium. It supports networking with automatic discovery without any initial configuration, whereby a device can dynamically join a network. DHCP and DNS servers are optional and will be used if available on the network. UPnP implements simple yet powerfull NAT traversal solution, that enables the client to get full peer-to-peer network support from behind the NAT.

There are two interface types for UPnP: internal (the one local clients are connected to) and external (the one the Internet is connected to). A router may only have one external interface with a 'public' IP address on it, and as many internal IP addresses as needed, all with source-NATted 'internal' IP addresses.

The UPnP protocol is used for most of DirectX games as well as for various Windows Messenger features (remote asisstance, application sharing, file transfer, voice, video) from behind a firewall.

Enabling Universal Plug-n-Play

Submenu level : /ip upnp

Property Description

enabled (yes | no; default: no) - whether UPnP feature is enabled

Example

To enable UPnP feature:
[admin@MikroTik] ip upnp> set enable=yes
[admin@MikroTik] ip upnp> print
    enabled: yes
[admin@MikroTik] ip upnp>

UPnP Interfaces

Submenu level : /ip upnp interfaces

Property Description

interface (name) - interface name UPnP will be run on
type (external | internal | unused) - interface type, one of the:
  • external - the interface global IP address is assigned to
  • internal - router's local interface
  • unused - the interface is not used by UPnP

    Notes

    It is highly recommended to upgrade DirectX runtime libraries to version 9.0a DirectX 9.0 and Windows Messenger to version 5.0 Windows Messenger 5.0 in order to get things to work properly.

    Example

    Suppose we have a following example:

    We have masquerading already enabled on our router:

    [admin@MikroTik] ip upnp interfaces> /ip firewall src-nat print
    Flags: X - disabled, I - invalid, D - dynamic
      0   src-address=0.0.0.0/0:0-65535 dst-address=0.0.0.0/0:0-65535
          out-interface=ether1 protocol=all icmp-options=any:any flow=""
          connection="" content="" limit-count=0 limit-burst=0 limit-time=0s
          action=masquerade to-src-address=0.0.0.0 to-src-port=0-65535
    
    [admin@MikroTik] ip upnp interfaces>
    
    Now all we have to do is to add interfaces and enable UPnP:
    [admin@MikroTik] ip upnp interfaces> add interface=ether1 type=external
    [admin@MikroTik] ip upnp interfaces> add interface=ether2 type=internal
    [admin@MikroTik] ip upnp interfaces> print
    Flags: X - disabled
      #   INTERFACE TYPE
      0 X ether1    external
      1 X ether2    internal
    
    [admin@MikroTik] ip upnp interfaces> enable 0,1
    [admin@MikroTik] ip upnp interfaces> .. set enabled=yes
    [admin@MikroTik] ip upnp interfaces>
    

    Additional Resources

    UPnP forum
    © Copyright 1999-2003, MikroTik