[resolu] problème de routage ?

Bonjour,

Je tente de creer un point d’accès wifi avec mon raspberry qui tourne sous Debian.

Celui ci sera dans un réseau local géré par une freebox (192.168.0.254).

Mon raspberry, en plus de service de point d’accès (avec hostapd) sera également un serveur dhcp (en utilisant udhcp).

Tout ceci fonctionne bien sauf que je n’ai pas d’accès à internet depuis le raspberry. Un ping google.fr ne fonctionne pas. Et même un ping 192.168.0.254 (adresse IP freebox) ne fonctionne pas.

L’ip de mon raspberry est 192.168.0.200 et j’arrive bien à voir les appareils connectés à mon raspberry (par exemple 192.168.0.150 est connecté à mon raspberry).

Quelqu’un a-t-il une idée du pourquoi je ne peux même pas voir ma freebox et du coup pas avoir le net ?

Merci

Je joins un schéma pour une meilleure compréhension. Tout est en wifi

Il me semble que ton raspberry devrait avoir 2 adresses IP. Une sur le réseau de la freebox et une sur le réseau de tes caméras. Ceci avec 2 réseaux distinct comme par exemple 192.168.1.255 pour les caméras.

Il y aurait une adresse 192.168.0.200 sur l’interface relié à la freebox et une interface 192.168.1.200 (wifi) pour communiquer avec les machines relié au raspberry.

Merci de ta réponse.

Au vu de tes explications je pense que je m’y prends mal.

Sur le raspberry est connecté une une clé wifi qui est configuré en mode Access Point. Il y a également un cable ethernet sur le port ethernet.

Mon idée était de servir de point d’accès pour les caméras IP et de pouvoir accéder à internet via ethernet

Voici le fichier /etc/network/interfaces :

[quote]auto lo

iface lo inet loopback

iface eth0 inet static
address 192.168.0.100
netmask 255.255.255.0
gateway 192.168.0.254

iface wlan0 inet static
address 192.168.0.200
netmask 255.255.255.0
gateway 192.168.0.254

up iptables-restore < /etc/iptables.ipv4.nat[/quote]

Le fichier /etc/iptables.ipv4.nat :

[quote]# Generated by iptables-save v1.4.14 on Sun Jun 2 01:18:36 2013
*filter
:INPUT ACCEPT [28:2008]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [20:2072]
-A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i wlan0 -o eth0 -j ACCEPT
COMMIT

Completed on Sun Jun 2 01:18:36 2013

Generated by iptables-save v1.4.14 on Sun Jun 2 01:18:36 2013

*nat
:stuck_out_tongue:REROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [5:336]
:stuck_out_tongue:OSTROUTING ACCEPT [4:220]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT

Completed on Sun Jun 2 01:18:36 2013[/quote]

Le fichier /etc/udhcpd.conf

[quote]# This is range of IPs that the hostspot will give to client devices
start 192.168.0.201
end 192.168.0.220

The device uDHCP listens on

interface wlan0

The DNS servers client devices will use.

opt dns 192.168.0.254 8.8.8.8 4.2.2.2

opt subnet 255.255.255.0

The Pi’s IP address on wlanÂ0 which we will set up shortly

opt router 192.168.0.200

10 day DHCP lease time in seconds

opt lease 864000

IP static camera 1

static_lease 00:08:10:76:4A:3B 192.168.0.150

If remaining is true (default), udhcpd will store the time

remaining for each lease in the udhcpd leases file. This is

for embedded systems that cannot keep time between reboots.

If you set remaining to no, the absolute time that the lease

expires at will be stored in the dhcpd.leases file.

remaining yes #default: yes

The time period at which udhcpd will write out a dhcpd.leases

file. If this is 0, udhcpd will never automatically write a

lease file. (specified in seconds)

auto_time 7200 #default: 7200 (2 hours)[/quote]

Le fichier /etc/hostapd/hostapd.conf :

[quote]interface=wlan0
driver=nl80211
ssid=My_AP
hw_mode=g
channel=6
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP[/quote]

D’ailleurs avec cette configuration l’interface eth0 se monte bien au démarrage mais pas wlan0. Je suis obligé de faire ifconfig wlan0 192.168.0.200 up pour démarrer l’interface wlan0.

Je précise que ma freebox fait également office de serveur DHCP mais uniquement entre 192.168.0.10 et 192.168.0.50. Il ne devrait théoriquement pas avoir de conflit avec le serveur uDHCP du raspberry.

J’ai donc changé la configuration des adresses de l’interface wlan0. J’ai mis à la place 192.168.1.200 et udhcp attribuera des IP en 192.168.1.*. De cette façon j’ai deux réseaux distinct.

Ca marche sauf que ca ne marche que sur un boot sur deux.
Par exemple je demarre le raspberry ca marche, je le redemarre et là wlan0 ne se lance pas automatiquement, je redemarre encore et là wlan0 est démarré.

N’y a t il pas une préférence à régler du style wlan0 doit démarrer avant eth0 au moment du boot ? Merci.

Comme ça je ne sais pas mais rajoute cette ligne auto wlan 0 juste au dessus de la définition de ta carte WIFI.

Ce qui donne auto wlan 0 iface wlan0 inet static address 192.168.0.200 netmask 255.255.255.0 gateway 192.168.0.254

A part qu’il ne faut qu’une gateway sur eth0 (je crois) ca devrait marcher avec “auto wlan” en mettant bien 2 réseaux.

La commande route devrait t’indiquer si le réseau est OK avec les adresses 192.168.1.0 qui partent sur wlan0 et les autres qui partent sur eth0.

A priori, tu as effectivement besoin du masquerade car la box ne doit pas pouvoir router vers le réseau 192.168.1.0. A moins que tu puisse rediriger les adresses 192.168.1.0 vers 192.168.0.200 sur la box.

Bonjour

Apres plusieurs jours de tests et de redemarrage, les interfaces reseaux se montent correctement.

Merci pour votre aide