Bonjour,
Je cherche à filtrer une IP source à destination d'une VIP1 (192.168.60.95) pour la rediriger sur une VIP2 (192.168.60.96) en entrée du même serveur.
Pour cela , j'utilise la fonction POSTROUTING d'iptable avec du DNAT.
J'ai également positionné une rêgle FORWARD.
Je ne parviens pas à réaliser cette fonction, tcpdump voit les packets arriver mais ils ne sortent pas d'iptables pour re-rentrer sur la même machine.
Par contre, si je configure en VIP2 une VIP externe à la machine (non locale à la machine), ça fonctionne très bien, tcpdump snif le traffic jusqu'à la destination.
L'ip forwarding est pourtant bien activé.
Les log syslog me donnent:
device eth0 entered promiscuous mode
ip_rt_bug: 192.168.100.41 -> 192.168.60.96
Voici le script:
auriez-vous une idée svp ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 iptables -X iptables -F INPUT iptables -F OUTPUT iptables -F FORWARD iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP # # Initialization de la table NAT # iptables -t nat -F iptables -t nat -X iptables -t nat -P PREROUTING ACCEPT # # Activation du NAT (logiquement deja active par lvs) # echo " + Activation du NAT" echo 1 > /proc/sys/net/ipv4/ip_forward # # Routage et DNAT en entree # iptables -t nat -F PREROUTING iptables -t nat -A PREROUTING -s 192.168.100.41/32 -p tcp -d 192.168.60.95/32 -j DNAT --to-destination 192.168.60.96 iptables -A FORWARD -p tcp -s 192.168.100.41/32 -d 192.168.60.96/32 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -s 127.0.0.0/8 -d 127.0.0.0/8 -i lo -j ACCEPT iptables -A INPUT -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -s 127.0.0.0/8 -d 127.0.0.0/8 -o lo -j ACCEPT iptables -A OUTPUT -j ACCEPT
Merci d'avance,
Eric
Partager