Le 15/04/2019 à 00:43, Jérémy Prego a écrit :

en ce Dimanche nocturne je me décide à poser ma question ici. En effet,
je fais de la redirection d'IP en OUTPUT et en PREROUTING avec iptables.
depuis la machine routeur et le réseau local derrière c'est parfait la
machine jeremy.domain.net passe bien par la connexion que j'ai demandé a
Iptables.
Le souci est quand de la machine jeremy.domain.net qui se trouve donc
sur internet je cherche à contacter le routeur par son interface
principale, il se passe un truc très embêtant, Iptables renvoie les
réponses par l'interface que j'ai choisi pour ma redirection de
l'OUTPUT. Du coup, ça ne peut pas fonctionner, forcément.

Je n'ai rien compris. Et pourtant j'ai la prétention de m'y connaître un peu.

est-ce qu'une solution existe pour que si ça arrive par l'interface
wan0, ça reparte par la même interface et que ça ne passe pas par les
règle que j'ai mis pour l'output ?

Qu'entends-tu par "ça" ? Si tu parles de paquets, ce ne sont pas les mêmes qui arrivent et qui partent.

pour rappel, un petit exemple de ce que je fais:
##routage alternatif
iptables -t mangle -N ROUTING-POLICY
iptables -t mangle -A OUTPUT -j ROUTING-POLICY
iptables -t mangle -A PREROUTING -j ROUTING-POLICY
iptables -t mangle -D ROUTING-POLICY -d jeremy.domain.net -j MARK
--set-mark 0x3

-D, vraiment ?

C'est du routage avancé, pas de la redirection. Pas étonnant que je n'ai rien compris.

Si je comprends bien tu veux marquer seulement les paquets des connexions sortantes. Une solution consiste à utiliser le marquage de connexion avec la cible CONNMARK et la correspondance connmark. Une autre possibilité plus simple mais probablement incomplète consiste à discriminer l'adresse source originelle de la connexion avec l'option --ctorigsrc de la correspondance conntrack, en ajoutant à la règle de marquage :

-m conntrack ! --ctorigsrc jeremy.domain.net

Répondre à