Page 1 sur 2

Pas de DNS sur les clients dhcp

Posté : mer. 7 déc. 2016 15:53
par aucaigne
Bonjour,
Je souhaite configurer mon PI3 en point d'accès Wifi pour accéder à internet par une clé 3G.
J'ai configuré mon fichier /etc/network/interfaces :
# Include files from /etc/network/interfaces.d:

Code : Tout sélectionner

source-directory /etc/network/interfaces.d

##############################
allow-hotplug eth0
iface eth0 inet dhcp
	up sleep 5 && route add default gw 192.168.1.254 eth0

############################
auto wlan0
iface wlan0 inet static
        address 192.168.2.1
        netmask 255.255.255.0
        network 192.168.2.0
        broadcast 192.168.2.255
#       gateway 192.168.2.1
	dns-nameservers 212.27.40.241 8.8.8.8

#----------------------------------------------
# clef 3G
allow-hotplug ppp0
iface ppp0 inet wvdial
	dns-nameservers 212.27.40.240

#----------------------------------------------
allow-hotplug wlan1
iface wlan1 inet dhcp
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
#---------------------------------
iface default inet dhcp
Et mon fichier /etc/hostapd/hostapd.conf

Code : Tout sélectionner

# Nom de l'interface wifi (celle par défaut)
interface=wlan0
# Utilisation du driver nl80211, 
driver=nl80211
# Nom du réseau wifi (SSID)
ssid=Video1

#On cree un pont
#bridge=br0

# Mode du wifi (bande 2.4GHz)
hw_mode=g
# Canal 6
channel=6
# Activer le 802.11n
#ieee80211h=1
#ieee80211d=1
ieee80211n=1

# Activer le WMM
wmm_enabled=1

# Activer les canaux 40MHz avec 20ns d'intervalle
ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]

# Accepter toutes les adresses MAC (pas de restriction d'appareil)
macaddr_acl=0

# Utiliser l'authentification ; Pas d'auth=0
auth_algs=1
country_code=FR

# Ne pas diffuser le SSID
ignore_broadcast_ssid=0

# Beacon interval in kus (1.024 ms)
beacon_int=100

# DTIM (delivery trafic information message) 
dtim_period=2

# Maximum number of stations allowed in station table
max_num_sta=255

# RTS/CTS threshold; 2347 = disabled (default)
rts_threshold=2347

# Fragmentation threshold; 2346 = disabled (default)
fragm_threshold=2346

### Authentification
# Utiliser WPA2 WPA=1 ou 2 ; 
wpa=2

# Utiliser une clé partagée
wpa_key_mgmt=WPA-PSK

# Mot de passe du réseau
wpa_passphrase=raspberry

# Utilisation d'AES plutôt que de TKIP
#wpa_pairwise=CCMP
rsn_pairwise=CCMP

Et enfin le fichier /etc/dnsmasq.conf

Code : Tout sélectionner

# Seule interface à utiliser
interface=wlan0
# Limiter le fonctionnement à l'interface déclarée
bind-interfaces
# Transférer les requêtes DNS sur les DNS d'OpenDns
server=208.67.222.222
# Ne pas forwarder les requêtes "locales" (sans nom de domaine)
domain-needed
bogus-priv
no-poll
no-hosts
# Plage DHCP : 
dhcp-range=192.168.2.2,192.168.2.19,24h
dhcp-option=6,192.168.2.1
J'ai routé dans les 2 sens ppp0 vers wlan0 et réciproquement comme indiqué sur :
http://www.g33k-zone.org/post/2016/05/1 ... 3%A8s-Wifi
C à dire :

Code : Tout sélectionner

sudo iptables -t nat -A POSTROUTING -o wlan0-j MASQUERADE  
sudo iptables -A FORWARD -i ppp0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT  
sudo iptables -A FORWARD -i wlan0 -o ppp0 -j ACCEPT
Mon pi accède sans problème à internet
Problèmes :
1) les clients linux se connectent bien et obtiennent une IP, en revanche ils n'ont pas de DNS, donc un ping free.fr ne marche pas.
2) les clients Windows ne se connectent pas

Qu'ai je oublié ou mal fait ?
Merci davance

Re: Pas de DNS sur les clients dhcp

Posté : mer. 7 déc. 2016 16:41
par dyox
Bonjour et re,
Je ne sais pas si ce post peut vous aidez mais il aborde un autre angle que celui de Francois

Dans le /etc/hostapd/hostapd.conf, ne faudrait-il pas activer le "bridge" ? => bridge=br0
Je ne vois pas de pont entre wlan0 et ppp0 (après relecture si mais iptable)
Peut-être un début de piste :?:
Et si c'est le cas, en suivant mon tout 1er lien faire : (je cite avec modification)
$ sudo ip address flush dev ppp0 && sudo ip link set ppp0 master br0
La première partie retire l'adresse IP et la second intègre le port ppp0 au pont br0. Maintenant le point d'accès Wifi devrait être opérationnel. Bien sûr, la connexion ssh a été perdue. Il suffit de se reconnecter

Pourquoi ne pas utiliser le même DNS dans les config ? Là il y en a 4, on en choisi 2 par sécurité par 212.27.40.240 (Free), 212.27.40.241, 8.8.8.8 (Google) et 208.67.222.222 (OpenDns)
Peut-être rajouté des DNS dans /etc/resolv.conf ?

Ce sont bien sûr des pistes de réflexion car je ne connais pas ces dépôts... :?

Re: Pas de DNS sur les clients dhcp

Posté : jeu. 8 déc. 2016 10:44
par aucaigne
Bonjour,
Merci pour cette réponse.
Je connaissais le 1er lien mais pas celui de François.
Oui la redirection devrait se faire avec les iptables. J'ai aussi validé le forwarding.
Je vais faire qq essais, dès que j'ai un moment et je donnerai mon résultat.

Pour les DNS, effectivement c'est un peu le bazar chez moi car j'ai fait plein d'essais, j'ai eu du mal pour comprendre le fonctionnement de resolvconf ...
A+

Re: Pas de DNS sur les clients dhcp

Posté : jeu. 8 déc. 2016 11:55
par aucaigne
Quand j'entre la commande :
$ sudo ip address flush dev ppp0 && sudo ip link set ppp0 master br0
j'ai l'erreur
RTNETLINK answers: Invalid argument
Et je n'ai plus de DNS, je ne peux plus sortir.

Re: Pas de DNS sur les clients dhcp

Posté : jeu. 8 déc. 2016 12:04
par aucaigne
Et je n'ai plus d'adresse IP sur ppp0, bien qu'elle soit encore active

Re: Pas de DNS sur les clients dhcp

Posté : jeu. 8 déc. 2016 12:07
par dyox
Avez-vous modifié hostapd.conf avec br0 ?

Re: Pas de DNS sur les clients dhcp

Posté : jeu. 8 déc. 2016 12:14
par aucaigne
Je ne comprends pas pourquoi il faut vider ppp0 alors que c'est ma sortie ?

Re: Pas de DNS sur les clients dhcp

Posté : jeu. 8 déc. 2016 12:43
par dyox
Je ne comprends pas pourquoi il faut vider ppp0 alors que c'est ma sortie ?
J'avais adapté par analogie avec le 1er lien de mon 1er post qui disait :
Il est hyper hyper important de retirer l'adresse IP assigné au port Ethernet avant de l'intégrer au pont. C'est là où j'ai bloqué un certain temps. Je perdais la connexion ssh au bout de quelques minutes sans pouvoir me reconnecter. Je lance donc les deux commandes en même temps (je suis connecté en ssh sur ce port Ethernet).
$ sudo ip address flush dev eth0 && sudo ip link set eth0 master br0

Re: Pas de DNS sur les clients dhcp

Posté : jeu. 8 déc. 2016 13:01
par dyox
Peut-on avoir le fichier /etc/wvdial.conf ?
Cachez les parties perso
AIDE

Re: Pas de DNS sur les clients dhcp

Posté : jeu. 8 déc. 2016 18:48
par aucaigne
Oui le voici :

Code : Tout sélectionner

[Dialer free]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","free"
#Init6 = AT+CGEQMIN=1,4,64,640,64,640
#Init7 = AT+CGEQREQ=1,4,64,640,64,640Stupid Mode = 1
Modem Type = Analog Modem
ISDN = 0
Phone = *99#
New PPPD = yes
Modem = /dev/ttyUSB0
Username = free
Password = free
Baud = 9600
#Auto DNS = off

[Dialer pin]
Init1 = AT+CPIN=3344
Baud = 9600
Modem = /dev/ttyUSB0

[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","free"
#Init6 = AT+CGEQMIN=1,4,64,640,64,640
#Init7 = AT+CGEQREQ=1,4,64,640,64,640
Stupid Mode = 1
Modem Type = Analog Modem
ISDN = 0
Phone = *99#
New PPPD = yes
Modem = /dev/ttyUSB0
Username = free
Password = free
Baud = 9600