[RESOLU] Iptables et target ROUTE :-D

Iptables et target ROUTE :-D [RESOLU] - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 27-07-2007 à 11:31:21    

Bonjour à tous,
 
voilà je vous explique mon problème: j'ai besoin d'utiliser la target ROUTE d'iptables pour un problème de routage lié à un vpn ssl (openvpn) sur un linux en mode bridge. J'utilise iptables 1.3.7 et le kernel 2.6.21.5. J'ai bien patché avec patch-o-matic et voici ce que ca me donne:
 

root@linux:~ $ iptables -t mangle -A POSTROUTING -d 10.8.0.6 -j ROUTE --oif tun0
iptables: No chain/target/match by that name


 

root@linux:~ $ ll /lib/iptables/ | grep ROUTE
12 -rwxr-xr-x 1 root root  8216 Jul 26 17:55 libipt_ROUTE.so


 

root@linux:~ $ iptables -j ROUTE --help
iptables v1.3.7
 
Usage: iptables -[AD] chain rule-specification [options]
       iptables -[RI] chain rulenum rule-specification [options]
       iptables -D chain rulenum [options]
       iptables -[LFZ] [chain] [options]
       iptables -[NX] chain
       iptables -E old-chain-name new-chain-name
       iptables -P chain target [options]
       iptables -h (print this help information)
...
...
ROUTE target v1.11 options:
    --oif       ifname          Route packet through `ifname' network interface
    --iif       ifname          Change packet's incoming interface to `ifname'
    --gw        ip              Route packet via this gateway `ip'
    --continue                  Route packet and continue traversing the
                                rules. Not valid with --iif or --tee.
    --tee                       Duplicate packet, route the duplicate,
                                continue traversing with original packet.
                                Not valid with --iif or --continue.


 


root@linux:~ $ lsmod
Module                  Size  Used by
ipt_ROUTE               3760  0


 
Sur ce coup là, je l'ai repassé en module dans le kernel mais j'avais testé en l'incluant dans le kernel et c'était pas mieux...
 
Je vois pas trop comment je peux débugguer ca  :??:  
 
Si vous avez des pistes!
 
p1c0.
 
EDIT: y a ca aussi:
 

root@linux:~ $ iptables -t mangle -A POSTROUTING -d 10.8.0.6 -j ROUTE
iptables v1.3.7: ROUTE target: oif, iif or gw option required
Try `iptables -h' or 'iptables --help' for more information.


 
ca veut bien dire que la target est compilée...


Message édité par _p1c0_ le 30-07-2007 à 15:51:18

---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 27-07-2007 à 11:31:21   

Reply

Marsh Posté le 27-07-2007 à 11:37:01    

Si j'ai bien compris, tu veux juste router différemment le trafic à destination d'une adresse précise ?
Tu n'as pas moyen de gérer ca avec iproute ? Ca me parait moins barbare que de le faire via netfilter

Reply

Marsh Posté le 27-07-2007 à 11:40:50    

route add -host 10.8.0.6 dev tun0


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 27-07-2007 à 11:46:44    

Bon, y a un truc qui m'intrigue là. Je me suis repenché sur l'alternative iptables MARK + iproute2.
 
Quand je fais:
 

iptables -t mangle -I PREROUTING -p all -d 10.8.0.6 -j LOG --log-prefix 'TUNLOG'


 
j'ai bien mes logs dans le /var/log/message.
 
Maintenant, je fais:


iptables -t mangle -I PREROUTING -p all -d 10.8.0.6 -j MARK --set-mark 1
ip rule add fwmark 1 table 200
ip route add default dev tun0 table 200
ip route flush table cache


 
et ca marche pas. Comment ca se fait ? Si mes paquets sont logués, ils devraient bien être marqués aussi, donc passer par la table 200 et envoyés via tun0. Mais visiblement ca marche pas...  :??:  


Message édité par _p1c0_ le 27-07-2007 à 16:36:05

---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 09:20:37    

Bon allez, pti up du début de semaine... avec un peu de chance, y aura des vacanciers de retour qui vont me trouver la solution  [:cerveau dawa]


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 09:59:26    

ah tiens, je viens de découvrir un truc interessant là:
 

root@linux: cat /proc/net/ip_tables_targets
TTL
ULOG
LOG
SAME
NETMAP
REDIRECT
MASQUERADE
IMQ
ECN
TOS
REJECT
DNAT
SNAT
ERROR
TCPMSS
NFLOG
NFQUEUE
MARK
MARK
DSCP
CONNMARK
CLASSIFY


 
y a pas ROUTE dedans...  :sweat:  
vous savez comment il est généré ce fichier? J'ai essayé mais sans grande conviction un echo "ROUTE" >> /proc/net_ip_tables_targets mais bien sur ca n'a pas marché!


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 10:00:54    

C'est les modules de netfilter une fois loadés qui s'enregistrent la dedans.
Vérifie via lsmod qu'il est bien chargé

Message cité 1 fois
Message édité par o'gure le 30-07-2007 à 10:01:29

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 10:05:45    

o'gure a écrit :

C'est les modules de netfilter une fois loadés qui s'enregistrent la dedans.
Vérifie via lsmod qu'il est bien chargé


 
rah, ca me fait toujours drole ce nouveau pseudo!  [:cerveau pingouino]  
 
il apparait bien dans le lsmod...


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 11:50:09    

tu as croisé tomate récemment ?


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 30-07-2007 à 11:51:02    

ou xatrix ?


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 30-07-2007 à 11:51:02   

Reply

Marsh Posté le 30-07-2007 à 11:51:29    

black_lord a écrit :

tu as croisé tomate récemment ?


 
non mais il m'a posé une question sur BLABLA@OSA, c'est peut etre ca  [:cerveau pingouino]


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 11:51:42    


 
non  [:cerveau o]


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 12:02:35    

black_lord a écrit :

tu as croisé tomate récemment ?


 


 
bon et sinon, vous n'avez pas une petite idée ?  :ange:


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 12:06:17    

je préfère pf à iptables [:cupra] donc non :D


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 30-07-2007 à 13:11:35    

T'as regardé du coté des mailings list. Car si le module ne se charge pas correctement, enfin s'il ne s'inscrit pas tu as peut etre chopé une version buggé.


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 14:01:22    

o'gure a écrit :

T'as regardé du coté des mailings list. Car si le module ne se charge pas correctement, enfin s'il ne s'inscrit pas tu as peut etre chopé une version buggé.


 
j'ai envoyé un mail ce matin. Bon ben je vous tiendrais au courant quand j'aurais trouvé, si je trouve...  :sweat:


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 14:02:53    

Ludovic ? [:cerveau cupra]


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 14:04:28    


 
 [:cerveau dawa]  
 
c'est bien ca, j'avais pas encore l'info pour le /proc/net/ip_tables_target donc je l'ai pas mis dedans. C'est con, moi j'ai pas recu le mail donc je peux pas me répondre pour donner l'info  :sweat:


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 14:06:10    

En fait il y a deux choses à voir avec iptables et netfilter.
- iptables : qui sert juste à configurer netfilter. Lorsque tu fais un iptables    -j ROUTE --help c'est iptables qui répond. Lui est bien configuré. Pareil quand tu fais une erreur de synthaxe. C'est iptables qui vérifie et qui répond.
 
- netfilter et tout son framework : et là c'est lui qui fait chier. Le module est chargé mais il n'est pas enregistré dans le framework. Et l'erreur que tu as (quand la synthaxe est bonne) c'est iptables qui demande à netfilter de mettre ton truc dans la chaine ROUTE. Et netfilter (si on veut) lui répond qu'il ne connait pas.


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 14:08:15    

Tu peux en envoyer un autre... c'est une bonne piste il me semble et c'est réellement la non présence de ROUTE dans ce fichier qui cause le probleme (du moins c'est le symptome). Tu prends ton mail et tu fais reply-all. Ca te rajoutera toi et la liste de diffusion dans la liste des destinataires.

 

tu t'es inscrit dessus netfilter-users ?

Message cité 1 fois
Message édité par o'gure le 30-07-2007 à 14:10:19

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 14:11:02    

o'gure a écrit :

Tu peux en envoyer un autre... c'est une bonne piste il me semble. Tu prends ton mail et tu fais reply-all. Ca te rajoutera toi et la liste de diffusion dans la liste des destinataires.
 
tu t'es inscrit dessus netfilter-users ?


 
oui oui, je me suis inscrit pour envoyer le mail mais je l'ai pas recu  :sweat:
donc je peux pas faire un reply-all  :sarcastic:
 
edit: tu l'as encore le mail ? sinon tu aurais peut être pu faire un pti reply et me demander ce que j'ai dans mon /proc/net/ip_tables_target  :ange:


Message édité par _p1c0_ le 30-07-2007 à 14:13:29

---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 14:14:02    

Ben tu as toujours le message que tu as envoyé ?
edit: oui je peux faire ca aussi, je répond a la liste et je te mets en Cc [:petrus75]

Message cité 1 fois
Message édité par o'gure le 30-07-2007 à 14:14:21

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 14:15:11    

o'gure a écrit :

Ben tu as toujours le message que tu as envoyé ?
edit: oui je peux faire ca aussi, je répond a la liste et je te mets en Cc [:petrus75]


 
merci  [:cerveau dawa]


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 14:25:11    

C'est bon.


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 14:26:23    

Yann ? [:cerveau cupra]
 
merci beaucoup!


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 14:27:15    

C'est ca, enchanté [:cerveau jap]
Tiens marrant. Je t'ai mis en Cc, j'ai recu le mail via la mailing list (normal) et dans celui la tu n'y es plus...

Message cité 1 fois
Message édité par o'gure le 30-07-2007 à 14:27:36

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 14:31:28    

o'gure a écrit :

C'est ca, enchanté [:cerveau jap]


 
De même! T'as pas de la famille dans l'aube ? ou alors tu as un nom de famille répandu  :)  
 
J'ai bien recu le mail et j'ai répondu en tous cas, encore merci!  :D  


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 14:32:29    

Je dois avoir une vague famille du coté de reims. Sinon oui, c'est super répandu.


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 14:41:27    

Tu as essayé de retirer le module ipt_ROUTE  

modprobe -r ipt_ROUTE


et voir le contenu de ton /proc/net/ip_tables_target, voir si le ERROR se barre ?


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 14:42:38    

je viens d'essayer et le ERROR est toujours présent...


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 14:48:10    

o'gure a écrit :

Je dois avoir une vague famille du coté de reims. Sinon oui, c'est super répandu.


je me permet de m incruster mais Reims c est dans la marne pas dans l'aube :o


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 30-07-2007 à 14:49:01    

Le_Tolier a écrit :


je me permet de m incruster mais Reims c est dans la marne pas dans l'aube :o


 
c'est vrai, mais je vis à reims la semaine et dans l'aube le week end pour le moment!  [:cerveau spamafote]
 
EDIT: et c'est quand que tu me donnes une réponse à mon vrai problème??  :ange:


Message édité par _p1c0_ le 30-07-2007 à 14:49:58

---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 14:54:53    

o'gure a écrit :

En fait il y a deux choses à voir avec iptables et netfilter.
- iptables : qui sert juste à configurer netfilter. Lorsque tu fais un iptables    -j ROUTE --help c'est iptables qui répond. Lui est bien configuré. Pareil quand tu fais une erreur de synthaxe. C'est iptables qui vérifie et qui répond.
 
- netfilter et tout son framework : et là c'est lui qui fait chier. Le module est chargé mais il n'est pas enregistré dans le framework. Et l'erreur que tu as (quand la synthaxe est bonne) c'est iptables qui demande à netfilter de mettre ton truc dans la chaine ROUTE. Et netfilter (si on veut) lui répond qu'il ne connait pas.


 
euh sinon pour approfondir le truc, tu trouves ce genre d'infos où ? sur le site de netfilter ?


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 14:57:16    

Heu aucune idée. Il y a 3 ans je m'étais intéressé à netfilter/iptables. Je m'étais bien amusé avec. J'avais lu les docs sur le site de netfilter et pas mal de truc à gauche/droite.

 

Mais principalement la : http://www.netfilter.org/documentation/
Après c'est les sources [:petrus75]


Message édité par o'gure le 30-07-2007 à 14:57:51

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 15:04:36    

_p1c0_ a écrit :


 
euh sinon pour approfondir le truc, tu trouves ce genre d'infos où ? sur le site de netfilter ?


 
si je pouvais ca serait avec un grand plaisir mais la ce depasse mes connaissances désolé  :o


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 30-07-2007 à 15:05:21    

T'as regardé au moment de l'installation du ipt_ROUTE si des logs relatifs au kernel étaient générés ?


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 15:08:32    

je viens de tilter un truc là, quand j'ai compilé mon module ROUTE dans le kernel, j'ai modifié le source parce que ca compilait pas...
 

net/ipv4/netfilter/ipt_ROUTE.c: In function 'init':
net/ipv4/netfilter/ipt_ROUTE.c:473: warning: implicit declaration of function 'ipt_register_target'
net/ipv4/netfilter/ipt_ROUTE.c: In function 'fini':
net/ipv4/netfilter/ipt_ROUTE.c:479: warning: implicit declaration of function 'ipt_unregister_target'


 
En cherchant un peu, j'avais vu que les noms des fonctions avaient changé: ipt_ devenait xt_. J'ai corrigé ca et ca a compilé. Peut etre que le problème pourrait venir de là aussi...


---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 15:10:27    

et c'est maintenant que tu le dis ? [:petrus75]


Message édité par o'gure le 30-07-2007 à 15:10:48

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 30-07-2007 à 15:10:39    

o'gure a écrit :

T'as regardé au moment de l'installation du ipt_ROUTE si des logs relatifs au kernel étaient générés ?


 
y a rien  [:cerveau spamafote]
 
edit: je viens de vérifier les autres modules et y a pas de ipt_register mais bien xt_register. Ca doit pas venir de là alors...


Message édité par _p1c0_ le 30-07-2007 à 15:14:48

---------------
-_- http://www.scienceshopping.com -_-
Reply

Marsh Posté le 30-07-2007 à 15:15:56    

T'as modifié comment ?
Tu peux mettre un diff ici ?


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed