Vinzenz Mai: lokale IP über Aufruf von http://localhost/script herausfinden

Beitrag lesen

Hallo Sebastian,

ich fasse die wichtigsten Informationen dieses Threads zusammen:

Ich habe mir auf dem Notebook ein Webserver installiert der von aussen erreichbar ist.

genauer gesagt hast Du eine exotische Kombination: ein iPad (mit unbekanntem Webserver und unbekannter PHP-Version, Jailbreak?), das sich in einem WLAN befinden kann, auf dessen Konfiguration Du keinen Einfluss hast.

[...] Dennoch würd eich gerne trotzdem über localhost die Seite im Browser öffnen und dennoch wissen wie die lokale IP ist. Wie kann man das herausfinden?

ob es auf dem iPad mit Deiner Webserver/PHP-Kombination funktioniert, das kann ich nicht nachvollziehen, da ich kein iPad besitze. Das PHP-Handbuch kennt jedoch drei Funktionen, die Dir dabei helfen können:

# ermittle den lokalen Rechnernamen mit php_uname und dem Parameter 'n'  
# ermittle aus dem Namen mit gethostbyname die lokale IP-Adresse  
echo htmlspecialchars([link:http://au2.php.net/manual/en/function.gethostbyname.php@title=gethostbyname]([link:http://au2.php.net/manual/en/function.php-uname.php@title=php_uname]('n')));  
  
# ab PHP 5.3 ebenfalls möglich:  
# ermittle den lokalen Rechnernamen mit gethostname()  
# ermittle aus dem Namen mit gethostbyname() die lokale IP-Adresse  
echo htmlspecialchars(gethostbyname([link:http://au2.php.net/manual/en/function.gethostname.php@title=gethostname]()));

Sowohl unter einem aktuellen Ubuntu als auch XAMPP 1.7.3 erhielt ich beim Aufruf von http://localhost/myip.php das von Dir gewünschte Resultat, in meinem Fall so etwas wie

192.168.2.33

Im übrigen sollte beides auch bei Verwendung des PHP-CLI wie gefordert funktionieren (nicht getestet).

Freundliche Grüße

Vinzenz, der diesen Beitrag hauptsächlich fürs Archiv verfasst hat.