Como redirecionar DNS para uma porta específica?

Publicado 8 de setembro de 2024

Problema: Redirecionamento de DNS para uma Porta Específica

O DNS geralmente envia o tráfego para a porta padrão de um servidor. Às vezes, é necessário enviá-lo para uma porta diferente. Isso pode ocorrer quando você executa vários serviços em um único endereço IP ou configura redes especiais. O desafio é instruir o DNS a enviar o tráfego para uma porta específica sem alterar o nome de domínio ou solicitar que os clientes façam mudanças.

Solução: Usando Registros SRV para Redirecionamento de DNS Específico de Porta

O que são Registros SRV?

Registros SRV são registros DNS que fornecem informações sobre serviços disponíveis. Eles permitem especificar a localização de servidores para serviços específicos dentro de um domínio. Registros SRV contêm detalhes como o nome do host, número da porta e protocolo para um serviço.

As principais partes de um registro SRV incluem:

  • Serviço: O nome do serviço
  • Protocolo: O protocolo usado (geralmente TCP ou UDP)
  • Nome de domínio: O domínio que oferece o serviço
  • TTL (Time to Live): Por quanto tempo o registro deve ser armazenado em cache
  • Prioridade: Determina qual servidor tentar primeiro
  • Peso: Usado para balanceamento de carga entre servidores com a mesma prioridade
  • Porta: O número da porta onde o serviço está em execução
  • Alvo: O nome do host do servidor que fornece o serviço

Dica: Entendendo a Prioridade e o Peso do Registro SRV

Prioridade e Peso nos registros SRV trabalham juntos para balanceamento de carga e failover. Valores de prioridade mais baixos são tentados primeiro. Se vários registros tiverem a mesma prioridade, o peso determina a probabilidade de seleção. Por exemplo, dois registros com pesos 60 e 40 serão selecionados aproximadamente 60% e 40% das vezes, respectivamente.

Como os Registros SRV Permitem o Redirecionamento Específico de Porta

Os registros SRV seguem uma estrutura específica que permite o mapeamento de serviços:

_serviço._protocolo.nome TTL classe SRV prioridade peso porta alvo

Essa estrutura permite redirecionar consultas DNS para portas específicas. Ao especificar o número da porta no registro SRV, você pode direcionar o tráfego para o serviço correto, mesmo que esteja sendo executado em uma porta não padrão.

Os registros SRV mapeiam serviços para portas específicas:

  1. Identificando o serviço e o protocolo (por exemplo, _http._tcp)
  2. Especificando o nome de domínio
  3. Definindo a prioridade e o peso para balanceamento de carga
  4. Definindo o número da porta para o serviço
  5. Apontando para o nome do host de destino

Por exemplo, um registro SRV pode se parecer com isto:

_http._tcp.exemplo.com. 3600 IN SRV 10 60 8080 servidor1.exemplo.com.

Este registro direcionaria o tráfego HTTP para exemplo.com para servidor1.exemplo.com na porta 8080, em vez da porta HTTP padrão 80.

Guia Passo a Passo para Implementar o Redirecionamento de DNS para Portas Específicas

Configurando Registros SRV

Para configurar registros SRV para diferentes subdomínios e portas:

  1. Acesse sua interface de gerenciamento de DNS.
  2. Crie um novo registro SRV para cada combinação de subdomínio e porta.
  3. Use este formato para seus registros SRV:

_serviço._protocolo.subdomínio.domínio.com. TTL IN SRV prioridade peso porta alvo

Exemplo:

_http._tcp.sub1.exemplo.com. 3600 IN SRV 10 100 8080 servidor1.exemplo.com. _http._tcp.sub2.exemplo.com. 3600 IN SRV 10 100 8081 servidor2.exemplo.com.

Nestes exemplos:

  • Serviço: HTTP
  • Protocolo: TCP
  • TTL: 3600 segundos (1 hora)
  • Prioridade: 10 para ambos os registros
  • Peso: 100 para ambos os registros
  • Portas: 8080 e 8081
  • Alvos: servidor1.exemplo.com e servidor2.exemplo.com

Dica: Entendendo os Campos do Registro SRV

Cada campo em um registro SRV serve a um propósito específico:

  • Prioridade: Valores mais baixos têm prioridade mais alta.
  • Peso: Usado para balanceamento de carga entre registros com a mesma prioridade.
  • Porta: O número da porta onde o serviço está em execução.
  • Alvo: O nome do host da máquina que fornece o serviço.

Configurando Registros A

Registros A são necessários ao usar registros SRV, pois fornecem o endereço IP para o nome do host de destino. Para configurar registros A:

  1. Na sua interface de gerenciamento de DNS, crie um registro A para cada nome de host de destino em seus registros SRV.
  2. Use este formato:

nome-do-host.domínio.com. TTL IN A endereço_IP

Exemplo:

servidor1.exemplo.com. 3600 IN A 192.0.2.10 servidor2.exemplo.com. 3600 IN A 192.0.2.11

Esses registros A vinculam os nomes de host de destino em seus registros SRV aos seus endereços IP. Isso permite que o DNS resolva o caminho do nome de domínio para o endereço IP e porta para cada serviço.