[RESOLU] Prob de routage

en effet c’est n’importe quoi, j’ai repris un autre routage et oublié de le modifier :blush:
en fait c’était

à rentrer sur le serveur

Sûrement pas, puisque 192.168.0.1 est une adresse du serveur qui ne peut pas être sa propre passerelle. Pour rappel, l’adresse de passerelle dans une route désigne le “next hop” (prochaine étape vers la destination), et par définition une machine ne peut pas être son propre next hop pour une destination extérieure, sinon ça boucle. Pour rappel encore, une machine ne doit avoir qu’une seule passerelle ou route par défaut, qui pointe vers le routeur connecté au reste du monde. Pour le serveur, la passerelle de la seule et unique route par défaut c’est donc le routeur 192.168.1.1. 192.168.0.1 est l’adresse de passerelle de la route par défaut des postes clients du LAN.

pascal_1212, je voudrais le résultat de ces commandes :

# sur le "serveur"
iptables-save
route -n # ou ip route si le paquet iproute est installé, au choix
ifconfig # ou ip addr, au choix

# sur un poste client
route -n # ou ip route si le paquet iproute est installé, au choix
ifconfig # ou ip addr, au choix
cat /etc/resolv.conf
traceroute -I -n -m 3 192.168.1.1

Salut à tous,
Beaucoup de travail, voilà pourquoi la réponse est un peu tardive.
On dit que la première idée est raisonnablement la meilleure :confused:
Alors, le prob c’est résolu de cette manière :

iptables -t nat -A POSTROUTING -s 192.168.0.0/25 -o eth1 -j MASQUERADE

J’ai également trouvé un script. On le place au démarrage de la bécane et on peut se re-concentrer sur son travail :imp:
Je l’ai trouver chez nos voisins ubuntu :smiley:
Voilà le script :

#!/bin/sh
#
# Script de démarrage qui lance l'interface réseau internet,
# met en place un firewall basique et un partage de connexion
#
# Inspiré du script de Mjules_at_ifrance.com
#

start() {
# init du la périphérique internet (ici derriere un modem ADSL ethernet, DHCP client)

/sbin/ifup eth1

# Dans cette partie, on met en place le firewall
#vidage des chaines
iptables -F
#destruction des chaines personnelles
iptables -X

#stratégies par défaut
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

#init des tables NAT et MANGLE (pas forcément nécessaire)
iptables -t nat -F
iptables -t nat -X
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT

iptables -t mangle -F
iptables -t mangle -X
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT


# Acceptation de toutes les connexions en local (un process avec l'autre)
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# PORT FORWARDING:
# attention : on ne peut <del>malheureusement</del> heureusement pas mettre un nom de machine en destination, il faut mettre l'adresse IP.
# exemple : on veut qu'un serveur HTTP installé sur une machine du réseau local soit visible depuis l'extérieur.
###iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to-destination 192.168.10.121:80
###iptables -A FORWARD -p tcp -i eth1 --dport 80 -j ACCEPT


#création d'une nouvelle règle
iptables -N MAregle

#définition de la règle : accepter les nouvelles connexions ne venant pas de l'interface internet
# et accepter toutes les connexions établies et reliées (ex: une demande de page HTML provoque l'ouverture
# d'une connexion reliée pour acheminer cette page vers l'ordinateur)

iptables -A MAregle -m state --state NEW -i! eth1 -j ACCEPT
iptables -A MAregle -m state --state ESTABLISHED,RELATED -j ACCEPT

#application de la règle au partage de connexion
iptables -A INPUT -j MAregle
iptables -A FORWARD -j MAregle

# activation du forwarding dans le noyau
# mise en place du partage de connexion sur le réseau local

echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o eth1 -j MASQUERADE

}

stop() {
        echo 0 >/proc/sys/net/ipv4/ip_forward
        ifdown eth1
}

case "$1" in
 start)
        start
        ;;

stop)
        stop
        ;;
restart)
        stop && start
        ;;
*)
        echo "Usage $0 {start|stop|restart}"
        exit 1
esac

exit 0

chacun pourra l’adapter à sa config…

Voici le lien : doc.ubuntu-fr.org/tutoriel/comme … seau_local
Au passage, je remercie son auteur.

Dans tous les cas, je vous remercie tous pour vos lumières :smiley:

Pascal

Il manquait donc une route de retour vers 192.168.0.0/24 dans la table de routage du routeur. As-tu essayé d’ajouter cette route si le routeur le permet plutôt que de faire du NAT ? Le NAT c’est moche, on ne devrait s’en servir qu’en dernier recours quand on ne peut faire autrement.

Mais pourquoi /25 alors que le masque 255.255.255.0 correspond à /24 ? Les machines 192.168.0.128 à 254 sont privées de sortie ?