Le principe est simple, il suffit de se connecter en http sur une page web qui va nous montrer l'adresse IP, puis de l'extraire pour la mettre dans une variable.

En se connectant avec un navigateur à l'adresse http://www.whatismyip.org, le site renvoie seulement une page qui donne l'IP publique.

Si on ouvre un terminal et que l'on entre la commande wget -q -O - http://www.whatismyip.org, la sortie sera la même qu'avec le navigateur.

Nous allons donc utiliser un mini script bash qui récupérera l'adresse IP et la mettra dans une variable $IP_PUBLIQUE que l'on pourra ensuite utiliser :

#!/bin/bash
IP_PUBLIQUE=`wget -q -O - http://www.whatismyip.org`
echo "Adresse IP publique : $IP_PUBLIQUE"

Note : pour créer une page équivalente au site http://www.whatismyip.org, il suffit de rentrer le code php suivant dans une page web :

<?php echo $_SERVER['REMOTE_ADDR']; ?>