URL: https://linuxfr.org/forums/linux-debian-ubuntu/posts/nat-loopback-a-pas-compris Title: NAT loopback: a pas compris :( Authors: Anonyme Date: 2022年01月10日T11:04:18+01:00 License: CC By-SA Tags: Score: 2 Hello, Je m'arrache les cheveux ! Impossible de trouver une solution à un problème qui me parait pourtant simple. J'ai une machine avec un interface eth0 et une IP publique A.B.C.D. Cette machine est protégée par des règles iptables gérée avec ferm (oui je sais, nftables mieux qu'iptables tout ça, mais ça sera pour l'étape d'après). Cette machine héberge des VMs qui gèrent différents services, NATés sans problème pour être accessibles de l'extérieur, chacune ayant une ip 192.168.0.X. Un bridge `vm-bridge` relie A.B.C.D à l'IP 192.168.0.1 Pour chaque forward de l'extérieur vers mes VM, les règles iptables sont établies via cette fonction: ``` @def &FORWARD($proto, $port, $dest) = { table nat chain PREROUTING interface eth0 daddr A.B.C.D proto $proto dport $port DNAT to $dest; table filter chain FORWARD interface eth0 outerface vm-bridge daddr $dest proto $proto dport $port ACCEPT; } ``` /proc/sys/net/ipv4/ip_forward est bien à 1 J'ai bien activé le masquerading pour permettre aux VMs d'avoir accès à l'extérieur. ``` table nat { chain POSTROUTING { source 192.168.0.0/24 MASQUERADE; } } ``` Tout fonctionne parfaitement de l’extérieur vers les VMs, et des VMs vers l'extérieur. Mais entre VMs ou depuis la machine hôte vers les VMs ça ne passe pas: la connexion est refusée. J'ai beau avoir écumé tous les résultats de recherche sur NAT loopback et SNAT, impossible de trouver une solution qui me permette de communiquer entre VMs ou de l'hôte vers une VM. Je suis certain de ne pas avoir compris un détail basique, mais impossible de mettre le doigt dessus. Merci d'éclairer mes lanternes avec une explication limpide de mon égarement qui me permettra d'avancer.