#!/bin/bash
# All credits for this one liner go to the author of this blog:
# http://scytale.name/blog/2010/01/fritzbox-wan-ip
# As the author explains its not required to tamper with the provided IP for the FritzBox
# as it always binds to that address for UPnP.
# Disclaimer: It might be necessary to make the script executable
curl -s -H 'Content-Type: text/xml; charset="utf-8"' \
-H 'SOAPAction: urn:schemas-upnp-org:service:WANIPConnection:1#GetExternalIPAddress' \
--data-binary '' \
http://169.254.1.1:49000/upnp/control/WANCommonIFC1 | \
sed -n -e 's#^.*\(.*\).*$#\1#p'