J'ai installé un serveur avec libvirt et j'ai créé une VM de test. Lorsque j'utilise le réseau par défaut pour son interface, elle obtient une IP privée et le NAT semble fonctionner correctement. J'ai installé OpenVPN, donc j'ai une interface tun0 que je veux NATer sur cette VM maintenant (tun0 a une IP privée sur 172.16.0.0, je n'ai aucun contrôle sur le serveur VPN et je n'ai aucun moyen d'obtenir plus d'IPs privées là-bas). J'ai créé le réseau en utilisant les mêmes paramètres que le réseau par défaut, mais en utilisant 10.99.0.0 pour le DHCP (pourquoi pas), mais lorsque j'essaie de pinguer quelque chose sur Internet depuis la VM, j'obtiens un icmp-port-unreachable.
Voici la chaîne forward dans iptables :
0 0 ACCEPT all -- tun0 vpn0 0.0.0.0/0 10.99.0.0/16 ctstate RELATED,ESTABLISHED
0 0 ACCEPT all -- vpn0 tun0 10.99.0.0/16 0.0.0.0/0
0 0 ACCEPT all -- vpn0 vpn0 0.0.0.0/0 0.0.0.0/0
0 0 REJECT all -- * vpn0 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
15 1244 REJECT all -- vpn0 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 ACCEPT all -- eno1 virbr0 0.0.0.0/0 192.168.122.0/24 ctstate RELATED,ESTABLISHED
0 0 ACCEPT all -- virbr0 eno1 192.168.122.0/24 0.0.0.0/0
0 0 ACCEPT all -- virbr0 virbr0 0.0.0.0/0 0.0.0.0/0
0 0 REJECT all -- * virbr0 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- virbr0 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
Comme vous pouvez le voir, eno1 est l'interface menant à Internet que le réseau par défaut utilise via virbr0, et tun0 est l'interface VPN utilisée via l'interface vpn0 (c'est ainsi que je l'ai nommée dans la configuration de libvirt). En regardant les numéros, la 5ème règle est celle qui correspond, pour une raison quelconque.
Est-ce possible que libvirt n'utilise pas correctement l'interface tun0 mais au lieu de cela, pour une raison quelconque, essaie de faire du NAT à travers eno1 ?
Voici sa configuration :
vpn
2a641009-63db-a0d9-dac2-6204748786db
Je ne vois aucune différence avec le réseau par défaut, sauf que le réseau par défaut fonctionne.
Merci pour l'aide