Marquer des paquets avec iptables.

Marquer des paquets avec iptables. - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 07-07-2012 à 11:21:58    

salut à tous,
 
Je voudrais marquer des packets avec iptables et PREROUTING pour après les rediriger sur plusieurs interfaces WAN, 3 exactement.
J'ai donc fais par exemple un :
 

Code :
  1. iptables -A PREROUTING -s 10.10.10.0/255.255.255.0 --protocol tcp --dport 443 -t mangle -j MARK --set-mark 100


 
Mais je n'arrive plus à me connecter à mon serveur web sur 10.10.11.254 car le paquets est marqué et envoyé directement sur l'interface de sorti sans regarder la table de routage. Savez vous comment faire pour dire à iptables de ne pas marquer les paquets avec pour destination 10.10.11.254? j'avais pensé à :
 

Code :
  1. iptables -A PREROUTING -s 10.10.10.0/255.255.255.0 -d 10.10.11.254 --protocol tcp --dport 443 -t mangle -j MARK --set-mark 0


 
Mais non ...
 
Merci de votre aide.


Message édité par hppp le 07-07-2012 à 11:22:26
Reply

Marsh Posté le 07-07-2012 à 11:21:58   

Reply

Marsh Posté le 07-07-2012 à 12:35:37    

Pour ton test il faut que ta règle spécifique sur ton serveur soit placée avant la plus générale.
 
Sinon, essaye le !  

[!] -s, --source address[/mask][,...]
    Source specification. Address can be either a network name, a hostname, a network IP address (with /mask), or a plain IP address. Hostnames will be resolved once only, before the rule is submitted to the kernel. Please note that specifying any name to be resolved with a remote query such as DNS is a really bad idea. The mask can be either a network mask or a plain number, specifying the number of 1's at the left side of the network mask. Thus, a mask of 24 is equivalent to 255.255.255.0. A "!" argument before the address specification inverts the sense of the address. The flag --src is an alias for this option. Multiple addresses can be specified, but this will expand to multiple rules (when adding with -A), or will cause multiple rules to be deleted (with -D).  
[!] -d, --destination address[/mask][,...]
    Destination specification. See the description of the -s (source) flag for a detailed description of the syntax. The flag --dst is an alias for this option.

Reply

Marsh Posté le 07-07-2012 à 14:33:08    

le problème c'est que je prends un :
 

Code :
  1. iptables: No chain/target/match by that name.


 
J'ai l'impression que le PREROUTING n'aime pas la destination adresse.

Reply

Marsh Posté le 08-07-2012 à 19:38:45    

pas d’idées?

Reply

Marsh Posté le 08-07-2012 à 19:46:35    

specifie la table juste apres l'argument PREROUTING ?


Message édité par gleak le 08-07-2012 à 19:46:43
Reply

Marsh Posté le 08-07-2012 à 21:53:48    

la table?

Reply

Marsh Posté le 08-07-2012 à 22:01:24    

-t mangle

Reply

Marsh Posté le 09-07-2012 à 12:51:28    

c'est ok merci ;)

Reply

Marsh Posté le 27-02-2015 à 09:35:34    

je profite du topic pour demander : le --set-mark, ca fonctionne jusqu'à quelle valeur?
à priori c'est la même taille que le champ TOS de l'entête ip, donc sur 5 bits, donc de 0 à 31. c'est bien ça? ou il n'y a pas de limitation sachant que le champ TOS n'est en fait pas marqué. :??:

Reply

Marsh Posté le 27-02-2015 à 19:37:04    

Bonjour,
--set-mark ne touche pas au champ dscp. Pour ça tu as une autre target DSCP avec --set-dscp.
le set-mark colle une sorte de "label" lors de la manipulation du paquet interne à la machine pour être utiliser par exemple par tc et iproute.
Dans le code netfilter/réseau, le paquet est "géré" par une structure de donnée, c'est juste un champs de cette structure. Une sorte de méta-information local.


Message édité par o'gure le 27-02-2015 à 19:42:08

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

Marsh Posté le 27-02-2015 à 19:37:04   

Reply

Marsh Posté le 02-05-2015 à 23:14:04    

merci pour l'info :jap:

Reply

Sujets relatifs:

Leave a Replay

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