Statische IP-Adresse mit WLAN

Registriere dich jetzt, um exklusive Vorteile zu genießen! Als registriertes Mitglied kannst du Inhalte herunterladen und profitierst von einem werbefreien Forum.
Mach mit und werde Teil unserer Community!
  • Hallo,

    ich möchte auf einem RP2B squid als Proxy headless betreiben und möchte die Netzwerkkonfiguration gleich auf die neue Art mit systemd-networkd realisieren.

    Ich habe dazu diese Anleitung (Variante5) herangezogen:



    Leider wird darin nicht erklärt, wie man das mit WLAN auf die Beine stellt. Wenn ich versuche über raspi-config WLAN einzurichten, erhalte ich die Meldung:

    Code
    could not communicate with wpa_supplicant


    Ich vermute, dass raspi-config nicht dafür ausgelegt ist mit systemd-networkd zusammen zu arbeiten.


    Deswegen mein Frage, wie bekomme ich die WLAN-Verbindung eingerichtet?



    BTW: Ich habe das neuste Raspbian-Buster Lite vom 26.9.2019 installiert. Bevor ich der obigen Anleitung gefolgt bin, hatte ich erfolgreich eine WLAN-Verbindung mit raspi-config eingerichtet, aber eben mit dhcp.

  • Dann mach das wieder rückgängig und probiere es in der /etc/dhcpd.conf mal so:

    Code
    interface wlan0
    static ip_address=192.168.0.10/24
    static routers=192.168.0.1
    static domain_name_servers=192.168.0.1 8.8.8.8

    Die IP musst du halt auf dein Netzwerk bzw. Router anpassen.

    Mit ifconfig kannst du zuvor deine aktuelle IP rausfinden.

  • Leider wird darin nicht erklärt, wie man das mit WLAN auf die Beine stellt. Wenn ich versuche über raspi-config WLAN einzurichten, erhalte ich die Meldung:

    Code
    could not communicate with wpa_supplicant


    Ich vermute, dass raspi-config nicht dafür ausgelegt ist mit systemd-networkd zusammen zu arbeiten.


    Deswegen mein Frage, wie bekomme ich die WLAN-Verbindung eingerichtet?

    Bei WLAN-Einrichtung musst Du trennen, zwischen 1. Herstellung der WLAN-Verbindung und 2. dem wlan-Interface eine IP-Adresse zuweisen.

    Wenn es eine statische IP-Adresse ist, kann diese dem WLAN-Interface auch ohne eine bestehende WLAN-Verbindung zugewiesen werden. BTW: Wenn Du beiden Interfaces (eth0 und wlan0) eine IP-Adresse zuweist, dann sollte diese aus verschiedenen Subnetzten sein. D. h. dein PI sollte nicht gleichzeitig per LAN und per WLAN mit dem Router verbunden sein.

    Die Zuweisung der IP-Adresse für das wlan-Interface kann mit systemd-networkd genau so gemacht werden, wie Du das oben für das eth0-Interface schon beschrieben hast. Die WLAN-Verbindung mit dem wpa_supplicant zum WLAN-Router, kannst Du vor oder nach (wenn die IP-Adresse statisch zugewiesen wird) dem zuweisen der IP-Adresse für das wlan-Interface machen. Wenn die Zuweisung der IP-Adresse per dhcp erfolgt, musst Du die WLAN-Verbindung als erstes herstellen.

    Zum Herstelen der WLAN-Verbindung kannst Du dir eine service-unit schreiben. Beispiele findest Du im Internet oder besser (weil von den devs des wpa_supplicant), im Archiv der source code für den wpa_supplicant.

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

  • Dann mach das wieder rückgängig und probiere es in der /etc/dhcpd.conf mal so:

    Ich habe die Variante über systemd-networkd gewählt, weil das die zukünftige Variante sein soll. Ich würde das gerne so installieren, dass ich nicht mehr so bald dran rumfummeln muss.


    Bei WLAN-Einrichtung musst Du trennen, zwischen 1. Herstellung der WLAN-Verbindung und 2. dem wlan-Interface eine IP-Adresse zuweisen.

    Wenn es eine statische IP-Adresse ist, kann diese dem WLAN-Interface auch ohne eine bestehende WLAN-Verbindung zugewiesen werden.

    So hatte ich mir das schon gedacht. Danke für die Bestätigung.

    Quote
    BTW: Wenn Du beiden Interfaces (eth0 und wlan0) eine IP-Adresse zuweist, dann sollte diese aus verschiedenen Subnetzten sein. D. h. dein PI sollte nicht gleichzeitig per LAN und per WLAN mit dem Router verbunden sein.

    Das wäre blöd, denn genau das war mein Ziel. Warum geht das nicht, bzw. was würde passieren, wenn man es doch macht? Oder hast du evtl. einen Link oder ein Schlagwort, über das ich mir nähere Infos dazu ergoogeln kann?

    Bei ubuntuusers habe ich inzwischen eine Anleitung gesehen, in der die Konfigurationsdateien mit Prioritäten versehen werden. Könnte man es darüber so regeln, dass z.B. die LAN-Verbindung genutzt wird, wenn vorhanden und sonst WLAN?

    Quote

    Die Zuweisung der IP-Adresse für das wlan-Interface kann mit systemd-networkd genau so gemacht werden, wie Du das oben für das eth0-Interface schon beschrieben hast. Die WLAN-Verbindung mit dem wpa_supplicant zum WLAN-Router, kannst Du vor oder nach (wenn die IP-Adresse statisch zugewiesen wird) dem zuweisen der IP-Adresse für das wlan-Interface machen. Wenn die Zuweisung der IP-Adresse per dhcp erfolgt, musst Du die WLAN-Verbindung als erstes herstellen.

    Klingt logisch, aber ich habe bisher noch nicht verstanden, wie überhaupt festgelegt wird, in welcher Reihenfolge was abgearbeitet wird. Aber das lasse ich erst mal beiseite, damit esnicht unnötig kompliziert wird, zumal ich statische Adressen verwenden möchte.

    Quote

    Zum Herstelen der WLAN-Verbindung kannst Du dir eine service-unit schreiben. Beispiele findest Du im Internet oder besser (weil von den devs des wpa_supplicant), im Archiv der source code für den wpa_supplicant.

    Das dürfte der Knackpunkt sein. Da ich sehr wenig mit Raspi und Linux mache, werde ich eine Anleitung brauchen, in der jemand das mehr oder weniger Schritt für Schritt vorbetet.
    Ist es nach meinen Änderungen "normal", dass WLAN nicht mehr über raspi-config einzurichten ist?

    Es ist aber schon mal gut zu wissen, dass es mit wpa-supplicant funktionieren sollte. Also muss ich nur noch die Konfiguration hinbekommen. Ich denke, dass diese Anleitung hier zum Ziel führen sollte.


    Erst mal Danke für die Infos. Ich werde Bescheid geben, wie es ausgegangen ist.

  • Das wäre blöd, denn genau das war mein Ziel. Warum geht das nicht, bzw. was würde passieren, wenn man es doch macht? Oder hast du evtl. einen Link oder ein Schlagwort, über das ich mir nähere Infos dazu ergoogeln kann?

    Bei ubuntuusers habe ich inzwischen eine Anleitung gesehen, in der die Konfigurationsdateien mit Prioritäten versehen werden. Könnte man es darüber so regeln, dass z.B. die LAN-Verbindung genutzt wird, wenn vorhanden und sonst WLAN?

    Wenn Du die Kenntnisse hast das richtig zu konfigurieren, kann man das machen. Priorisieren allein wird nicht immer reichen. Die zugewiesenen IP-Adressen gehören dem Kernel und nicht dem Interface, d. h. Du musst mit der entsprechenden Konfiguration den Kernel anweisen den Traffic so zu regeln/steuern/akzeptieren wie Du das haben willst.

    Evtl. musst Du auch policy routing konfigurieren, wenn beide Interfaces up sind.

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

  • Ich habe das gerade auf einem PC mit Mint 18.3, der sowohl über WLAN, als auch über LAN verbunden ist, getestet.

    Nach diesem Artikel hier habe ich mir die Routingtabelle anzeigen lassen und gesehen, dass unterschiedliche Metriken eingestellt sind. Der Netzwerkverkehr funktioniert einwandfrei, zumindest bei meinem kurzen Test.


    Policy basiertes Routing scheint mir der Beschreibung nach nicht notwendig zu sein. Mein Ziel ist es, dass immer die LAN-Verbindung verwendet wird, wenn diese besteht, und sonst WLAN. Dafür scheint mit Metric-basiertes Routing genau richtig zu sein.

    Wenn ich das richtig sehe, dann brauch ich dafür nur in den Dateien eth0.networkd und wlx.networkd folgendes einzutragen:

    Code
    [Route]Metric=100 (200)


    Ich habe allerdings noch keine Erklärung gefunden, warum nicht beide Schnittstellen gleichzeitig mit dem Router verknüpft sein und im gleichen Subnetz liegen dürfen. Vor allen Dingen, wenn die Adressen alle dem Kernel gehören und demzufolge dieser sämtlichen Netzwerkverkehr bearbeitet, sollte es doch kein Problem sein, über welche der vorhanden Schnittstellen der Datenverkehr abgewickelt wird. Ich vermute, dass der Router und alle anderen beteiligten Computer auf IP-Ebene im LAN in der WLAN- und LAN-Schnittstelle zwei verschiedene Geräte "sehen".

  • Wenn ich das richtig sehe, dann brauch ich dafür nur in den Dateien eth0.networkd und wlx.networkd folgendes einzutragen:


    Vor allen Dingen, wenn die Adressen alle dem Kernel gehören und demzufolge dieser sämtlichen Netzwerkverkehr bearbeitet, sollte es doch kein Problem sein, über welche der vorhanden Schnittstellen der Datenverkehr abgewickelt wird. Ich vermute, dass der Router und alle anderen beteiligten Computer auf IP-Ebene im LAN in der WLAN- und LAN-Schnittstelle zwei verschiedene Geräte "sehen".

    BTW: Die Endung der Datein sollte ".network" sein.


    Doch, es gibt Dienste bzw. Traffic bei denen/dem es sehr wohl wichtig ist, dass der Datenverkehr nur über eine bestimmte Schnittstelle statt findet. Aber ok, mach es so wie Du es für richtig findest und wenn es zu deiner Zufriedenheit funktioniert ist es ja gut und wenn nicht, dann hören wir evtl. von dir.

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

  • warum nicht beide Schnittstellen gleichzeitig mit dem Router verknüpft sein und im gleichen Subnetz liegen dürfen

    Sie dürfen schon, allerdings kann es zu unschönen Effekten kommen (stp-Probleme, fälschliche Loop-Erkennung, etc.).

    Wenn du nichts zu sagen hast, sag einfach nichts.

  • BTW: Die Endung der Datein sollte ".network" sein.

    So hatte ich das hier auch gespeichert, aber dann falsch gepostet. Danke für den Hinweis.

    Quote

    Doch, es gibt Dienste bzw. Traffic bei denen/dem es sehr wohl wichtig ist, dass der Datenverkehr nur über eine bestimmte Schnittstelle statt findet. Aber ok, mach es so wie Du es für richtig findest und wenn es zu deiner Zufriedenheit funktioniert ist es ja gut und wenn nicht, dann hören wir evtl. von dir.


    So war das nicht gemeint. Ich versuche zu verstehen, worin das Problem liegt. llutz Hinweis auf stp lässt mich ohne Kenntnis der genauen Funktionsweise erahnen, warum es Probleme geben könnte.

    Ich lasse das WLAN erst mal weg und beschäftige mich später damit.



    Spricht etwas dagegen, dass ich einer Schnittstelle mehrere IP-Adressen zuweise?


    Meine /etc/systemd/network/eth0.network sieht so aus:

    Der RP ist damit über beide Adressen erreichbar.

    Mit der Konfiguration, die ich zuerst verwendet habe, hat der RP zwar grundsätzlich auch funktioniert, aber "ip a" hat einen Fehler ausgegeben.


    BTW: "ifconfig" zeigt mir im Gegensatz zu "ip a" immer nur die erste zugewiesene IP-Adresse an. Ich habe das auch auf Linux Mint 18.3 getestet und dort bekomme ich ebenfalls nur die erste Adresse angezeigt. Unter Windows zeigt mir ipconfig dagegen alle Adressen an.

  • OK, werde ich versuchen zu beherzigen. Da ich schwer windowsgeschädigt bin und nur alle paar Monate mal was mit Netzwerken zu tun habe, kann ich ifconfig wegen der Namensähnlichkeit leichter behalten.

  • Spricht etwas dagegen, dass ich einer Schnittstelle mehrere IP-Adressen zuweise?

    Nein, denn in diesem Fall sind diese IP-Adressen aus verschiedenen Subnetzen.

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