Skip navigation

Proxmox : permettre aux CT Open VZ d’accéder à Internet

Routage des CT Open VZ dans Proxmox

Il existe 3 façons de permettre aux CT Open VZ de Proxmox de communiquer entre elles et de communiquer vers l’extérieur.

  • Avoir une carte réseau dans le container (ethn) ;
  • Faire un pont (bridge – OSI couche 2) ;
  • Utiliser l’hôte en tant que router (venet – OSI couche 3).

Cet article à pour but d’utiliser l’hôte comme router afin de faire commumiquer les CT Open VZ entre elles et vers l’extérieur. Ce parce que selon cette page de Wiki : http://wiki.openvz.org/WP/What_are_containers#Networking, cette solution offre un haut niveau de sécurité ainsi qu’un haut niveau de contrôle. De plus les CT Open VZ n’ont pas d’adresse MAC, et ne peuvent donc pas utiliser de broadcast (couche 2 du modèle OSI).

Configuration de l’hôte

Comme Proxmox est basé sur Debian (7 au moment de la rédaction de cet article) les commandes et l’architecture du système de fichiers sont quasiement les mêmes. Ainsi, pour éditer les interfaces réseaux on pourrait éditer directement le fichier /etc/network/interfaces. Cependant il existe aussi un fichier /etc/network/interfaces.new, c’est ce dernier qui est édité lorsque l’on modifie le réseau de l’hôte via l’interface web. Pour que les modifications effectué dans /etc/network/interfaces.new soient prisent en compte, il faut redémarrer l’hôte.

: une erreur de configuration dans le fichier /etc/network/interfaces ou même dans /etc/network/interfaces.new peut entraîner l’impossibilité d’accéder à distance au serveur, avec les conséquences que vous savez.

Une fois Proxmox installé, le fichier /etc/network/interfaces devrait ressembler à celui-ci.

contenu du fichier

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

iface eth0 inet manual

auto vmbr0
iface vmbr0 inet static
	address 216.58.211.68
	netmask 255.255.255.0
	gateway 216.58.211.1
	bridge_ports eth0
	bridge_stp off
	bridge_fd 0

Après modification ce même fichier devait être semblable à celui-ci :

contenu du fichier

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
	address 216.58.211.68
	netmask 255.255.255.0
	gateway 216.58.211.1
	post-up echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp

auto vmbr0
iface vmbr0 inet static
	address 172.16.0.254
	netmask 255.255.255.0
	bridge_ports none
	bridge_stp off   
	bridge_fd 0
	post-up echo 1 > /proc/sys/net/ipv4/ip_forward
	# routing for the 172.16.0.2.0/24 network
	post-up   iptables -t nat -A POSTROUTING -s '172.16.0.0/24' -o eth0 -j MASQUERADE
	post-down iptables -t nat -D POSTROUTING -s '172.16.0.0/24' -o eth0 -j MASQUERADE

: la configuration réseau des CT Open VZ doivent maintemant se faire en Routed mode (venet) avec une IP dans la plage précédement indiqué (dans le cas présent : 172.16.0.0/24) et non en Bridge mode.

L’adresse IP (216.58.211.68) doit correspondre à l’addresse du serveur Proxmox (l’hôte). De même, les informations pour le masque de sous-réseau (255.255.255.0) et la passerelle par défaut (216.58.211.1) doivent correspondre à celles fournit par les administrateurs du réseau du serveur Proxmox.
La plage d’adresse 172.16.0.0/24 est arbitraire, ce peut-être une autre plage avec un autre masque de sous-réseau. C’est dans cette plage qu’il faudra attribuer les IP des CT Open VZ par la suite.

Configuration de la ou des CT Open VZ

Le fichier /etc/network/interfaces auto généré devrait ressembler à celui-ci.

contenu du fichier

# Auto generated lo interface
auto lo
iface lo inet loopback

# Auto generated venet0 interface
auto venet0
iface venet0 inet manual
	up ifconfig venet0 up
	up ifconfig venet0 127.0.0.2
	up route add default dev venet0
	down route del default dev venet0
	down ifconfig venet0 down


iface venet0 inet6 manual
	up route -A inet6 add default dev venet0
	down route -A inet6 del default dev venet0

auto venet0:0
iface venet0:0 inet static
	address 10.0.0.20
	netmask 255.255.255.255

Avec comme IP (10.0.0.20), l’adresse configurée au moment de la création de la CT Open VZ.

: Il est toujours possible de modifier l’IP et/ou le type d’interface réseau après la création de la CT Open VZ.

: Pour plus d’informations sur les autres méthodes de gestion de réseau des CT Open VZ, voir : https://pve.proxmox.com/wiki/Network_Model.

by | February 1, 2015 | No Comments | Système | Tags : proxmox routage router virtualisation