O Traceroute pode detectar um balanceador de carga?

O Traceroute pode detectar um balanceador de carga?

O traceroute pode detectar um balanceador de carga situado entre um servidor de aplicativos e um banco de dados? Depois de executar um traceroute do servidor de aplicativos para o banco de dados, recebi apenas um salto. O salto era o banco de dados de destino

Responder1

Primeiro, vamos sair do caso trivial: presumo que o IP que você rastreou não pertence realmente ao balanceador de carga. Qual seria o caso mais típico.

Deixando isso de lado, significa que você tenta detectar um balanceador de carga que esteja no seu caminho de roteamento (encaminhamento). Essas coisas são chamadas de balanceadores de carga de rede (NLBs). O traceroute reconhece apenas um tipo específico de dispositivos - aqueles que diminuem o campo TTL em um pacote. Um roteador típico faz isso, mas um NLB geralmente não.

Como resultado, você não pode dizer com segurança se houve um NLB a caminho olhando apenas no traceroute.

Responder2

Resposta curta: Não.

Resposta longa:
traceroutedestina-se a detectar arquivos router. Eles são usados ​​para transferir tráfego de uma sub-rede IP (IP + MASK especifica uma sub-rede) para outra.
Os balanceadores de carga devem ser transparentes para os clientes. Isso significa que eles pegam o tráfego e o encaminham para um destino ou outro. Portanto, para o cliente, parece que ele sempre acessa o mesmo servidor, mas em segundo plano a solicitação é distribuída para dois ou mais servidores por vários motivos (balanceamento de carga, alta disponibilidade, ...).

Para sua constelação específica, é assim:
user-client <-> application server <-> database
Seu usuário-cliente solicita recursos do servidor de aplicativos, mas o servidor de aplicativos é o cliente do banco de dados e não o usuário-cliente em si. Basicamente, você não pode ver o banco de dados por trás do servidor de aplicativos da perspectiva do usuário-cliente.
Se você não construiu esta constelação sozinho, não pode ter certeza.
Você pode tentar usar o Wireshark/tcpdump e tentar analisar os endereços MAC para ver de onde vem o seu tráfego.

Responder3

Então o balanceador de carga é para conexões de banco de dados? Você pode executar ping no IP do balanceador de carga e também executar ping no banco de dados diretamente? Existem vários bancos de dados?

E estamos falando de uma conexão LAN ou o servidor de aplicativos e o banco de dados estão pelo menos na mesma sub-rede pública ou privada? Só quero ter certeza de que você não está esperando um salto diferente do banco de dados ou do balanceador de carga.

É difícil responder especificamente sem mais informações, mas se você estiver executando um traceroute para o IP do balanceador de carga, é aí que ele deve terminar. Se você rastrear diretamente para o IP do banco de dados... bem, é para lá que o traceroute deve ir.

Acredito que a maioria dos balanceadores de carga de banco de dados são na verdade proxies, então seu traceroute "para o banco de dados" pode estar atingindo o balanceador de carga... se esse for o IP que você está inserindo.

informação relacionada