In eigenen Scripts benötigt man oft die eigene IP-Adresse. (wozu?). Mit einer statischen IP-Adresse stellt dies kein Problem dar, meistens erhält man aber eine dynamische IP-Adresse per DHCP oder PPP zugewiesen. Diese IP-Adressen sind per Script schwerer zu verarbeiten, weil man nicht einen festen Wert einstellen kann.

Die IP-Adresse muss dann zur Laufzeit des Scripts ermittelt werden, man erreicht dies mit folgendem Shellscript:

env LC_ALL=C /sbin/ifconfig eth0 | sed -n '/addr:/s/ [^r]*..//gp'

Eine weitere Möglichkeit ist der Befehl:

hostname -i

(das liefert dann z.B. 127.0.0.1)

Nur wenn die Namensauflösung des Systems nicht richtig funktioniert. ( meist /etc/hosts ) probier mal:

hostname -iv

Er holt die IP für diesen Host(Namen) vom DNS System!

Mindestens bei SuSE gehört auch ipaddr zur Standardausstattung. Siehe auch http://www.han.de/~ott/ipaddr/

Frage: Kennt jemand ne einfache Möglichkeit die externe IP zu ermitteln, für den Fall, dass man hinter einem Router mit Masquerading sitzt? -- JanRoehrich 2003-02-01 13:07:51

Das Thema ist falsch: Nicht der Rechner hat eine IP-Adresse, sondern die Schnittstelle. Jede Ethernetkarte hat eine andere IP-Adresse. zusätzlich noch jede Verbindung PPP Und immer die localhost-Adresse 127.0.0.1

Wer braucht, und wofür eine andere Adresse seines Rechners außer der 127.0.0.1 ? Von welcher Schnittstelle? eth0? eth1? ppp? Linux ist da offen!

EigeneIPAdresseErmitteln (zuletzt geändert am 2007-12-23 22:45:25 durch localhost)