Actuellement tout est configuré/fonctionne
de/vers le fai2.
Je voudrais que ce que je "binde" sur eth1
soit vu de l'extérieur à partir de cette IP
(ca fonctionne) et que le traffic de sortie soit
renvoyé sur l'ip1 (ce qui n'est pas le cas).
Actuellement si je ping de l'extérieur l'ip1
les paquets sont renvoyés par l'ip2.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
TiChou
Dans l'article news:3fa23bec$, Jean-Louis Noel écrivait :
Hello, All!
Bonjour,
Je suis perdu dans les iptables!
Première chose, iptables est un outil qui permet de manipuler les règles Netfilter du système. Ces règles ne permettent que de filtrer ou modifier les paquets réseaux. En aucun cas elles indiquent la route à prendre pour un paquet réseau.
Actuellement tout est configuré/fonctionne de/vers le fai2.
Je voudrais que ce que je "binde" sur eth1 soit vu de l'extérieur à partir de cette IP (ca fonctionne) et que le traffic de sortie soit renvoyé sur l'ip1 (ce qui n'est pas le cas). Actuellement si je ping de l'extérieur l'ip1 les paquets sont renvoyés par l'ip2.
Une idée ou une piste (howto)?
Vos routes doivent agir en fonction de l'IP source, c'est ce qu'on appelle faire du source routing. Toutes les informations utiles pourront être trouvées dans le HowTo Linux Advanced Routing and Traffic Control, http://lartc.org.
Un exemple de mise en pratique avec quelques règles en utilisant l'outil ip du paquetage iproute2 :
# Création de la table de routage /etc/iproute2/rt_tables echo -e "101 fai1">/etc/iproute2/rt_tables echo -e "102 fai2">>/etc/iproute2/rt_tables echo -e "103 lan">>/etc/iproute2/rt_tables
# Définition des règles de source routing
# Le routage local utilise la table principale ip rule add from 192.168.0.0/24 to 192.168.0.0/24 table main pref 100
# Le routage du traffic venant d'Internet vers le réseau Interne # utilise la table 'lan' ip rule add from ip1 to 192.168.0.0/24 table lan pref 300 ip rule add from ip2 to 192.168.0.0/24 table lan pref 300
# Le routage du traffic Internet local vers l'extérieur # utilise les tables correspondantes ip rule add from ip1 to 0/0 table fai1 pref 400 ip rule add from ip2 to 0/0 table fai2 pref 400
# Le routage du traffic des machines suivantes vers Internet # utilise la table 'fai1' MACHINES="192.168.0.2 192.168.0.3" for machine in $MACHINES do ip rule add from $machine/32 to 0/0 table fai1 pref 200 done
# Le routage du traffic des machines suivantes vers Internet # utilise la table 'fai2' MACHINES="192.168.0.4 192.168.0.5" for machine in $MACHINES do ip rule add from $machine/32 to 0/0 table fai2 pref 200 done
# Définition des routes à emprunter pour chacune des tables ip route add table fai1 via ip1 dev eth1 ip route add table fai2 via ip2 dev eth2 ip route add table lan via 192.168.0.1 dev eth0
A adapter en fonction de votre configuration.
-- TiChou
Dans l'article news:3fa23bec$1@news.stben.net,
Jean-Louis Noel <jln@stben.net> écrivait :
Hello, All!
Bonjour,
Je suis perdu dans les iptables!
Première chose, iptables est un outil qui permet de manipuler les règles
Netfilter du système. Ces règles ne permettent que de filtrer ou modifier
les paquets réseaux. En aucun cas elles indiquent la route à prendre pour un
paquet réseau.
Actuellement tout est configuré/fonctionne
de/vers le fai2.
Je voudrais que ce que je "binde" sur eth1
soit vu de l'extérieur à partir de cette IP
(ca fonctionne) et que le traffic de sortie soit
renvoyé sur l'ip1 (ce qui n'est pas le cas).
Actuellement si je ping de l'extérieur l'ip1
les paquets sont renvoyés par l'ip2.
Une idée ou une piste (howto)?
Vos routes doivent agir en fonction de l'IP source, c'est ce qu'on appelle
faire du source routing. Toutes les informations utiles pourront être
trouvées dans le HowTo Linux Advanced Routing and Traffic Control,
http://lartc.org.
Un exemple de mise en pratique avec quelques règles en utilisant l'outil ip
du paquetage iproute2 :
# Création de la table de routage /etc/iproute2/rt_tables
echo -e "101 fai1">/etc/iproute2/rt_tables
echo -e "102 fai2">>/etc/iproute2/rt_tables
echo -e "103 lan">>/etc/iproute2/rt_tables
# Définition des règles de source routing
# Le routage local utilise la table principale
ip rule add from 192.168.0.0/24 to 192.168.0.0/24 table main pref 100
# Le routage du traffic venant d'Internet vers le réseau Interne
# utilise la table 'lan'
ip rule add from ip1 to 192.168.0.0/24 table lan pref 300
ip rule add from ip2 to 192.168.0.0/24 table lan pref 300
# Le routage du traffic Internet local vers l'extérieur
# utilise les tables correspondantes
ip rule add from ip1 to 0/0 table fai1 pref 400
ip rule add from ip2 to 0/0 table fai2 pref 400
# Le routage du traffic des machines suivantes vers Internet
# utilise la table 'fai1'
MACHINES="192.168.0.2 192.168.0.3"
for machine in $MACHINES
do
ip rule add from $machine/32 to 0/0 table fai1 pref 200
done
# Le routage du traffic des machines suivantes vers Internet
# utilise la table 'fai2'
MACHINES="192.168.0.4 192.168.0.5"
for machine in $MACHINES
do
ip rule add from $machine/32 to 0/0 table fai2 pref 200
done
# Définition des routes à emprunter pour chacune des tables
ip route add table fai1 via ip1 dev eth1
ip route add table fai2 via ip2 dev eth2
ip route add table lan via 192.168.0.1 dev eth0
Dans l'article news:3fa23bec$, Jean-Louis Noel écrivait :
Hello, All!
Bonjour,
Je suis perdu dans les iptables!
Première chose, iptables est un outil qui permet de manipuler les règles Netfilter du système. Ces règles ne permettent que de filtrer ou modifier les paquets réseaux. En aucun cas elles indiquent la route à prendre pour un paquet réseau.
Actuellement tout est configuré/fonctionne de/vers le fai2.
Je voudrais que ce que je "binde" sur eth1 soit vu de l'extérieur à partir de cette IP (ca fonctionne) et que le traffic de sortie soit renvoyé sur l'ip1 (ce qui n'est pas le cas). Actuellement si je ping de l'extérieur l'ip1 les paquets sont renvoyés par l'ip2.
Une idée ou une piste (howto)?
Vos routes doivent agir en fonction de l'IP source, c'est ce qu'on appelle faire du source routing. Toutes les informations utiles pourront être trouvées dans le HowTo Linux Advanced Routing and Traffic Control, http://lartc.org.
Un exemple de mise en pratique avec quelques règles en utilisant l'outil ip du paquetage iproute2 :
# Création de la table de routage /etc/iproute2/rt_tables echo -e "101 fai1">/etc/iproute2/rt_tables echo -e "102 fai2">>/etc/iproute2/rt_tables echo -e "103 lan">>/etc/iproute2/rt_tables
# Définition des règles de source routing
# Le routage local utilise la table principale ip rule add from 192.168.0.0/24 to 192.168.0.0/24 table main pref 100
# Le routage du traffic venant d'Internet vers le réseau Interne # utilise la table 'lan' ip rule add from ip1 to 192.168.0.0/24 table lan pref 300 ip rule add from ip2 to 192.168.0.0/24 table lan pref 300
# Le routage du traffic Internet local vers l'extérieur # utilise les tables correspondantes ip rule add from ip1 to 0/0 table fai1 pref 400 ip rule add from ip2 to 0/0 table fai2 pref 400
# Le routage du traffic des machines suivantes vers Internet # utilise la table 'fai1' MACHINES="192.168.0.2 192.168.0.3" for machine in $MACHINES do ip rule add from $machine/32 to 0/0 table fai1 pref 200 done
# Le routage du traffic des machines suivantes vers Internet # utilise la table 'fai2' MACHINES="192.168.0.4 192.168.0.5" for machine in $MACHINES do ip rule add from $machine/32 to 0/0 table fai2 pref 200 done
# Définition des routes à emprunter pour chacune des tables ip route add table fai1 via ip1 dev eth1 ip route add table fai2 via ip2 dev eth2 ip route add table lan via 192.168.0.1 dev eth0
A adapter en fonction de votre configuration.
-- TiChou
Jean-Louis Noel
Bonjour TiChou,
TiChou écrivait le Fri, 31 Oct 2003 12:22:34 +0100:
JN>> Je voudrais que ce que je "binde" sur eth1 JN>> soit vu de l'extérieur à partir de cette IP
Le problème est que la source pour eth1 est sa propre ip!
T> # Le routage du trafic venant d'Internet vers le réseau Interne T> # utilise la table 'lan' T> ip rule add from ip1 to 192.168.0.0/24 table lan pref 300 devient : ip rule add from ip1 to ip1 table lan pref 300
T> ip rule add from $machine/32 to 0/0 table fai1 pref 200 ip rule add from ip1 to 0/0 table fai1 pref 200
Bye, Jean-Louis
Bonjour TiChou,
TiChou écrivait le Fri, 31 Oct 2003 12:22:34 +0100:
JN>> Je voudrais que ce que je "binde" sur eth1
JN>> soit vu de l'extérieur à partir de cette IP
Le problème est que la source pour eth1 est sa propre ip!
T> # Le routage du trafic venant d'Internet vers le réseau Interne
T> # utilise la table 'lan'
T> ip rule add from ip1 to 192.168.0.0/24 table lan pref 300
devient :
ip rule add from ip1 to ip1 table lan pref 300
T> ip rule add from $machine/32 to 0/0 table fai1 pref 200
ip rule add from ip1 to 0/0 table fai1 pref 200
TiChou écrivait le Fri, 31 Oct 2003 12:22:34 +0100:
JN>> Je voudrais que ce que je "binde" sur eth1 JN>> soit vu de l'extérieur à partir de cette IP
Le problème est que la source pour eth1 est sa propre ip!
T> # Le routage du trafic venant d'Internet vers le réseau Interne T> # utilise la table 'lan' T> ip rule add from ip1 to 192.168.0.0/24 table lan pref 300 devient : ip rule add from ip1 to ip1 table lan pref 300
T> ip rule add from $machine/32 to 0/0 table fai1 pref 200 ip rule add from ip1 to 0/0 table fai1 pref 200