# Trouver l'adresse IP externe avec ou sans curl

Pour un serveur NATté (adresse IP locale derrière un firewall), l'adresse de sortie est soit celle du firewall soit une adresse d'OUTBOUND qui lui a été affectée.

Pour la connaitre, divers site propose ce service :

```shell
curl ifconfig.me
curl ipaddr.pub
curl https://www.google.com/search?q=what+is+my+ip+address -s | grep -oE "\b([0-9]{1,3}.){3}[0-9]{1,3}\b" -m1
curl -s http://ipecho.net/plain
curl -s http://whatismyip.akamai.com
```

Si curl n'est pas disponible sur un serveur, si on ne peut pas l'installer, essayer :

```shell
wget -qO- ipaddr.pub/cli
wget -qO- http://ipecho.net/plain
wget -qO- icanhazip.com
```

```shell
dig @ns1.google.com TXT o-o.myaddr.l.google.com +short
dig +short myip.opendns.com @resolver1.opendns.com
```

```shell
host myip.opendns.com resolver1.opendns.com | grep -m2 -oE "\b([0-9]{1,3}.){3}[0-9]{1,3}\b" | tail -n1
```

```shell
nslookup -query=TXT o-o.myaddr.l.google.com ns1.google.com | grep -m2 -oE "\b([0-9]{1,3}.){3}[0-9]{1,3}\b" | tail -n1
nslookup myip.opendns.com resolver1.opendns.com | grep -m2 -oE "\b([0-9]{1,3}.){3}[0-9]{1,3}\b" | tail -n1
```