Einrichten eines WLAN-Hotspots mit brctl und hostapd


2

Ich versuche, einen WLAN-Hotspot mit brctl und hostapd unter Debian GNU / Linux einzurichten, aber es scheint, dass es nicht funktioniert. Ich folge folgenden Schritten:

echo 1 > /proc/sys/net/ipv4/ip_forward
brctl addbr br0
brctl addif br0 eth0
dhclient br0

Bis jetzt funktioniert es und ich kann über die Kabelverbindung im Internet surfen. Dann starte ich hostapd. Sie fügt hinzu , wlan0auf die Brücke und die verdrahtete conncetion stoppt zu arbeiten: Ich bin nicht in der Lage , die Bahn und das Smartphone zu surfen (mit Android) ist in der Lage mit dem Hotspot zu authentifizieren , aber keine IP - Adresse erhalten , und sagt : „Begrenzte conncetion“.

Ich habe mehrere Anleitungen und Anleitungen gelesen, kann aber keine Lösung finden. Irgendein Vorschlag?


Wäre eine / etc / networks-basierte Antwort mit Bridging in Ordnung? Ich habe eine funktionierende Konfiguration, die ich teilen kann
— Journeyman Geek

Ich ziehe es vor, es manuell über die Konsole einzustellen, aber poste deine Konfiguration hier, danke.
— Gilberto T.

Eine Brücke ist etwas, das zwei Enden hat. Durch Hinzufügen einer einzigen Schnittstelle zur Brücke wird eine Brücke mitten im Fluss angehalten.
— 31.

Antworten:


3

Es gibt ein paar wichtige Punkte zu beachten:

  1. Sie müssen den Netzwerkmanager deaktivieren:

    sudo service network-manager stop
    
  2. Sie müssen hostapd vor der Brücke starten :

    sudo hostapd -B /etc/hostapd/hostapd.conf
    
  3. Nun fügen Sie einer bestehenden Bridge eth0 hinzu :

    sudo brctl addif br0 eth0
    
  4. und Sie setzen Ihre Brücke in das Netzwerk:

    sudo dhclient br0
    
  5. Jetzt müssen Sie überprüfen, ob Ihre Routing-Tabelle funktioniert:

    sudo add -net 0.0.0.0/0 gw IP_address_of_your_router dev br0
    sudo del -net 0.0.0.0/0 gw IP_address_of_your_router dev eth0
    
  6. Nun fügen Sie Nameserver zu /etc/resolv.conf hinzu: als sudo,

    echo nameserver 8.8.8.8 >> /etc/resolv.conf
    echo nameserver 8.8.4.4 >> /etc/resolv.conf
    

Meins funktioniert wie oben: Ich schreibe gerade.


vorausgesetzt, er verwendet den Netzwerkmanager. Ich glaube auch, dass er wlan0 in die Bridge aufnehmen muss, nicht wahr?
— Geselle Geek

@JourneymanGeek Nein, würde er nicht: Die Konfigurationsdatei für hostapd mm muss eine Anweisung bridge = br0 enthalten , die die Brücke für ihn erstellt. Und natürlich enthält dieselbe conf-Datei eine Anweisungsschnittstelle = wlan0 . Dies ist jedoch bereits der Fall, da das OP angibt, dass der Hostap-Dienst ordnungsgemäß gestartet wurde und Clients eine Verbindung herstellen können.
— MariusMatutiae

Ich habe es versucht. In diesem Fall funktioniert "dhclient br0" nicht.
— Gilberto T.

@ GilbertoT. Was meinst du damit, funktioniert es nicht? Sie erhalten kein DHCP-Angebot?
— MariusMatutiae

Ja, ich bekomme kein DHCP-Angebot für br0.
— Gilberto T.

1

Ich entschied mich schließlich für einen anderen Weg, um das Gleiche zu tun, basierend auf der Anleitung hier - die Verwendung von / hosts / networks ist wahrscheinlich besser, wenn Sie einen immer auf hostapd verfügbaren AP benötigen, ansonsten aber wahrscheinlich weniger.

Hier ist meine / etc / networks-Datei - ich habe wlan0 als manuell festgelegt und eth0 überbrückt.

# wireless wlan0
allow-hotplug wlan0
iface wlan0 inet manual

# eth0 connected to the ISP router
allow-hotplug eth0
iface eth0 inet manual
#iface eth0 inet6 auto
# Setup bridge
iface br0 inet static
    bridge_ports wlan0 eth0
    address 192.168.1.127
    netmask 255.255.255.0
    network 192.168.1.0
    gateway 192.168.1.1
    dns-nameservers 192.168.1.1

Ihre hostapd.conf könnte auch dort von Interesse sein - dies ist eine abgespeckte Version von mir, da ich mich dazu entschlossen habe, die 'Stock'-Version zu bearbeiten. Ich vermute, es ist ziemlich wahrscheinlich, dass Ihr Problem dort sein könnte.

### Wireless network name ###
interface=wlan0
### Set your bridge name ###
bridge=br0
driver=nl80211

###CHANGE ANYTHING BELOW THIS TO SUIT!###

### (IN == INDIA, UK == United Kingdom, US == United Stats and so on ) ###
country_code=SG
hw_mode=g
channel=6
wpa=2
## Key management algorithms ##
wpa_key_mgmt=WPA-PSK

## Set cipher suites (encryption algorithms) ##
## TKIP = Temporal Key Integrity Protocol
## CCMP = AES in Counter mode with CBC-MAC
wpa_pairwise=TKIP
rsn_pairwise=CCMP

## Shared Key Authentication ##
auth_algs=1

## Accept all MAC address ###
macaddr_acl=0

Ich verwende nicht "country_code =" "macaddr_acl =". Der Rest der Konfigurationsdatei ist ähnlich.
— Gilberto T.
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.