Unter Windows konnte ich die WLAN-Verbindung über die Ethernet-Verbindung meines Laptops überbrücken, sodass eine Reihe von Geräten, die nur für Ethernet geeignet sind, die WLAN-Verbindung unterbrechen konnten (Raspberry Pi, Xbox usw. usw.). Ich versuche jetzt, dasselbe in Ubuntu zu tun, dh das Setup wäre:
WLAN-Router ---> WLAN auf dem Laptop ---> Brücke zum Ethernet ---> Gerät, für das das Internet an den Ethernet-Port angeschlossen werden muss
Jetzt habe ich versucht, dies mit brctl in Ubuntu zum Laufen zu bringen
Ich habe den folgenden Befehl verwendet:
sudo brctl addif br0 eth0 wlan0
Und erhalten Sie den folgenden Fehler:
can't add wlan0 to bridge br0: Operation not supported
Ich hoffe, dass jemand helfen kann, da ich es ablehne zu glauben, dass etwas, das ich unter Windows sehr einfach tun kann, unter Linux nicht möglich ist.
Wenn Sie weitere Informationen benötigen, lassen Sie es mich wissen. Vielen Dank
quelle
Antworten:
Das geht nicht. Sie können keine WiFi-Client-Verbindung überbrücken. Wenn Sie könnten, würden wir WDS nicht brauchen, wir würden nur überbrücken.
Das Problem ist sehr einfach - ein Zugangspunkt wird durch die WiFi-Spezifikation daran gehindert, Datenverkehr über das WiFi-Netzwerk zu übertragen, es sei denn, etwas autorisiert diese Übertragung. Dies ist größtenteils ein Relikt aus der Zeit, als WiFi-Netzwerke sehr langsam waren und wenn überhaupt schlechte Sicherheit hatten.
Die Bridge hat nur eine Client-Verbindung zum Access Point. Dies autorisiert den Access Point nur zur Übertragung des für die Bridge bestimmten Datenverkehrs. Da alle mit der Bridge verbundenen Computer keine Clients des Zugriffspunkts sind, hat der Zugriffspunkt keinen Grund, für sie gebundenen Datenverkehr über die WiFi-Verbindung zu senden. Also wird es nicht so sein.
Leider reicht WiFi wie Ethernet aus, sodass man leicht erwarten kann, dass es sich wie Ethernet verhält. Aber es ist gerade anders genug, um dich zu beißen.
Die WDS-Konfiguration ist eine spezifische Berechtigung für einen Access Point, Datenverkehr zu senden, der für keinen seiner Clients gebunden ist. Wenn beide Endgeräte WDS unterstützen, enthalten sie die Adresse des Überbrückungsendpunkts sowie die Adresse des Ziels, wodurch der Zugriffspunkt zum Senden des Datenverkehrs autorisiert wird.
Sie müssen etwas anderes als Bridging verwenden, um dies zu tun. Zum Beispiel Routing mit NAT. Sie können auch den Vier-Adressen-Modus verwenden, wenn beide Enden der WLAN-Verbindung dies unterstützen.
quelle
Ich hatte ein ähnliches Problem mit LXC. Ich habe das Überbrückungsproblem bei WLAN-Geräten umgangen. Zunächst benötigen Sie ein Ersatz-Ethernet-Gerät im Computer. Der Trick besteht darin, eine Route vom Ethernet-Gerät zum WLAN zu erstellen.
Wählen Sie in der Serverdatei / etc / network / interfaces ein nicht verwendetes Netzwerk für Ihre virtuellen Hosts aus, dh 10.0.0.0. Weisen Sie Ihrer Ersatz-Ethernet-Schnittstelle eine IP zu, hier ist es eth0 und überbrückt sie folgendermaßen:
Sobald dies erledigt ist, können Sie den MASQUERADE-Weg gehen, wie Kostyantyn hier zuvor geantwortet hat. Diese sollten sich in rc.local oder in einem Skript befinden, das Sie beim Booten oder vor dem Starten der virtuellen Domänen ausführen müssen:
Konfigurieren Sie auf dem virtuellen Server statische IP-Adressen in / etc / network / interfaces. Ich verwende das Netzwerk 10.0.0.0. Wenn Sie weitere virtuelle Hosts erstellen, werden Sie wahrscheinlich 3 verwenden, und so weiter. Wenn Sie viele haben, können Sie in Betracht ziehen, einen DHCP-Server für diese zu installieren. Die .1 ist das zuvor konfigurierte Gateway.
Konfigurieren Sie auch einen DNS-Server, meiner war der Netzwerk-Router, in /etc/resolv.conf:
Hoffe das hilft
quelle
Ich denke, was Sie wirklich brauchen, ist keine Brücke, aber auch:
oder
1) erstelle
forwarding_enable_file.sh
mit folgendem Inhalt:2) Führen Sie die Datei aus:
3) Geben Sie auf dem Rest des Hosts Ihre Ubuntu-Box als Gateway an.
wo ubuntu-ip sollte von Ihrer ubuntu-Feld IP - Adresse ersetzt werden , dh 192.168.1.10
4) Pingen Sie eine IP-Adresse, z. B. 8.8.8.8, von anderen Hosts aus:
5) Überprüfen Sie Ihre DNS-Einstellungen, indem Sie eine Domain pingen, dh:
6) Wenn Schritt 4) funktioniert und 5) nicht, dann haben Sie Probleme mit Ihren DNS-Einstellungen. Führen Sie in diesem Fall Folgendes mit Root-Rechten aus:
Führen Sie Schritt 5) erneut aus.
Weitere Informationen zu resolv.conf finden Sie hier .
quelle
Sie müssen die Schnittstellen herunterfahren, bevor Sie sie überbrücken können.
ifconfig eth0 down
ifconfig wlan0 down
quelle
service network-manager stop
, dann mach dein Ding, beginne es erneut mitservice network-manager start
quelle