Comme tu le sais probablement, DHCP donne généralement une IP, l'IP de serveurs DNS, une route par défaut et un nom d'hôte. Mais il est possible d'envoyer un peu nimporte quoi comme info, cela va des trucs +/- standardisés (les options citées précedemment, un serveur NFS pour du netboot, NTP, NIS, etc) en passant par des truc complètement custom dont seul toi et le client dhcp connaissent la signification (cf. man dhcp-options, pour info il est possible de scripter le client dhcp ISC pour une flexibilité maximale).
Résumons: PC ------ DHCP ------ FREEBOX -WAN. De deux choses l'une: NAT ou pas-NAT.
1) NAT
Le PC doit recevoir la config suivante:
IP: dans le LAN1
Route par défaut: l'addresse du serveur DHCP, dans LAN1.
Au niveau du serveur DHCP: activer le routage et le masquerading sur l'interface LAN2.
2) sans NAT
Le PC reçoit la config suivante:
IP: dans LAN1
Route par défaut: IP FREEBOX dans LAN2
Route pour accéder au LAN2 (ce qui manque dans ta config, sans cela PC ne sait pas comment joindre FREEBOX): IP DHCP LAN1.
Au niveau de la box DHCP: activer le routage uniquement.
(Bon de trois chose l'une)
3) Tu pourrais aussi NATer dans l'autre sens: la freebox sur le LAN2 pour faire "comme si" la freebox est dans le LAN1 vis-à-vis des PC... mais bon là c'est un peu de couper les cheveux en 4 (quoique un bon exercice :p)
(Et de 4)
4) BRIDGE. Ben là tout le monde se retrouve dans LAN2, ton DHCP donne des IP dans LAN2 avec comme gateway la freebox. Faire attention à bien couper (ou bloquer au niveau du part-feu) le DHCP de la freebox pour éviter les interférences.
Pour activer le routage de façon non permanente : echo 1 > /proc/sys/net/ipv4/ip_forwarding (éventuellement faire de même pour ipv6). De façon permanente: éditer le fichier /etc/sysctl.conf et/ou se reporter à la documentation de la distribution.
Pour le NAT (2): iptable -t nat -A POSTROUTING -o eth0 --source 192.168.1.0/24 -j MASQUERADE
Pour envoyer la route manquante: google "dhcpd.conf static route" . Faire attention que si tu utilises les "classless static routes", il te faudra aussi ajouter la route par défaut à cette liste. (BTW, tu remarqueras que MS a décidé de faire autrement que tout le monde, tu devrais définir toi même le type et le numéro de l'option dhcp utilisée par MS).
Ensuite sur le PC, les commandes ping et route (ou leurs équivalents dans le monde MS) devraient te permettre d'avancer le diagnostique. Grosso-merdo il faut vérifier que chaque hote est joignable par les autres.
ping DHCP/LAN1
ping DHCP/LAN2
ping FREEBOX/LAN2
route show (vérifie que tu aie une route pour LAN2 et une route par défaut).
Je te conseille aussi d'essayer sans DHCP, en renseignant les IP et les routes manuellement sur le client. Dans ton cas, je suppose que tu n'as juste pas simplement activé le routage au niveau du serveur dhcp (pour router entre le LAN1 et le LAN2) et qu'il te manque une route au niveau des clients pour joindre LAN2 via l'adresse de ton serveur dans LAN1...
(Note: je fais comme si la borne wifi n'existe pas, il se peut que le problème vienne de là... au pire des cas, tester avec un cable réseau pour l'utiliser comme simple "switch")
# .
Posté par benja . En réponse au message Problème DHCP - NAT. Évalué à 1.
Comme tu le sais probablement, DHCP donne généralement une IP, l'IP de serveurs DNS, une route par défaut et un nom d'hôte. Mais il est possible d'envoyer un peu nimporte quoi comme info, cela va des trucs +/- standardisés (les options citées précedemment, un serveur NFS pour du netboot, NTP, NIS, etc) en passant par des truc complètement custom dont seul toi et le client dhcp connaissent la signification (cf. man dhcp-options, pour info il est possible de scripter le client dhcp ISC pour une flexibilité maximale).
Résumons: PC ------ DHCP ------ FREEBOX -WAN. De deux choses l'une: NAT ou pas-NAT.
1) NAT
Le PC doit recevoir la config suivante:
IP: dans le LAN1
Route par défaut: l'addresse du serveur DHCP, dans LAN1.
Au niveau du serveur DHCP: activer le routage et le masquerading sur l'interface LAN2.
2) sans NAT
Le PC reçoit la config suivante:
IP: dans LAN1
Route par défaut: IP FREEBOX dans LAN2
Route pour accéder au LAN2 (ce qui manque dans ta config, sans cela PC ne sait pas comment joindre FREEBOX): IP DHCP LAN1.
Au niveau de la box DHCP: activer le routage uniquement.
(Bon de trois chose l'une)
3) Tu pourrais aussi NATer dans l'autre sens: la freebox sur le LAN2 pour faire "comme si" la freebox est dans le LAN1 vis-à-vis des PC... mais bon là c'est un peu de couper les cheveux en 4 (quoique un bon exercice :p)
(Et de 4)
4) BRIDGE. Ben là tout le monde se retrouve dans LAN2, ton DHCP donne des IP dans LAN2 avec comme gateway la freebox. Faire attention à bien couper (ou bloquer au niveau du part-feu) le DHCP de la freebox pour éviter les interférences.
Pour activer le routage de façon non permanente : echo 1 > /proc/sys/net/ipv4/ip_forwarding (éventuellement faire de même pour ipv6). De façon permanente: éditer le fichier /etc/sysctl.conf et/ou se reporter à la documentation de la distribution.
Pour le NAT (2): iptable -t nat -A POSTROUTING -o eth0 --source 192.168.1.0/24 -j MASQUERADE
Pour envoyer la route manquante: google "dhcpd.conf static route" . Faire attention que si tu utilises les "classless static routes", il te faudra aussi ajouter la route par défaut à cette liste. (BTW, tu remarqueras que MS a décidé de faire autrement que tout le monde, tu devrais définir toi même le type et le numéro de l'option dhcp utilisée par MS).
Ensuite sur le PC, les commandes ping et route (ou leurs équivalents dans le monde MS) devraient te permettre d'avancer le diagnostique. Grosso-merdo il faut vérifier que chaque hote est joignable par les autres.
ping DHCP/LAN1
ping DHCP/LAN2
ping FREEBOX/LAN2
route show (vérifie que tu aie une route pour LAN2 et une route par défaut).
Je te conseille aussi d'essayer sans DHCP, en renseignant les IP et les routes manuellement sur le client. Dans ton cas, je suppose que tu n'as juste pas simplement activé le routage au niveau du serveur dhcp (pour router entre le LAN1 et le LAN2) et qu'il te manque une route au niveau des clients pour joindre LAN2 via l'adresse de ton serveur dans LAN1...
(Note: je fais comme si la borne wifi n'existe pas, il se peut que le problème vienne de là... au pire des cas, tester avec un cable réseau pour l'utiliser comme simple "switch")