UPnP (Universal Plug and Play)

Universal Plug and Play, an Intel-centric norm that is used for things like dynamical location and configuration of network devices (it is quite different from Rendezvous in the sense that it covers both service discovery and interaction).

It can used for remote control of Internet Sharing, punching holes in firewalls (MSN and most Bittorrent clients use it for precisely that purpose), etc., but most recently for configuration and media sharing among entertainment devices under DLNA.

Of course, seem to keep wanting to do their own thing, and their own thing only, so there is no native support in - nor is it likely to ever happen, thanks to and the like.

Resources

Category Link Notes
Libraries Brisa

Another Python implementation with Qt bindings

miranda-upnp

The simplest possible Python library, weighing in at 50K of code. Includes discovery, enumeration, the works.

upnpportmapping

a cross-platform library and tool

upnpx

A Cocoa and C++ library for iOS and macOS

gUPnP

a and GTK single-threaded framework to implement UPnP browsing and manipulation (including the creation of graphical tools)

minidlna

A DLNA server and tools

miniupnp

Heartily recommended, includes an easy-to-use IGD port mapping tool

libupnp

The basic stuff

Coherence

a Python framework, featuring an inspector for debugging.

Servers ps3mediaserver

Java DLNA server specifically developed to stream media to the PS3

MediaTomb

trendy, somewhat ugly UX

uShare UPnP A/V Media Server

simple, straightforward, written in C.

Tools UPnP Help

Test cases and tools

gupnp-igd

for poking ports through Internet Gateway Devices

GUPNP Network Camera

a server and control point

Miranda

a UPNP administration tool

This page is referenced in: