Statische IP-Adresse auf eth0 einstellen.

L I V E Stammtisch ab 20:30 Uhr im Chat
  • ich habe da ein ziemlich blödes Problem und zudem noch viel weniger Als wenig Ahnung in Sachen Netzwerk. Aber ich will mal schildern, um was ws eigentlich geht und was ich erreichen möchte (aber nicht hin bekomme):

    ich habe einen Pi-3b im Vereinsheim installiert der eine Zutrittskontrolle über RFID realisiert. Das funktioniert alles wunderbar. der Pi arbeitet absolut headless, d.h. kein Monitor, keine Tastatur, keine Maus sind angeschlossen. Auf dem Gelände des Vereins existiert zwar 230V AC aber das war es auch schon, d.h. wir haben da keinen Internet-Zugang. Wir wollen auch keinen haben.

    Da der Pi recht beengt in einem Blechgehäuse sitzt, kommt man außer an die USB-Anschlüsse und den LAN-Anschluß nur mit gebrochenen Fingern an die ganzen anderen Anschlüsse. Also wäre es ideal, wenn man für kleine Wartungsaufgaben den Pi remote bedienen kann. Ich denke da an eine Verbindung per Ethernet-Kabel zwischen meinem Laptop und besagtem Pi. Hierzu möchte ich zum beispiel sie statische IP 192.168.100.200 für den eth0 einstellen.

    ich habe daher folgendes gemacht:


    $> sudo service dhcpcd stop
    $> sudo systemctl disable dhcpcd

    in der Datei /etc/network/interfaces habe ich folgendes eingetragen:
    auto eth0
    allow-hotplug eth0
    iface eth0 inet static
    address 192.168.100.200
    netmask 255.255.255.0

    network 192.168.100.0

    broadcast 192.168.100.255

    gateway 192.168.100.1

    alles andere ist raus geworfen.

    wenn ich ifconfig aufrufe scheint sich auch alles richtig zu verhalten. der Pi kann sich selbst auch anpingen. wenn ich nun über crossover Kabel meinen Laptop an den Pi anschließe dann kann der laptop den pi nicht anpingen und umgekehrt auch nicht. Interessanterweise wird beim ping vom laptop zum pi zwar ausgegeben, dass der Zielhost nicht erreichbar ist, aber in der Ping-Statistik werden 4 Pakete gesenget, 4 Empfangen und 0% Verlust angezeigt.

    Wenn ich in putty auf den Pi über die ip gehen will bringt mir putty die FM

    Putty fatal Error

    Network error: No route to host

    Was mache ich hier falsch? Ich möchte nicht unbedingt über dhcp wenn es nicht sein muss

    Danke im Voraus.

  • Hierzu möchte ich zum beispiel sie statische IP 192.168.100.200 für den eth0 einstellen.

    gateway 192.168.100.1

    alles andere ist raus geworfen.

    Was mache ich hier falsch? Ich möchte nicht unbedingt über dhcp wenn es nicht sein muss

    BTW: Ein gateway wird nicht benötigt.

    Hat dein Laptop auf seinem lan-Interface auch eine IP-Adresse aus dem 100.-er Subnetz?

    Besser als die interfaces-Datei wäre systemd-networkd und statt 100.-er-Subnetz, z. B. .101., denn .100.1 haben manche Modems & Co.

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

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • seit wann macht man das in der interfaces ?

    dienst status überprüfen:

    sudo service dhcpcd status

    läuft er nicht dann:

    sudo service dhcpcd start

    sudo systemctl enable dhcpcd

    sudo service dhcpcd status

    dann :

    sudo nano /etc/dhcpcd.conf

    scrollen in der datei bis du das findest:

    #example static ip configuration

    interface eth0

    static ip_address=192.168.178.4/24

    static routers=192.168.178.1

    static domain_name_servers=192.168.178.1

    deine ip adressen natürlich einsetzen/verwenden

    edit: in der interfaces sollte auf manuell gestellt sein, hast du ja aber gemacht ...

    viel glück

    so long

    --- wer lesen kann, ist klar im Vorteil ---

    --- man sollte keine Dummheit zweimal begehen, die Auswahl ist schließlich groß genug ---

    --- der Fortschritt der Menschheit ist das Werk der Unzufriedenen ---

    --- Freude entsteht aus Mangel an Information ---

    --- Scheiße ist, wenn der Furz etwas wiegt ---

    Einmal editiert, zuletzt von Perlchamp (12. Mai 2020 um 13:30)

  • ... in meine Configdateien geguckt und benutze "manual" statt "static".

    OK, ... wie sind die weiteren Zeilen bzw. auf welche Art und Weise wird die IP-Adresse dem Interface zugewiesen?

    EDIT:

    Als Beispiel meine anonymisierte *.network-Datei, mit Hilfe derer dem eth0-Interface 2 statische IP-Adressen zugewiesen werden:

    Spoiler anzeigen

    BTW: So ist mein PI direkt aus dem Internet erreichbar und falls erforderlich auch per direkter Kabelverbindung (ohne Router) erreichbar.

    Spoiler anzeigen
    Code
    :~# route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         46.###.###.##   0.0.0.0         UG    0      0        0 eth0
    10.9.0.0        10.9.0.2        255.255.255.0   UG    0      0        0 tun0
    10.9.0.2        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
    46.###.###.##   0.0.0.0         255.255.255.192 U     0      0        0 eth0
    192.168.22.0    0.0.0.0         255.255.255.0   U     0      0        0 wg0
    192.168.174.0   0.0.0.0         255.255.255.0   U     0      0        0 eth0
    192.168.178.0   10.9.0.2        255.255.255.0   UG    0      0        0 tun0

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

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

    2 Mal editiert, zuletzt von rpi444 (12. Mai 2020 um 13:52)

  • Hallo rpi444.

    In meinem Fall war es so, dass ich mir beim Pi4 eine Netzwerkbrücke für libvirt-lxc zusammengebastelt habe, damit alle Container im normalen Subnetz mit unterschiedlichen IP-Adressen sein können. Das Problem war, dass die Dokumentationen nur für die Interfaces geschrieben sind und sich dann auch noch gegenseitig verlinken. Das funktionierte zwar, dadurch ging aber die Verbindung zur dhcpcd.conf verloren und alle anderen Schnittstellen konnten nicht mehr angesprochen werden. Die "roten x" bei der Verbindung waren permanent sichtbar.

    Mit static ging es nicht, daher musste ich manual nehmen. Warum weiß ich nicht mehr. Nach ein paar Tagen ausprobieren habe ich folgende Einstellungen gehabt, um die dhcpcd.conf zusammen mit der Interfaces funktionsfähig zu bekommen:

    Interfaces

    dhcpcd.conf

    Code
    denyinterfaces eth0
    
    interface br0
    static ip_address=192.168.2.10/24
    static routers=192.168.2.1
    static domain_name_servers=192.168.2.5
    static domain_search=
    noipv6

    Getestet mit Raspbian Buster. Über eine offizielle Dokumentation für Netzwerkbrücken in der dhcpcd.conf würde ich mich freuen.

  • Hallo rpi444.

    In meinem Fall war es so, dass ich mir beim Pi4 eine Netzwerkbrücke für libvirt-lxc zusammengebastelt habe, ...

    OK, aber das will der TE ja nicht, denn er schreibt u. a.:

    Zitat


    Ich denke da an eine Verbindung per Ethernet-Kabel zwischen meinem Laptop und besagtem Pi.

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

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • BTW: Ein gateway wird nicht benötigt.

    Hat dein Laptop auf seinem lan-Interface auch eine IP-Adresse aus dem 100.-er Subnetz?

    Besser als die interfaces-Datei wäre systemd-networkd und statt 100.-er-Subnetz, z. B. .101., denn .100.1 haben manche Modems & Co.

    Wie bekomme ich heraus, ob mein Laptop auch eine IP aus dem 100-er Subnet hat? Normalerweise ist der Laptop ja über WLAN verbunden und das Ganze über eine Fritzbox im Internet. Da ist das Subnet dann 178.

    Wo finde ich diese systemd-networkd Datei und wie gehe ich da genau vor?

  • Wie bekomme ich heraus, ob mein Laptop auch eine IP aus dem 100-er Subnet hat? Normalerweise ist der Laptop ja über WLAN verbunden und das Ganze über eine Fritzbox im Internet. Da ist das Subnet dann 178.

    Na wenn Du dem lan-Interface deines laptops die IP-Adresse aus dem 100-er Subnet nicht manuell (d. h. via Kommandozeile) zugewiesen hast, wird diese auch nicht vorhanden sein.

    Wenn Du Linux auf deinem Laptop hättest, dann mit:

    Code
    ip a

    nachschauen.

    Manuell zuweisen (auf deinem Laptop) kannst Du mit:

    Code
    sudo ip addr add 192.168.100.12/24 broadcast 192.168.100.255 metric 100 dev eth0
    sudo ip link set eth0 up
    ip a
    arp -av
    ping -c 3 192.168.100.200

    Evtl. ist noch ein statischer arp-cache-Eintrag erforderlich.

    EDIT:

    Betr. systemd-networkd siehe die manpages:

    Zitat


    man systemd-networkd

    man systemd.network

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

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

    Einmal editiert, zuletzt von rpi444 (12. Mai 2020 um 14:11)

  • Daher bezog sich meine Antwort auf "static" und "manual". Vielleicht klappt es mit austauschen und ausprobieren. In seinem Fall würde ich jedoch auch nicht die interfaces benutzen.

    Nein, ... wenn er die interfaces-Datei benutzen will, ist "static" schon OK.

    Ja, deshalb habe ich auch systemd-networkd empfohlen (siehe oben).

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

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Na wenn Du dem lan-Interface deines laptops die IP-Adresse aus dem 100-er Subnet nicht manuell (d. h. via Kommandozeile) zugewiesen hast, wird diese auch nicht vorhanden sein.

    Wenn Du Linux auf deinem Laptop hättest, dann mit:

    Code
    ip a

    nachschauen.

    und genau da haben wir es schon. Nein auf dem Laptop ist Windoofs 10 drauf. Und ich dachte, dass Putty die Geschichte mit dem Subnetz aus der angesprochenen IP selbst "errechnet"

  • und genau da haben wir es schon. Nein auf dem Laptop ist Windoofs 10 drauf. Und ich dachte, dass Putty die Geschichte mit dem Subnetz aus der angesprochenen IP selbst "errechnet"

    Nein, Putty macht das nicht.

    Unter Windows10 wird man dem lan-Interface auch manuell (Kommandozeile und/oder GUI?) eine statische IP-Adresse aus dem 100.-er Subnet zuweisen können. Auf dem PI muss dann ein Dienst (sshd, telnetd, etc., ...) auf auf der statischen IP-Adresse 192.168.100.200 erreichbar sein.

    EDIT:

    Nur der Vollständigkeit halber: Es gibt noch (mind.) zwei weitere Möglichkeiten für die direkte Kabelverbindung zwischen Laptop und PI:

    1. Mit Hilfe der LL-IP-Adressen (die "automatisch" zugewiesen werden sollten).

    2. Mit systemd-network am lan-Interface des PI, den DHCP-Server (des PI) aktivieren/benutzen.

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

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

    3 Mal editiert, zuletzt von rpi444 (12. Mai 2020 um 14:34)

  • ich habe es jetzt relativ simpel gelöst.

    in der /etc/dhcpcd.conf habe ich am Ende die eigentlich auskommentierten Zeilen mit Leben gefüllt:

    # Example static IP configuration:

    interface eth0

    static ip_address=http://192.168.xxx.yyy/24

    static ip6_address=fd51:42f8:caae:d92e::ff/64

    static routers=192.168.xxx.1

    static domain_name_servers=192.168.xxx.1 8.8.8.8 fd51:42f8:caae:d92e::1

    # It is possible to fall back to a static IP if DHCP fails:

    define static profile

    profile static_eth0

    static ip_address=http://192.168xxx.yyy/24

    static routers=192.168.xxx.1

    static domain_name_servers=192.168.xxx.1

    # fallback to static profile on eth0

    interface eth0

    fallback static_eth0

    xxx bzw yyy sind die eigenen Werte.

    Wichtig, ich musste dnsmasq und hostapd - was ich zum ausprobieren installiert hatte - wieder komplett deinstallieren und die /etc/network/interfaces wieder von allen Spuren der Versuche befreien.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!