Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Host IP filtern - Latein am ende
#1
für mich ist es jetzt hier an der stelle noch " Guten Abend "
Ich schlage mich gerade mich einem Problem rum, was zwei meiner Server betrifft.

der kleine "Ubuntu 22.04.5 LTS" VServer und der GROSSE "Debian GNU/Linux 13 (trixie)"

Mein vorhaben war, in einem bash script die system IP sicher zu ermitteln. mein erster Ansatz war der folgende

Code:
ip route get 1.1.1.1 2>/dev/null | awk '{print $7; exit}'
Debian Liefert das richtige Ergebnis, Unbuntu leider nur eine leere Zeile.

bei dem kleinen bekam ich die richtige antwort erst bei print $5 anstelle von print $7
Code:
ip route get 1.1.1.1 2>/dev/null | awk '{print $5; exit}'

ich habe danach raus bekommen, das Debian und Ubuntu da etwas anders die Daten zusammen setzen. Und deswegen bin ich auf eine zweite variante umgestiegen

Code:
ip route get 1.1.1.1 2>/dev/null | awk '{for (i=1;i<=NF;i++) if ($i=="src") print $(i+1)}'

Hier klaptt es jetzt...
Da ich aber jemand bin, der immer eine "Fallback" Möglichkeit haben möchte, habe ich folgendes versucht.

Code:
hostname -I | awk '{print $1}'

... und schon wieder baut der Ubuntu VServer misst, und gibt an der stelle "127.0.0.1" aus. Erst an stelle zwei $2 ist die richtige IP. der Debian machte es auf Anhieb richtig unter $1 richtig.

was ich jetzt suche ist, eine Saubere, einfache Lösung, das ich beiden Systemen sage, prüfe deine Ausgabe. und wenn diese 127.0.0.1 sein sollte, nehme die nächste $2.
Oder ganz anderes eben, um sicher zu stellen, das beide das gleiche Ergebnis liefern, also Ihre IP nach aussen !

... nochmal Oder soll ich mit dem Ergebnis zufrieden sein, und als gegeben hinnehmen ohne Fallback. den eigentlich sollten jetzt beide "immer" ein sauberes Ergebnis liefern.

Probiert doch gerne bei euch mal den Befehl

Code:
ip route get 1.1.1.1 2>/dev/null | awk '{for (i=1;i<=NF;i++) if ($i=="src") print $(i+1)}'

aus, und geb mir mit einem System Info dazu euer Ergebnis.
...
niemand ist eine Insel, und Selbsthilfe heißt nicht sich nur um sich zu kümmern. www.vamp-berlin.de www.grid-berlin.de
Zitieren
#2
Bei mir geben alle 3 Varianten die selbe IP-Adresse aus. Es ist die Adresse, die meine Fritz!Box dem Rechner fürs interne Hausnetz zugeteilt hat. Installiert ist Vanilla OS, also im Prinzip Debian Sid.
[-] The following 1 user says Thank You to Mareta Dagostino for this post:
  • Gau Hax
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste