Snadné mosty:
Na sourceforge existuje projekt vytvořený právě pro vaši situaci. http://sourceforge.net/projects/bridger/ Dodává se dokonce jako deb balíček.
Pokud jde o „zahazování“ paketů:
-
Zkontrolovali jste, zda je iptables nastaveno na výchozí drop?
sudo iptables --list
pro pole tohoto typu by mělo být uvedeno „ACCEPT, ACCEPT, ACCEPT“. Pokud je to problém, vypněte jej. -
Předáváš vůbec ty pakety, brácho? Ujistěte se, že řádek "net.ipv4.ip_forward=1" NENÍ zakomentován v /etc/sysctl.conf (je výchozí), potom restartujte síť.
-
Promiskuitní režim není podporován pomocí vašeho bezdrátového dongle. (to znamená, že nemůže přijímat pakety, které pro něj nejsou určeny)
Čistý most vs. sdílený most:
-
iface br0 inet dhcp označuje sdílené most, což znamená, že samotný most získá IP a může být koncovým bodem pro provoz.
-
Čistý most nezíská ip adresu a pouze předává provoz mezi dvěma rozhraními
-
Sdílený most Ukázkový konfigurační soubor /etc/network/interfaces (Debian/Ubuntu)
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # Bridge between eth0 and wlan0 auto br0 iface br0 inet dhcp pre-up ip link set eth0 down pre-up ip link set wlan0 down pre-up brctl addbr br0 pre-up brctl addif br0 eth0 wlan0 pre-up ip addr flush dev eth0 pre-up ip addr flush dev wlan0 post-down ip link set eth0 down post-down ip link set wlan0 down post-down ip link set br0 down post-down brctl delif br0 eth0 wlan0 post-down brctl delbr br0
Restartujte síť:sudo /etc/init.d/networking restart
Po provedení složitých změn konfigurace sítě je snazší pouze restartovat, než se ujistit, že se vše restartuje správně.
Myslíte si, že máte problémy se směrováním:
-
Odstranění DNS jako příčiny testováním pomocí
ping 8.8.8.8
. Pokud to funguje, pak máte pravděpodobně problém s DNS ve vaší síti. -
Zkontrolujte svou bránu s
sudo ip route
doufám, že uvidítedefault via 192.168.1.1 dev br0 proto dhcp
(za předpokladu, že vaše brána je 192.168.1.1). Pokud chybí nebo je nesprávné, opravte jejsudo ip route add default via 192.168.1.1
. Otestujte znovu:ping 8.8.8.8
-
Obnovte sdílenou IP mostu s
dhclient br0
a znovu otestujte sping 8.8.8.8
-
Zkontrolujte svá 'slave' rozhraní s
ifconfig
a ujistěte se, že eth0 a wlan0 NEMAJÍ IP adresy. Nyní jsou součástí mostu. Pokud ano, ujistěte se, že jste je odstranili ze všech konfiguračních souborů, nastavte je na statickou 0.0.0.0 nebo tak něco.
Pokud NIC z toho nefunguje, vyzkoušejte tuto aplikaci pro přemostění debianu, a pokud to nefunguje, váš bezdrátový dongle nepodporuje promiskuitní režim. (viz výše)
Pokud to zde kdykoli funguje, restartujte a ujistěte se, že to stále funguje.
Mám několik bezdrátových mostů fungujících na Debian Linuxu a Openwrt, takže tento problém velmi dobře znám.
Vynechali jste jeden důležitý příkaz:Zapomněli jste svému bezdrátovému ovladači sdělit, aby vysílal rámce se 4 adresami (někdy nesprávně/historicky nazývané WDS), což je vyžadováno pro 802.11/bezdrátové přemostění. Proveďte to příkazem "iw dev wlan0 set 4addr on". Použijte příkaz "pre-up" ve vašem souboru rozhraní Debianu na mostě a použijte jej před spuštěním mostu. Všimněte si, že režim rámce se 4 adresami vyžaduje podporu ovladače a některé staré mizerné ovladače nebo hardware 802.11 jej nemusí podporovat.
Také se silně domnívám, že vaše problémy mohly být komplikovány chybou v jádře Linuxu, která konkrétně ovlivňuje přemosťovaná rozhraní. Sám jsem na tuto chybu narazil a musel jsem si zkompilovat vlastní wpa_supplicant ze zdrojů, protože verze v Debianu je stará a ovlivněná. wpa_supplicant a hostapd sdílejí společnou kódovou základnu, ale nejsem si zcela jistý, že to ovlivnilo hostapd stejně jako wpa_supplicant.
Zde je řešení problému:
https://w1.fi/cgit/hostap/commit/?id=e6dd8196e5daf39e4204ef8ecd26dd50fdca6040
Mám dojem, že je to ve verzi 2.5 a vím, že je to v aktuálním zdroji 2.6. Aktuální verze Debianu je 2.4, která je nefunkční. Narušte projekt Debian a aktualizujte jejich balíčky wpasupplicant a hostapd.
Zde je ukázková konfigurace pro klienta bezdrátového mostu používajícího WPA/WPA2 s bezdrátovým mostem mezi rozhraními wlan0 a eth0, přičemž hostitel získá DHCP adresu na rozhraní br0 (nahraďte „dhcp“ za „manuální“ pro žádnou IP adresu). Pro situaci, kdy chcete být AP, zahrňte příkazy interface=a bridge=do hostapd.conf a vynechejte příkazy wpa-* níže.
Ve vašem souboru /etc/network/interfaces:
allow-auto br0
iface br0 inet dhcp
bridge_ports wlan0 eth0
bridge_stp off
bridge_waitport 5
bridge_fd 0
wpa-ssid mynetwork
wpa-psk abc123abc123abc123abc123abc123abc123abc123abc123abc123abc123
wpa-iface wlan0
wpa-bridge br0
pre-up iw dev wlan0 set 4addr on
post-down iw dev wlan0 set 4addr off
A ujistěte se, že váš wpa_supplicant je verze 2.5 nebo novější. Nebude fungovat s wpa_supplicant 2.4 a aktuálními verzemi jádra.
Měl bych také poznamenat, že v ifup je v současné době chyba v závodě, kdy se při bootování nemusí objevit rozhraní mostu, ale to je úplně jiný problém.
Zdá se, že potřebujete přesměrování IP.
zkuste cat /proc/sys/net/ipv4/ip_forward
Pokud je to 0
problém:echo 1 > /proc/sys/net/ipv4/ip_forward