feste IP-Adresse für Eth0-Anschluss einstellen

  • Hallo werte Forengemeinschaft,


    zuerst wünsche ich allen ein gesundes, erfolgreiches Jahr 2021.


    Ich habe wieder einmal ein Anliegen und möchte euch hiermit um eure Mitheilfe bitten:

    Wenn man einen Raspberry, in meinem Fall einen Pi4B, direkt per Netzwerkkabel mit einem Computer verbindet, lauten ja die ersten beiden Stellen der IP- Adresse (so kenne ich es jedenfalls) in der Regel immer gleich, nämlich: 169.254., aber (leider) schon die 3. Stelle nicht mehr. Diese ist dann z.B. 85 oder 105 oder 223, usw.

    (Nur, um es erwähnt zu haben, die 4. Stelle ist für mich unkritisch).

    Mich würde jetzt interessieren, wie oder wo eigentlich diese 169.254.xxx.xxx-IP erzeugt wird, wo sie im Raspberry abgelegt wird UND, was das Wichtigste ist: Kann man diese IP-Adresse auch nachträglich ändern, fest (für den Eth0-Anschluss) einstellen? Wichtig dabei ist jedoch, dass der Aufbau einer Wlan-Verbindung zwischen dem Raspi und dem Router (z.B. ) weiterhin möglich ist, also normal funktioniert.


    Vielen Dank vorab.


    Meisengeier

  • Go to Best Answer
  • 169.254., aber (leider) schon die 3. Stelle nicht mehr. Diese ist dann z.B. 85 oder 105 oder 223, usw.

    (Nur, um es erwähnt zu haben, die 4. Stelle ist für mich unkritisch).

    Mich würde jetzt interessieren, wie oder wo eigentlich diese 169.254.xxx.xxx-IP erzeugt wird, wo sie im Raspberry abgelegt wird UND, was das Wichtigste ist: Kann man diese IP-Adresse auch nachträglich ändern, fest (für den Eth0-Anschluss) einstellen?

    Das ist eine Link-Local-IP-Adresse, die dem Interface durch Autokonfiguration zugewiesen wird, wenn die Zuweisung anderweitig (DHCP oder manuell oder ..) nicht statt finden kann.

    Durch Konfiguration kann man das zuweisen einer LL-IP-Adresse auch nicht zulassen.

    M. E. ist es besser, wenn Du deinen PI so konfigurierst, dass dieser eine IP-Adresse aus dem Subnetz des Routers (W/LAN) hat. Für direkte Verbindungen kann man diese LL-IP-Adresse auch verwenden.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • Hallo rpi444,


    vielen Dank für deine Antwort, welche ich aber ehrlich gesagt, nicht 100%ig verstehe.

    Deshalb möchte ich noch hinzufügen, weil ich denke, dass du die technischen Möglichkeiten mit Sicherheit besser kennst als ich und die Kommunikation so einfacher sein wird, dass am Eth0-Anschluss meines bzw. meiner Raspis (je) eine Netzwerkkamera (direkt) angeschlossen ist, also NICHT über DHCP, wohl aber soll die Wlan-Verbindung weiterhin ganz normal über DHCP "laufen". Das funktioniert ja soweit auch alles, nur muss ich momentan wegen der unterschiedlichen Direkt-Adressen der Raspis z.B. die Kamera 1 auch den Raspi 1 einstellen/betreiben und kann Kamera 1 nicht einfach an Raspi 2 "stecken". Ließen sich nun alle Raspis auf die gleiche Direkt-IP einstellen, könnten die Kameras ebenfalls auf diese 1 Adresse eingestellt werden und ließen sich somit problemlos tauschen.


    Meisengeier

  • Deine eth0 ist offenbar auch auf DHCP eingestellt.

    Es wird aber kein DHCP Server gefunden, als wird diese APIPA Adresse (169.254.x.x) genommen.

    Du kannst in der /etc/dhcpcd.conf auch eine feste IP für die eth0 Schnittstelle vergeben.

    Ich würde es allerdings vermeiden, aus allen PI diesselbe IP zu verwenden.

    Landen die doch mal in einem Netz, gibt es Probleme.

    Stattdessen würde ich die letzte Stelle verändern, z.B.

    PI1 192.168.100.10

    PI2 192.168.100.11

    usw.


    Wenn die Kamera die IP 192.168.100.199 hat, kannst Du die an jeden PI stecken ohne etwas zu ändern. Die Netzmaske ist 255.255.255.0.


    Gruss

  • Du kannst in der /etc/dhcpcd.conf auch eine feste IP für die eth0 Schnittstelle vergeben.

    Wenn Du das willst, dann solltest Du ihm auch zeigen wie das geht, denn er soll evtl. per dhcpcd.conf für das wlan0-Interface eine IP-Adresse vom Router bekommen und für das eth0-Interface keine LL-IP-Adresse.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • ...Ließen sich nun alle Raspis auf die gleiche Direkt-IP einstellen, könnten die Kameras ebenfalls auf diese 1 Adresse eingestellt werden und ließen sich somit problemlos tauschen.

    Ja, das sollte kein Problem sein, da es um das eth0-Interface geht und ein DHCP-Server nicht involviert ist. D. h., Du musst in der dhcpcd.conf-Datei der Pis, das eth0-Interface auf deny setzen und diesem eth0-Interface die feste/statische IPv4-Adresse mit z. B. systemd-networkd (oder gleichwertig) zuweisen.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • Hier ist die dhcpcd.conf eines meiner PIs.

    Dieser PI bekommt aber auf LAN und WLAN eine DHCP Adresse, deswegen sind die "static" Einträge auskommentiert (Zeile 44 - 48).

    Wenn Du das # wegnimmst, den passenden Hostnamen und IPs einsetzt, dann bekommt eth0 eine feste IP.


    Gruss


    Edit: wenn Du die Zeilen für das interface wlan0 kopierst, kannst Du auch eine feste IP auf dem WLAN verwenden.

    Aber immer daran denken: feste IP nur außerhalb des DHCP Bereiches verwenden!

  • Hier ist die dhcpcd.conf eines meiner PIs.

    Ja, aber der TE hat 2 PIs, die über ihr eth0-Interface abwechselnd mit je einer anderen Kameras verbunden werden sollen.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • Na ja, eine IP Adresse wird er aber selbst ändern können - hoffe ich wenigstens.


    Insofern nur kopieren und die IP abändern, dann sollte es doch passen?


    Gruss

  • Hallo,


    vielen Dank für eure weiteren Antworten.

    Wie ich vorhin schon schrieb: Die 4.Stelle ist unkritisch und natürlich stelle ich jede Kamera auf eine andere IP ein, sodass keine doppelt vorkommt. Mir geht es nur darum, ob, wo und wie man für ALLE (meine) Raspis die 3.Stelle nach 169.254. gleich einstellen kann, z.B. auf: 169.254.100.xxx, ohne an Änderung der dhcpcd.conf. Das sei vielleicht noch erwähnt: Die Raspberrys selbst arbeiten vollkommen autark, in keinem gemeinsamen Netzwerk.


    Meisengeier

  • Na ja, eine IP Adresse wird er aber selbst ändern können - hoffe ich wenigstens.

    Ja klar kann er das ändern, aber es wäre nicht erforderlich. Denn man kann die PIs und die Kameras entsprechend konfigurieren.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • ..., ohne an Änderung der dhcpcd.conf. ...

    Wenn Du das willst was Du im Beitrag #3 geschrieben hast, dann vergiss die dhcpcd.conf (für das eth0-Interface) und die LL-IP-Adressen.

    Du musst dem eth0-Interface eine feste IP-Adresse (die nicht aus dem Subnetz des wlan ist) zuweisen und keine LL-IP-Adresse für das eth0-Interface zulassen. Das geht z. B. mit systemd-networkd.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • Diese APIPA Adressen werden selbst generiert, das man da etwas vorgeben kann, wüßte ich nicht.

    Doch, man kann vorgeben, dass gar keine APIPA Adressen für das Interface generiert werden.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • Ich danke Euch für eure Antworten,


    Was ich nicht verstehe: Die vom Raspi selbst erzeugte IP 169.254.xxx.xxx, welche ja auch nach einem Neustart noch "da" ist, muss doch irgendwo gespeichert sein. Man kommt an diesen "Speicher" aber nicht ran, richtig?


    rpi444, du schriebst:

    "Du musst dem eth0-Interface eine feste IP-Adresse (die nicht aus dem Subnetz des wlan ist) zuweisen und keine LL-IP-Adresse für das eth0-Interface zulassen. Das geht z. B. mit systemd-networkd."


    Ich verstehe (wieder) nicht wirklich, was du meinst, habe nur die Datei /etc/systemd/networkd.conf gefunden und da steht nur "DHCP" drin. Frage deshalb: Hättest du hier eventeull ein konkretes Beispiel für die "systemd-networkd" ? Ich hatte bereits vor dieser Anfrage Versuche "gefahren", die Eth0 fest einzustellen, z.B. in der dhcpcd.conf o.ä. Haben alle nicht funktioniert bzw. ich bin an den Raspi gar nicht mehr "rangekommen"!


    Meisengeier

  • Ich verstehe (wieder) nicht wirklich, was du meinst, habe nur die Datei /etc/systemd/networkd.conf gefunden und da steht nur "DHCP" drin. Frage deshalb: Hättest du hier eventeull ein konkretes Beispiel für die "systemd-networkd" ? Ich hatte bereits vor dieser Anfrage Versuche "gefahren", die Eth0 fest einzustellen, z.B. in der dhcpcd.conf o.ä. Haben alle nicht funktioniert bzw. ich bin an den Raspi gar nicht mehr "rangekommen"!

    In der "/etc/systemd/networkd.conf" musst Du nichts ändern bzw. nichts eintragen.

    In der "/etc/dhcpcd.conf" alle Konfigurationszeilen für eth0 kommentieren, mit # oder löschen.

    Dort die Zeile:

    Code
    denyinterfaces eth0

    so eintragen, dass sie wirksam ist.

    Danach die Datei:

    Code
    sudo nano /etc/systemd/network/mylanif.network

    mit dem Inhalt:

    Code
    [Match]
    Name=eth0
    #Host=
    
    [Network]
    DHCP=no
    LinkLocalAddressing=no
    Address=192.168.11.13/24
    Broadcast=192.168.11.255
    ConfigureWithoutCarrier=true

    erstellen. Nach dem speichern und verlassen von nano, Folgendes ausführen:

    Code
    sudo systemctl daemon-reload
    sudo systemctl enable systemd-networkd
    sudo systemctl start systemd-network

    danach die Ausgaben von:

    Code
    ip a
    route -n
    systemctl is-enabled systemd-networkd
    systemctl is-active systemd-networkd

    hier posten.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • Hallo rpi444,


    danke für die Codes.

    (Konnte leider heute erst heute weitermachen, da der Raspi nicht bei mir in der Wohnung steht)


    Was ich vollkommen vergessen habe zu erwähnen: Der eth0-Anschluss muss vor dem Anschluss der Kamera noch "normal" per DHCP funktionieren, also Netzwerkkabel zwischen Fritzbox und Raspi, weil im Raspi erst noch der Wlan-Schlüssel eingetragen werden muss.

    Da wir hier gerade bei einer "festen" eth0-IP sind, kann man den Raspi zusätzlich noch auf eine "feste" Wlan-IP im DHCP-Bereich, z.B. 192.178.168.100, einstellen?


    Aber hier erst mal die Ergebnisse der Codes:


    ip a

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

    inet 127.0.0.1/8 scope host lo

    valid_lft forever preferred_lft forever

    inet6 ::1/128 scope host

    valid_lft forever preferred_lft forever

    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000

    link/ether dc:a6:32:4d:ed:ca brd ff:ff:ff:ff:ff:ff

    inet 192.168.11.13/24 brd 192.168.11.255 scope global eth0

    valid_lft forever preferred_lft forever

    3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

    link/ether dc:a6:32:4d:ed:cb brd ff:ff:ff:ff:ff:ff

    inet 192.168.178.23/24 brd 192.168.178.255 scope global dynamic noprefixroute wlan0

    valid_lft 863925sec preferred_lft 755925sec

    inet6 fe80::9bd6:5c85:c9a3:1f45/64 scope link

    valid_lft forever preferred_lft forever


    route -n

    Kernel-IP-Routentabelle

    Ziel Router Genmask Flags Metric Ref Use Iface

    0.0.0.0 192.168.178.1 0.0.0.0 UG 0 0 0 wlan0

    192.168.11.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

    192.168.178.0 0.0.0.0 255.255.255.0 U 303 0 0 wlan0


    systemctl is-enabled systemd-networkd

    enabled


    systemctl is-active systemd-networkd

    active


    Ich hoffe, ich habe soweit alles richtig gemacht, aussehen tuts so. Bitte um Entschuldigung, weiß leider nicht mehr, wie/wo die Spoiler-Funktion funktioniert.


    Meisengeier

  • Da wir hier gerade bei einer "festen" eth0-IP sind, kann man den Raspi zusätzlich noch auf eine "feste" Wlan-IP im DHCP-Bereich, z.B. 192.178.168.100, einstellen?

    Du meinst 192.168.178.100? Ja das sollte auch möglich sein. Du musst dann die Datei "/etc/systemd/network/mylanif.network" ergänzen mit den Zeilen:

    Code
    [Address]
    Address=192.168.178.100/24
    Broadcast=192.168.178.255

    und nach dem Speichern:

    Code
    sudo systemctl daemon-reload
    sudo systemctl restart systemd-networkd

    ausführen und danach die Ausgaben von:

    Code
    ip a
    route -n

    hier posten.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • Hallo rpi444,


    danke, und ja, natürlich musste es heißen: 192.168.178.xx


    Habe die beiden Zeilen eingefügt und nach dem Ausführen von:

    Code
    sudo systemctl restart systemd-networkd


    bekomme ich nun, auch nach Neustart, keine Verbindung mehr zum Raspi. In putty und danach noch in der Fritzbox habe ich eingetragen: 192.168.178.100. Aber auch 105 brachte nichts. Kann ich versuchen, per eth0 =

    Code
    192.168.11.13

    eine Verbindung zu bekommen oder muss ich jetzt die SD-Karte neu bespielen oder kennst du eine andere Möglichkeit zum Verbindungsaufbau?


    Meisengeier

  • Kann ich versuchen, per eth0 =

    eine Verbindung zu bekommen oder muss ich jetzt die SD-Karte neu bespielen oder kennst du eine andere Möglichkeit zum Verbindungsaufbau?

    Die SD-Karte musst Du nicht neu bespielen, denn wenn es nicht behoben werden kann, kannst Du die in der *.network-Datei zusätzlich eingefügten Zeilen, kommentieren.


    Warum und wo hast Du 192.168.178.100 in der FritzBox eingetragen? Dein PI ist doch per WLAN mit der FritzBox verbunden, oder? Mach mal eine direkte Kabelverbindung zwischen deinem PI und einem geeigneten Gerät. Konfiguriere das LAN-Interface des Gerätes mit einer IP-Adresse aus dem Subnetz 192.168.11.0/24 und mach danach einen ping oder einen arping auf die .11.13-er-IP-Adresse des PI.

    Welchen Dienst auf dem PI willst Du via eth0-Interface des PI erreichen? Hat das in der Vergangenheit so schon funktioniert bzw. ist der Dienst auf dem PI, für den Zugriff via eth0-Interface, konfiguriert/geeignet?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden