Aller au contenu

miniupnpc

Principe

Via le protocole UPnP IGD, il est possible de configurer à la volée des expositions de port sur sa box internet sans rentrer dans les interfaces de configuration. Ce mécanisme est particulièrement utile pour les applications pair-à-pair en IPV4.

Installation

sudo apt-get install miniupnpc

Utilisation

# lister les redirections
upnpc -l
# exposer le port 80 de la machine courante en externe
upnpc -r 80 TCP

# rediriger le port 80 de la machine sur le port externe 20080
upnpc -a 192.168.0.30 80 20080
# supprimer la redirection
upnpc -d 20080 TCP

# récupération IP publique
upnpc -s | grep ExternalIPAddress | cut -c21-

Notes

Désactiver la fonctionnalité sur sa box

Pour des raisons de sécurité, il semble raisonnable de désactiver le protocole "UPnP IGD" correspondant sur sa box s'il n'est pas utile (il y a des moyens plus propre pour exposer temporairement une application tel ngrok)

Cas des IPv4 partagées

Avec free par exemple, les clients peuvent désormais partager la même IP avec des plages de ports différents (c.f. Free peut attribuer la même adresse IP à plusieurs abonnés).

Il sera alors impossible d'exposer certains ports à moins de demander une IPv4 full stack (Freebox : une option pour ne plus partager son IP avec d'autres abonnés)

Resources