Tutoriel · Réseau Proxmox VE 9
Tutoriel réseau Proxmox une IP publique pour chaque machine virtuelle
Ce tutoriel réseau Proxmox vous montre comment donner à une machine virtuelle sa propre IP publique sur votre serveur Primcast : attachez-la au pont vmbr0, saisissez l'adresse, la passerelle et le masque de sous-réseau, et elle est en ligne. Pas de redémarrage, et rien à enregistrer chez nous au préalable.
Si vous voulez plus de contrôle, deux autres configurations suivent : le trafic routé via l'hôte, et des machines privées qui partagent l'adresse de l'hôte. Nous avons testé les trois sur notre propre réseau avant de les documenter.
- Masque de sous-réseau
- /24
- Passerelle IPv4
- .1 de la plage
- IPv6
- /64 · gw ::1
- DNS de l'hôte
- 209.244.0.3
Trouvez vos IP publiques et la passerelle que chacune utilise
Vos adresses figurent dans l'e-mail Configuration du serveur dédié que nous avons envoyé le jour de la création de votre serveur, d'abord les IPv4 puis les IPv6. Vous pouvez aussi les voir à tout moment dans votre compte : ouvrez le serveur et consultez le panneau intitulé Accès, réseau & rDNS.
Sur un serveur Proxmox, seule la première adresse est configurée sur l'hôte. L'e-mail vous l'indique sous la liste des adresses. Nous nous arrêtons là volontairement : un hôte détenant toutes les adresses répondrait pour chacune d'elles, et vos machines virtuelles n'auraient plus rien à utiliser. Les autres vous appartiennent, à attribuer aux machines virtuelles ou à l'hôte si vous voulez qu'il en ait plusieurs.
Vous avez besoin des mêmes quelques valeurs à chaque fois que vous placez une adresse :
- Masque de sous-réseau
- /24Soit 255.255.255.0.
- Passerelle
- .1Le .1 de la plage où se trouve l'adresse, donc 203.0.113.58 utilise 203.0.113.1.
- DNS sur l'hôte
- 209.244.0.3Vos machines virtuelles peuvent utiliser n'importe quel résolveur de votre choix.
- IPv6
- /64La passerelle est le préfixe suivi de ::1. L'étape 06 donne les détails.
Vérifiez d'abord la passerelle quand quelque chose échoue. Les adresses obtenues ensemble partagent une plage et une passerelle. Les adresses ajoutées plus tard à votre serveur peuvent provenir d'une autre de nos plages, et elles utilisent alors le .1 propre à cette plage. Une mauvaise passerelle est la raison la plus courante pour laquelle une nouvelle machine virtuelle ne peut rien atteindre.
Regardez le pont réseau Proxmox que vous avez déjà
Connectez-vous à l'hôte en SSH en tant que root et voyez ce qui s'y trouve :
ip -br addr cat /etc/network/interfaces
Un serveur que nous venons d'installer a un fichier qui ressemble à peu près à ceci. Le nom de votre interface et votre première adresse seront différents :
/etc/network/interfaces
auto lo
iface lo inet loopback
iface eno1 inet manual
auto vmbr0
iface vmbr0 inet static
address 203.0.113.10/24
gateway 203.0.113.1
bridge-ports eno1
bridge-stp off
bridge-fd 0 Remarquez que vmbr0 est déjà un pont avec votre port réseau branché dessus. C'est tout ce dont la configuration pontée de l'étape 03 a besoin, donc pour celle-là vous laissez ce fichier tranquille.
Proxmox VE 9 fonctionne sur Debian 13 et utilise ifupdown2, ce qui signifie que les changements réseau s'appliquent sans redémarrage. Après avoir enregistré le fichier, exécutez :
ifreload -a
Si vous préférez l'interface web Proxmox, vos modifications attendent dans /etc/network/interfaces.new jusqu'à ce que vous cliquiez sur Appliquer la configuration.
Ouvrez la console dans votre compte avant de changer quoi que ce soit. Elle atteint le serveur via sa carte de gestion, pas via le réseau, donc elle fonctionne toujours si une faute de frappe met le serveur hors ligne.
Quelle configuration devriez-vous utiliser ?
| Question | Ponté | Routé | Privé |
|---|---|---|---|
| Utilise une de vos IP publiques | Oui | Oui | Non |
| Changements sur l'hôte | Aucun | L'adresse passe sur la carte réseau | Un second pont |
| Le pare-feu de l'hôte voit le trafic | Non | Tout | Tout |
| Joignable depuis Internet | Oui | Oui | Seulement les ports que vous redirigez |
| DHCP autorisé | Non | Non | Oui |
Ponté : une IP publique Proxmox directement sur le réseau
La plupart des gens devraient choisir celle-ci. Votre machine virtuelle agit comme son propre ordinateur sur le même commutateur, parle directement à nos routeurs, et l'hôte n'a besoin d'aucun changement.
Dans Proxmox, ajoutez un périphérique réseau à la machine virtuelle, choisissez vmbr0 comme pont, et gardez l'adresse MAC générée par Proxmox. Configurez ensuite l'adresse à l'intérieur de la machine virtuelle.
Debian ou Ubuntu avec ifupdown
/etc/network/interfaces
auto lo
iface lo inet loopback
auto ens18
iface ens18 inet static
address 203.0.113.58/24
gateway 203.0.113.1
dns-nameservers 209.244.0.3 1.1.1.1 Ubuntu avec netplan
/etc/netplan/01-netcfg.yaml
network:
version: 2
ethernets:
ens18:
addresses: [203.0.113.58/24]
routes:
- to: default
via: 203.0.113.1
nameservers:
addresses: [209.244.0.3, 1.1.1.1] Windows
Mettez la même adresse, le même masque et la même passerelle dans les paramètres IPv4 de la carte réseau. Le système d'exploitation ne change rien pour nous : votre machine virtuelle est un ordinateur de plus sur le câble.
Vous n'avez rien à nous dire
Il n'y a aucun formulaire à remplir pour chaque nouvelle machine virtuelle, et vous ne nous envoyez pas d'adresses MAC. Certains hébergeurs demandent les deux. Nous avons vérifié de notre côté avant de l'affirmer : le port du commutateur utilisé par votre serveur n'a aucune limite d'adresses MAC et la sécurité des ports est désactivée. Nous avons aussi mis une seconde adresse et une seconde MAC sur un de nos propres serveurs et l'avons joint depuis Internet.
Quelques règles pour que cela continue de fonctionner :
- Donnez à chaque machine virtuelle sa propre adresse MAC. Si deux la partagent, ou si l'une copie celle de l'hôte, aucune ne fonctionne correctement.
- Utilisez la passerelle qui correspond à la plage de l'adresse, depuis l'étape 01.
- Utilisez uniquement des adresses qui sont sur votre compte. Ce pont se connecte à un réseau où se trouvent d'autres clients, et une adresse qui n'est pas la vôtre détourne leur trafic.
- Ne lancez jamais de serveur DHCP ni d'annonces de routeur sur
vmbr0, pour la même raison. Si vous voulez un adressage automatique, utilisez le pont privé de l'étape 05.
Routé : faites passer chaque machine virtuelle par l'hôte
Choisissez cette option quand vous voulez que le pare-feu de l'hôte voie chaque paquet, ou quand vous préférez que vos machines virtuelles n'apparaissent jamais sur le réseau partagé. Elles utilisent toujours de vraies IP publiques de votre compte. Seul le chemin change.
L'adresse publique passe du pont à la carte réseau, l'hôte transfère le trafic et répond pour les machines derrière lui. Sur l'hôte :
/etc/network/interfaces (host)
auto lo
iface lo inet loopback
auto eno1
iface eno1 inet static
address 203.0.113.10/24
gateway 203.0.113.1
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up echo 1 > /proc/sys/net/ipv4/conf/eno1/proxy_arp
auto vmbr0
iface vmbr0 inet manual
bridge-ports none
bridge-stp off
bridge-fd 0
up ip route add 203.0.113.58/32 dev vmbr0
down ip route del 203.0.113.58/32 dev vmbr0 Ajoutez une ligne up et une ligne down pour chaque adresse que vous routez. À l'intérieur de la machine virtuelle, l'adresse est un /32, et l'hôte doit être joignable via sa propre route avant la route par défaut :
/etc/network/interfaces (virtual machine)
auto lo
iface lo inet loopback
auto ens18
iface ens18 inet static
address 203.0.113.58/32
post-up ip route add 203.0.113.10 dev ens18
post-up ip route add default via 203.0.113.10
dns-nameservers 209.244.0.3 1.1.1.1 Gardez la ligne proxy_arp. Nos routeurs demandent au réseau qui détient chaque adresse, et cette ligne fait répondre l'hôte pour les machines derrière lui. Sans elle, elles sont introuvables. Pour rendre les deux réglages permanents à la manière de sysctl, mettez ceci dans un fichier sous /etc/sysctl.d/ :
net.ipv4.ip_forward=1 net.ipv4.conf.eno1.proxy_arp=1
Le travail supplémentaire vous offre un hôte capable de filtrer et de journaliser tout le trafic. Si vous n'en avez pas besoin, la configuration pontée a moins de pièces mobiles.
Privé : des machines virtuelles qui partagent l'adresse de l'hôte
Beaucoup de machines virtuelles ont seulement besoin de sortir, jamais d'être jointes : exécuteurs de build, workers, une base de données qui doit rester cachée. Donnez-leur des adresses privées sur un second pont, et l'hôte traduit leur trafic vers sa propre IP publique. Cela n'utilise aucune de vos adresses, vous pouvez donc en lancer autant que le matériel le permet.
Ajoutez un second pont et laissez vmbr0 tel quel :
auto vmbr1
iface vmbr1 inet static
address 10.10.10.1/24
bridge-ports none
bridge-stp off
bridge-fd 0
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o eno1 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o eno1 -j MASQUERADE Attachez les machines virtuelles à vmbr1 et donnez à chacune une adresse dans cette plage, avec 10.10.10.1 comme passerelle. Internet les voit comme votre serveur. Rien ne peut les joindre de l'extérieur tant que vous ne redirigez pas un port, ce qui demande une paire de lignes de plus sur un port que l'hôte n'utilise pas :
post-up iptables -t nat -A PREROUTING -i eno1 -p tcp --dport 8443 -j DNAT --to 10.10.10.2:443 post-down iptables -t nat -D PREROUTING -i eno1 -p tcp --dport 8443 -j DNAT --to 10.10.10.2:443
Comme vmbr1 n'a pas de port physique, un serveur DHCP y est sûr, et c'est un moyen facile d'adresser de nombreuses machines.
Ajoutez vos adresses IPv6
Vous recevez des adresses IPv6 individuelles, pas un bloc à découper. Elles sont listées à la fin de l'e-mail de configuration, et vous les placez une par une, comme les IPv4 : une sur l'hôte si vous voulez que l'hôte soit joignable en IPv6, les autres sur les machines virtuelles qui en ont besoin. Aucune n'est configurée pour vous à l'installation.
Écrivez chaque adresse avec /64. La passerelle est le préfixe suivi de ::1, donc une adresse dans 2001:db8:1234::/64 utilise 2001:db8:1234::1. Sur l'hôte, à côté du pont existant :
iface vmbr0 inet6 static
address 2001:db8:1234::2/64
gateway 2001:db8:1234::1 Dans une machine virtuelle sur le pont :
iface ens18 inet6 static
address 2001:db8:1234::5/64
gateway 2001:db8:1234::1 Exécutez à nouveau ifreload -a. Comme ces adresses ne forment pas un bloc qui vous appartient, n'annoncez pas de routes et ne distribuez pas d'adresses qui ne vous ont pas été données. Si vous en avez besoin de plus, demandez-nous.
Configurez le DNS inverse sur chaque adresse
Vous pouvez configurer vous-même le DNS inverse sur n'importe laquelle de vos adresses. Connectez-vous, ouvrez le serveur et allez dans Accès, réseau & rDNS. Chaque adresse affiche son nom actuel avec un bouton Modifier le rDNS à côté, et les adresses IPv6 fonctionnent de la même façon.
Saisissez un nom d'hôte : lettres, chiffres, tirets et points, au moins deux parties, chacune de 1 à 63 caractères. Le point final est ajouté pour vous. Le changement prend quelques minutes.
Si une machine virtuelle envoie des e-mails, configurez le DNS inverse sur l'adresse d'où part le courrier. Dans la configuration privée, c'est l'adresse de l'hôte. Ajoutez aussi l'enregistrement direct correspondant chez votre fournisseur DNS, car les serveurs de messagerie récepteurs vérifient que les deux concordent et rejettent le courrier sinon.
Questions sur le réseau Proxmox, avec réponses
01Comment donner une IP publique à une VM Proxmox ?
Attachez la machine virtuelle au pont vmbr0 et configurez une de vos IP publiques supplémentaires à l'intérieur, avec un masque /24 et le .1 de la plage de cette adresse comme passerelle. Sur un serveur Primcast, l'hôte n'a besoin d'aucun changement pour cela, et vous n'avez pas à enregistrer l'adresse MAC chez nous.
02Ma machine virtuelle tourne mais n'a pas de réseau. Que dois-je vérifier ?
Commencez par la passerelle : elle doit être le .1 de la plage à laquelle appartient l'adresse, et des adresses ajoutées à des moments différents peuvent se trouver dans des plages différentes. Assurez-vous ensuite que l'adresse est sur votre compte, que le masque est /24, et qu'aucune autre machine n'utilise la même adresse MAC.
03Dois-je envoyer à Primcast l'adresse MAC de chaque machine virtuelle ?
Non. Votre port de commutateur apprend autant d'adresses MAC que vous en utilisez et la sécurité des ports est désactivée, donc une machine virtuelle apparaît comme n'importe quel ordinateur physique. Gardez l'adresse MAC générée par Proxmox et ne donnez jamais la même à deux machines.
04Pourquoi une seule IP est-elle configurée sur mon nouveau serveur Proxmox ?
Pour que vos machines virtuelles aient des adresses à utiliser. Si l'hôte les détenait toutes, il répondrait pour chacune d'elles. Nous configurons la première adresse pour que vous puissiez joindre le serveur, et l'e-mail de configuration le note sous votre liste d'adresses.
05Dois-je utiliser le réseau ponté ou routé dans Proxmox ?
Utilisez le ponté sauf si vous avez besoin que l'hôte filtre le trafic. Il ne change rien sur l'hôte et chaque machine virtuelle se comporte comme un ordinateur normal sur le réseau. Le routé vous convient quand le pare-feu de l'hôte doit voir chaque paquet, en échange d'un peu plus de configuration dans chaque machine.
06Puis-je utiliser DHCP pour mes machines virtuelles Proxmox ?
Oui, sur un pont privé sans port physique, comme vmbr1 à l'étape 05. Jamais sur vmbr0 : il se connecte à un réseau que d'autres clients partagent, et un serveur DHCP ou des annonces de routeur y répondraient à des machines qui ne sont pas les vôtres.
07J'ai appliqué une mauvaise configuration réseau et perdu le serveur. Comment revenir ?
Ouvrez la console depuis votre compte Primcast. Elle passe par la carte de gestion du serveur plutôt que par son réseau, donc elle fonctionne pendant que le réseau est cassé. Corrigez /etc/network/interfaces, exécutez ifreload -a, et le serveur est à nouveau joignable.
08Comment obtenir plus d'adresses IP pour mes machines virtuelles ?
Demandez sur le chat en direct ou ouvrez un ticket, et dites-nous à quoi servira chaque adresse, car les registres d'adresses exigent une raison pour chaque attribution. Les adresses IPv4 supplémentaires sont facturées mensuellement sur le même compte et apparaissent dans votre panneau de contrôle une fois allouées.
Bloqué sur une étape ? Demandez-nous sur le chat.
Notre assistant IA répond en quelques secondes et peut vérifier votre serveur et ses adresses pour vous. Demandez une personne quand vous le souhaitez.