PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : IP Adresse über das Device auslesen



mkrebl
14.12.20, 10:02
Hallo,

ich hab ein Netzwerk-Device gegeben, z.B. eth01 und möchte die dazugehörige IP-Adresse ermitteln. Hab das derzeit so gelöst daß ich in der Ausgabe von ip addr show eth01 nach "inet " grepe und mir die IP dann aus dem String dahinter raushole. Aber irgendwie gefällt mir das nicht so richtig, gibt's da eventuell eine bessere Lösung?

lg, Markus

DrunkenFreak
14.12.20, 11:01
Was passt denn an dieser Lösung nicht?

Einziges Problem, das ich sehe, sind mehrere IP Adressen. Das sollte aber auch kein so schlimmes Problem sein. Kommt halt auf die ursprüngliche Anforderung an.

mkrebl
14.12.20, 11:46
Was passt denn an dieser Lösung nicht?

Einziges Problem, das ich sehe, sind mehrere IP Adressen. Das sollte aber auch kein so schlimmes Problem sein. Kommt halt auf die ursprüngliche Anforderung an.

Der Fall daß mehrere IP-Adressen vorhanden sind tritt nicht auf im Kontext dieser Anforderung, aber das "Problem" das ich mit der Lösung hatte ist folgendes: Halt's zwar für eher unwahrscheinlich, aber was wäre wenn sich der Ausgabetext von ip addr show ändert und dieses "inet= " beispielsweise auf einmal anders ausgegeben wird.

Meine Frage ging auch eher so in die Richtung ob es vielleicht irgendein Kommando gibt bei dem ich als Parameter das Device angebe und mir direkt die IP zurückgegeben wird sodaß ich da kein grep usw. brauch. In der Richtung hab ich bis jetzt nämlich nichts gefunden.

lg, Markus

nopes
14.12.20, 11:49
https://linux.die.net/man/1/hostname - check mal -i bzw -I

marce
14.12.20, 12:12
ip --brief addr show eth0

mkrebl
14.12.20, 12:48
ip --brief addr show eth0

Funktioniert leider nicht, --brief wird nicht erkannt, läuft das unter centos eventuell anders?

marce
14.12.20, 13:02
Ich hab hier ein CentOS und da tut's genau das, was Du wohl willst:

[root@vm039 ~]# ip --brief addr show eth0
eth0 UP 192.168.20.39/24
[root@vm039 ~]# ip -V
ip utility, iproute2-ss170501

nopes
14.12.20, 15:17
$ cat /etc/os-release | grep PRETTY_NAME;hostname -i;hostname -I;ip addr show eth0;ip --brief addr show eth0
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
127.0.0.1
192.168.100.127
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether dc:a6:32:c8:b6:79 brd ff:ff:ff:ff:ff:ff
inet 192.168.100.127/24 brd 192.168.100.255 scope global eth0
valid_lft forever preferred_lft forever
Option "-brief" is unknown, try "ip -help".
Vielleicht kannst du ja mal schaun, ob du da einen Alias für uns nicht CentOSler spenden kannst ;)

reni
14.12.20, 19:31
--brief tut's aber bei oS Leap 15.2 auch:

admine@laptop:~> ip --brief addr show wlan0
wlan0 UP 192.168.0.2/24

temir
18.12.20, 14:53
SUSE tumbelweed kennt "--brief" sowie "-br" aus der manpage:


xmg-core17:~> ip --brief addr show eth0
eth0 UP 192.168.1.21/24 mac-address

xmg-core17:~> ip -br addr show eth0
eth0 UP 192.168.1.21/24 mac-address

Nachtrag:
CentOS 7.7.1908 / 7.9.2009 kennt auch beide Optionen.