Tutorial · Rede no Proxmox VE 9
Tutorial de rede no Proxmox um IP público para cada máquina virtual
Este tutorial de rede no Proxmox mostra como dar a uma máquina virtual o seu próprio IP público no seu servidor Primcast: ligue-a à bridge vmbr0, introduza o endereço, o gateway e a máscara de rede, e fica online. Sem reiniciar e sem ter de registar nada connosco primeiro.
Se quiser mais controlo, seguem-se duas outras configurações: tráfego encaminhado através do host e máquinas privadas que partilham o endereço do host. Testámos as três na nossa própria rede antes de as documentar.
- Máscara de rede
- /24
- Gateway IPv4
- .1 do intervalo
- IPv6
- /64 · gw ::1
- DNS do host
- 209.244.0.3
Encontre os seus IPs públicos e o gateway que cada um utiliza
Os seus endereços estão no email Dedicated Server Setup que enviámos no dia em que o servidor foi criado, primeiro IPv4 e depois IPv6. Também os pode ver a qualquer momento na sua conta: abra o servidor e procure o painel chamado Access, Networking & rDNS.
Num servidor Proxmox, apenas o primeiro endereço fica configurado no host. O email indica-o abaixo da lista de endereços. Paramos aí de propósito: um host com todos os endereços responderia por todos eles, e as suas máquinas virtuais não teriam nada para usar. Os restantes são seus para atribuir a máquinas virtuais, ou ao host se quiser que ele tenha mais do que um.
Precisa sempre dos mesmos valores quando coloca um endereço:
- Máscara de rede
- /24Que é 255.255.255.0.
- Gateway
- .1O .1 do intervalo onde o endereço se encontra, portanto 203.0.113.58 usa 203.0.113.1.
- DNS no host
- 209.244.0.3As suas máquinas virtuais podem usar qualquer resolver que prefira.
- IPv6
- /64O gateway é o prefixo seguido de ::1. O passo 06 tem os detalhes.
Verifique primeiro o gateway quando algo falha. Endereços obtidos em conjunto partilham um intervalo e um gateway. Endereços adicionados mais tarde ao seu servidor podem vir de um intervalo diferente dos nossos, e nesse caso usam o .1 desse intervalo. Um gateway errado é a razão mais comum para uma nova máquina virtual não conseguir alcançar nada.
Veja a bridge de rede Proxmox que já tem
Inicie sessão no host por SSH como root e veja o que lá está:
ip -br addr cat /etc/network/interfaces
Um servidor que acabámos de instalar tem um ficheiro com um aspeto aproximado a este. O nome da sua interface e o primeiro endereço serão diferentes:
/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 Repare que vmbr0 já é uma bridge com a sua porta de rede ligada a ela. É tudo o que a configuração em bridge do passo 03 precisa, por isso nesse caso deixa este ficheiro como está.
O Proxmox VE 9 corre em Debian 13 e usa ifupdown2, o que significa que as alterações de rede se aplicam sem reiniciar. Depois de guardar o ficheiro, execute:
ifreload -a
Se preferir a interface web do Proxmox, as suas edições ficam em espera em /etc/network/interfaces.new até clicar em Apply Configuration.
Abra a consola na sua conta antes de alterar qualquer coisa. Ela chega ao servidor através do cartão de gestão, não pela rede, por isso continua a funcionar se um erro de digitação deixar o servidor offline.
Que configuração deve usar?
| Pergunta | Em bridge | Encaminhada | Privada |
|---|---|---|---|
| Usa um dos seus IPs públicos | Sim | Sim | Não |
| Alterações no host | Nenhuma | O endereço passa para a placa de rede | Uma segunda bridge |
| A firewall do host vê o tráfego | Não | Todo | Todo |
| Acessível a partir da internet | Sim | Sim | Apenas portas que encaminhar |
| DHCP permitido | Não | Não | Sim |
Em bridge: um IP público Proxmox diretamente na rede
A maioria das pessoas deve escolher esta opção. A sua máquina virtual comporta-se como o seu próprio computador no mesmo switch, fala diretamente com os nossos routers e o host não precisa de qualquer alteração.
No Proxmox, adicione um dispositivo de rede à máquina virtual, escolha vmbr0 como bridge e mantenha o endereço MAC que o Proxmox gera. Depois defina o endereço dentro da máquina virtual.
Debian ou Ubuntu com 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 com 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
Coloque o mesmo endereço, máscara de rede e gateway nas definições IPv4 do adaptador de rede. O sistema operativo não faz diferença para nós: a sua máquina virtual é mais um computador na rede.
Não precisa de nos dizer nada
Não há formulário para preencher por cada nova máquina virtual, e não nos envia endereços MAC. Alguns fornecedores pedem ambos. Verificámos do nosso lado antes de o afirmar: a porta do switch que o seu servidor usa não tem limite de endereços MAC e a port security está desligada. Também colocámos um segundo endereço e MAC num dos nossos próprios servidores e alcançámo-lo a partir da internet.
Algumas regras mantêm tudo a funcionar:
- Dê a cada máquina virtual o seu próprio endereço MAC. Se duas partilharem um, ou uma copiar o do host, nenhuma funciona corretamente.
- Use o gateway que corresponde ao intervalo do endereço, do passo 01.
- Use apenas endereços que estejam na sua conta. Esta bridge liga-se a uma rede com outros clientes, e um endereço que não seja seu tira-lhes o tráfego.
- Nunca execute um servidor DHCP nem envie router advertisements em
vmbr0, pela mesma razão. Se quiser endereçamento automático, use a bridge privada do passo 05.
Encaminhada: envie cada máquina virtual através do host
Escolha esta opção quando quiser que a firewall do host veja todos os pacotes, ou quando preferir que as suas máquinas virtuais nunca apareçam na rede partilhada. Elas continuam a usar IPs públicos reais da sua conta. Apenas o caminho muda.
O endereço público passa da bridge para a placa de rede, o host encaminha o tráfego e responde pelas máquinas atrás dele. No host:
/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 Adicione uma linha up e uma linha down por cada endereço que encaminhar. Dentro da máquina virtual, o endereço é um /32, e o host tem de ser alcançável através da sua própria rota antes da rota predefinida:
/etc/network/interfaces (máquina virtual)
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 Mantenha a linha proxy_arp. Os nossos routers perguntam à rede quem detém cada endereço, e essa linha faz o host responder pelas máquinas atrás dele. Sem ela, não podem ser encontradas. Para tornar ambas as definições permanentes à maneira do sysctl, coloque isto num ficheiro em /etc/sysctl.d/:
net.ipv4.ip_forward=1 net.ipv4.conf.eno1.proxy_arp=1
O trabalho extra dá-lhe um host que pode filtrar e registar todo o tráfego. Se não precisar disso, a configuração em bridge tem menos peças móveis.
Privada: máquinas virtuais que partilham o endereço do host
Muitas máquinas virtuais só precisam de sair para a internet, nunca de ser alcançadas: runners de build, workers, uma base de dados que deve permanecer escondida. Dê-lhes endereços privados numa segunda bridge, e o host traduz o tráfego delas para o seu próprio IP público. Isto não usa nenhum dos seus endereços, por isso pode executar tantas quantas o hardware permitir.
Adicione uma segunda bridge e deixe vmbr0 como está:
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 Ligue as máquinas virtuais a vmbr1 e dê a cada uma um endereço nesse intervalo, com 10.10.10.1 como gateway. A internet vê-as como o seu servidor. Nada as pode alcançar do exterior até encaminhar uma porta, o que requer mais um par de linhas numa porta que o host não esteja a usar:
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
Como vmbr1 não tem porta física, um servidor DHCP nela é seguro, e é uma forma fácil de endereçar muitas máquinas.
Adicione os seus endereços IPv6
Recebe endereços IPv6 individuais, não um bloco para dividir. Estão listados no final do email de configuração, e coloca-os um a um, tal como o IPv4: um no host se quiser que o host seja alcançável por IPv6, os outros nas máquinas virtuais que precisarem deles. Nenhum deles é configurado por nós no momento da instalação.
Escreva cada endereço com /64. O gateway é o prefixo seguido de ::1, portanto um endereço em 2001:db8:1234::/64 usa 2001:db8:1234::1. No host, ao lado da bridge existente:
iface vmbr0 inet6 static
address 2001:db8:1234::2/64
gateway 2001:db8:1234::1 Numa máquina virtual na bridge:
iface ens18 inet6 static
address 2001:db8:1234::5/64
gateway 2001:db8:1234::1 Execute ifreload -a novamente. Como estes endereços não são um bloco seu, não anuncie rotas nem distribua endereços que não lhe foram atribuídos. Se precisar de mais, fale connosco.
Defina o DNS reverso em cada endereço
Pode definir o DNS reverso em qualquer um dos seus endereços por si mesmo. Inicie sessão, abra o servidor e vá a Access, Networking & rDNS. Cada endereço mostra o seu nome atual com um botão Edit rDNS ao lado, e os endereços IPv6 funcionam da mesma forma.
Introduza um hostname: letras, números, hífens e pontos, pelo menos duas partes, cada uma com 1 a 63 caracteres. O ponto final é adicionado por si. A alteração demora alguns minutos.
Se uma máquina virtual enviar email, defina o DNS reverso no endereço de onde o correio sai. Na configuração privada, esse é o endereço do host. Adicione também o registo direto correspondente no seu fornecedor de DNS, porque os servidores de receção de correio verificam que ambos coincidem e rejeitam o correio quando não coincidem.
Perguntas sobre redes no Proxmox, respondidas
01Como dou um IP público a uma VM Proxmox?
Ligue a máquina virtual à bridge vmbr0 e defina um dos seus IPs públicos extra dentro dela, com máscara de rede /24 e o .1 do intervalo desse endereço como gateway. Num servidor Primcast, o host não precisa de alterações para isto, e não tem de registar o endereço MAC connosco.
02A minha máquina virtual está a correr mas não tem rede. O que devo verificar?
Comece pelo gateway: tem de ser o .1 do intervalo a que o endereço pertence, e endereços adicionados em momentos diferentes podem estar em intervalos diferentes. Depois confirme que o endereço está na sua conta, que a máscara de rede é /24 e que nenhuma outra máquina usa o mesmo endereço MAC.
03Tenho de enviar à Primcast o endereço MAC de cada máquina virtual?
Não. A porta do seu switch aprende tantos endereços MAC quantos usar e a port security está desligada, por isso uma máquina virtual aparece como qualquer computador físico. Mantenha o endereço MAC que o Proxmox gera e nunca dê o mesmo a duas máquinas.
04Porque é que só um IP está configurado no meu novo servidor Proxmox?
Para que as suas máquinas virtuais tenham endereços para usar. Se o host os tivesse todos, responderia por cada um deles. Configuramos o primeiro endereço para que possa aceder ao servidor, e o email de configuração indica-o abaixo da sua lista de endereços.
05Devo usar rede em bridge ou encaminhada no Proxmox?
Use em bridge, a menos que precise que o host filtre o tráfego. Não altera nada no host e cada máquina virtual comporta-se como um computador normal na rede. A encaminhada serve-lhe quando a firewall do host tem de ver todos os pacotes, em troca de um pouco mais de configuração dentro de cada máquina.
06Posso usar DHCP para as minhas máquinas virtuais Proxmox?
Sim, numa bridge privada sem porta física, como a vmbr1 do passo 05. Nunca na vmbr0: ela liga-se a uma rede que outros clientes partilham, e um servidor DHCP ou router advertisements aí responderiam a máquinas que não são suas.
07Apliquei uma configuração de rede errada e perdi o servidor. Como volto a entrar?
Abra a consola a partir da sua conta Primcast. Ela passa pelo cartão de gestão do servidor e não pela sua rede, por isso funciona enquanto a rede estiver avariada. Corrija /etc/network/interfaces, execute ifreload -a, e o servidor fica acessível novamente.
08Como obtenho mais endereços IP para as minhas máquinas virtuais?
Pergunte no chat ao vivo ou abra um ticket, e diga-nos para que serve cada endereço, uma vez que os registos de endereços exigem uma razão para cada atribuição. Endereços IPv4 extra são faturados mensalmente na mesma conta e aparecem no seu painel de controlo assim que forem alocados.
Preso num passo? Pergunte-nos no chat.
O nosso assistente de IA responde em segundos e pode verificar o seu servidor e os seus endereços por si. Peça uma pessoa sempre que quiser.