OVH Community, votre nouvel espace communautaire.

NAT depuis plusieurs IPFO


jobpilot
24/02/2015, 11h29
# pour sortir depuis le container avec la bonne ipfo
iptables -t nat -A POSTROUTING -s 192.168.3.2 -o vmbr0 -j SNAT --to IPFO
#ssh entrée sur ssh par exemple
iptables -t nat -A PREROUTING -p tcp -d IPFO --dport 22 -j DNAT --to-destination 192.168.3.2
#on peut même changer de port à la volée
iptables -t nat -A PREROUTING -p tcp -d IPFO --dport 80 -j DNAT --to-destination 192.168.3.2:8080

Tous ça sur l'hyperviseur, et il y a un truc que j'ai jamais compris, ça marche même si tu n'as pas déclaré les IPFO sur l'hyperviseur (pas toucher au contenus de /etc/network/interfaces)

MadMass
23/02/2015, 22h59
J'ai fini par faire une solution un peu bricole mais qui me convient bien : j'ai créé un CT uniquement pour servir de proxy, et tout semble bon.
J'ai trouvé la bonne façon pour le configurer sur cette page : http://ubuntuforums.org/showthread.php?t=1795535
C'est plus compliqué que du bête nat du fait des limitations de OpenVZ. Et il a fallu activer le nat dans la config de vz d'ailleurs.

Merci de l'aide en tout cas

cassiopee
23/02/2015, 14h43
A vue de nez je dirais qu'il faut rajouter la notion "d'adresse IP source" dans la commande iptables ci-dessus.

Donc ajouter quelque chose comme :

Code:
-s 82.201.202.203/32
où "82.201.202.203" est l'adresse IP failover concernée par cette ventilation de ports.

MadMass
22/02/2015, 22h41
Bonjour à tous,

J'ai un serveur dédié sous Proxmox VE avec une IP statique et 3 IPFO liées à lui.

J'ai un CT auquel est alloué une IPFO, avec apache dessus, aucun problème.

Par contre, j'aimerai utiliser le NAT pour répartir les ports d'une de mes IPFO sur plusieurs de mes CT. Jusqu'ici, j'utilisais cette règle iptables sur l'hyperviseur :

iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport port -j DNAT --to iport

Elle fonctionne bien pour l'interface vmbr0 qui est affectée à l'ip statique de ma machine. Je suppose que je dois donc créer une interface pour mon IPFO, mais jusqu'ici je n'y suis pas parvenu. Comment créer ladite interface sans entrer en conflit avec les interfaces d'origine ?

Merci de votre aide