Bridge eth0 to wlan0 Hostapd, Dnsmasq, Route

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 658
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Bridge eth0 to wlan0 Hostapd, Dnsmasq, Route

Messaggio da darkstaring »

Sera, ho uno script che crea un' hotspot che ridirige tutti i client collegati alla mio localhost:

Codice: Seleziona tutto

#!/bin/bash
nomerete='Rete_PC'
echo "Attivo la rete wifi autonoma $nomerete"

if [ -e '/etc/init.d/hostapd' ]
  then
      /etc/init.d/hostapd stop
fi
sudo killall -9 dnsmasq
sudo killall -9 hostapd

cat << EOF > /tmp/hostapd.conf
interface=wlan0
driver=nl80211
ssid=$nomerete
hw_mode=g
channel=11
EOF
 

 sudo ifconfig wlan0 down
 sudo ifconfig mon.wlan0 down 
 sudo hostapd -B /tmp/hostapd.conf
 sudo ip addr add 10.42.0.1/8 dev wlan0
 
 
 sudo /usr/sbin/dnsmasq --address=/#/10.42.0.1 --bind-interfaces --except-interface=lo --clear-on-reload --strict-order --listen-address=10.42.0.1 --dhcp-range=10.42.0.10,10.42.0.100,60m --dhcp-option=option:router,10.42.0.1 --dhcp-lease-max=50 --pid-file=/var/run/nm-dnsmasq-wlan0.pid
 echo "Ora collegati alla rete wifi ' $nomerete' ";
Ora vorrei far un bridge tra eth0 e wlan0, tutte le richieste fatte dalla wlan0 devono essere deviate alla eth0
Vorrei far tutto senza editare /etc/network/interfaces o altri vari file di configurazione, in più vorrei mascherare gli ip connessi alla wlan0.
Ammettendo di avere l'ip della eth0 su 192.168.1.20


Dove obbligatoriamente aggiungere una regola con iptables oppure posso usare il comando route per l'instradamento (come preferirei) ?

rik70
Iper Master
Iper Master
Messaggi: 2559
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 15.0
Kernel: 7.2.x-rt
Desktop: Openbox
Distribuzione: Arch Linux

Re: Bridge eth0 to wlan0 Hostapd, Dnsmasq, Route

Messaggio da rik70 »

Secondo me, visto che le 2 interfaccie stanno su 2 reti differenti, basterebbe una regola iptables per il masquerading ed il gioco è fatto.

Il bridge avrebbe senso se wlan0 e eth0 fossero sulla stessa rete.

Ma non prenderla per oro colato.

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 658
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: Bridge eth0 to wlan0 Hostapd, Dnsmasq, Route

Messaggio da darkstaring »

Eh.. purtroppo iptables non lo conosco quasi per niente
Se sapete dar la soluzione postatela :)..
Altrimenti se trovo risposta, pubblico

Grazie

rik70
Iper Master
Iper Master
Messaggi: 2559
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 15.0
Kernel: 7.2.x-rt
Desktop: Openbox
Distribuzione: Arch Linux

Re: Bridge eth0 to wlan0 Hostapd, Dnsmasq, Route

Messaggio da rik70 »

Uhm.. spero di aver capito bene: in pratica tu vuoi che tutto quello che sta dietro wlan0 possa accedere a internet?

Se è cosi dovrebbe bastare:

Codice: Seleziona tutto

sysctl net.ipv4.ip_forward=1
più il mascheramento dell'interfaccia ethernet con iptables:

Codice: Seleziona tutto

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Rispondi