Perguntas para iniciantes em failovers MAC e de alta disponibilidade

2

Estou lendo sobre a Alta Disponibilidade e não consigo entender o seguinte que li: No failover, o IP primário migra para o servidor de backup MAS o mesmo deve ser no endereço MAC.

Especificamente, eu leio que cada máquina tem um endereço MAC único que pode ser usado por todas as interfaces na máquina. Eu não entendo essa parte. O MAC não pertence à NIC? O que se entende por interfaces nesta sentença?

Além disso, no failover, os clientes devem atualizar seu mapeamento IP / MAC e encontrar três maneiras de usar um MAC personalizado e movê-lo de primário para backup junto com o IP público. Como isso é possível? Faça software de alta disponibilidade, por exemplo Marcapasso faz isso? Como?

    
por user76678 09.12.2012 / 11:19

4 respostas

5

O livro está correto, no entanto, há partes que ele deixou de fora.

  • Os endereços MAC não são tão fixos quanto você imagina, mas as NICs mais avançadas têm a capacidade de alterar o endereço MAC para algo específico. Na BIOS da NIC ou no próprio driver.
  • Existem intervalos específicos de endereços MAC reservados para sistemas 'virtuais' (consulte Que intervalo de endereços MAC posso usar com segurança para minhas máquinas virtuais? )
  • O software de cluster pode usar endereços MAC desses intervalos de reserva para apresentar os serviços IP do cluster.
  • A pilha de rede linux tem a capacidade de criar NICs virtuais com endereços MAC específicos.

O procedimento seguido pelo software de cluster para criar um serviço baseado em um endereço MAC virtual é bastante simples. Quando o serviço surge, ele oferece um pacote Gratuitous Arp dizendo que o endereço IP específico pode ser encontrado no endereço MAC virtual. Quando o failover acontece, o nó 'para baixo' remove sua ligação IP / MAC local e o novo nó começa a ouvir essa combinação de endereço MAC e IP virtual. Não muss no fuss.

O outro método usado pelo software de clustering é não se incomodar com os MACs virtuais e confiar no Gratuitous ARP por todo o caminho. A sequência de inicialização / failover para tal sistema seria semelhante a:

    O software de cluster
  1. liga o IP ao Nó A.
  2. Nó A G-ARPs "192.168.244.60 está em 02-00-ab-cd-ef-01"
  3. Todos os dispositivos na sub-rede atualizam suas tabelas ARP.
  4. O tempo passa.
  5. O nó A trava.
  6. O software de cluster liga o IP ao nó B.
  7. O nó B G-ARPs "192.168.244.60 está em 02-00-ab-cd-41-ba"
  8. Todos os dispositivos na sub-rede atualizam suas tabelas ARP.

Na minha experiência, o segundo método, o G-ARP puro, é o usado pela maioria dos clusters de linux atualmente. No entanto, ambos os métodos são válidos e foram usados. O benefício do método G-ARP é que você não precisa se preocupar com a atribuição de endereços MAC virtuais. O benefício para o método puro virtual-MAC é que ele não depende do G-ARP trabalhando em uma determinada sub-rede.

    
por 09.12.2012 / 14:33
1

Parece que você encontra material de leitura muito ruim. Mente postando uma referência?

Em geral: o modelo de camada OSI resolve a maioria desses problemas e você quase nunca precisa trabalhar em várias camadas de uma só vez.

Um endereço MAC só pode aparecer uma vez em um segmento Ethernet. Em máquinas físicas, elas são globalmente exclusivas e nunca aparecem duas vezes (nem mesmo em várias NICs na mesma máquina). Com as máquinas virtuais, você define o MAC por software e tem que usar alguns dos intervalos privados do MAC, semelhantes aos intervalos de IP privados.

Para alta disponibilidade de IPs, é suficiente configurar um IP em um host diferente. Os sistemas operacionais e a infraestrutura de rede na camada 2 cuidarão de atualizar seus mapeamentos MAC / IP automaticamente.

No entanto, alguns equipamentos são teimosos e precisam de solicitações ARP "gratuitas" para forçá-los a atualizar seus caches.

No Linux eu uso o "ucarp" com script adicional para configurar automaticamente as máquinas com o IP "cluster".

    
por 09.12.2012 / 11:25
1

Você pode estar misturando duas formas de alta disponibilidade ou balanceamento de carga.

Vincular ligação (pode) atribuir o mesmo endereço IP a várias interfaces no < em> mesmo host .

Para balanceamento de carga cluster com HA, todas as máquinas recebem o mesmo IP, com diferentes MACs. Uma máquina receberá todo o tráfego, mas pode encaminhá-lo para outras máquinas, que podem responder diretamente porque possuem o mesmo IP. Se a máquina mestre falhar, uma nova é escolhida e um ARP gratuito é feito para notificar os dispositivos que uma nova máquina possui o IP.

    
por 09.12.2012 / 11:54
0

Em alguns cenários de alta disponibilidade, em um evento de alta disponibilidade, somente o endereço IP é recuperado pelo nó em espera. Nesse caso, o nó de espera precisa transmitir um pacote ARP não solicitado para atualizar as tabelas ARP do dispositivo no mesmo segmento de Ethernet. Na recepção de um pacote ARP não solicitado, um dispositivo geralmente não atualiza diretamente sua tabela ARP (permitiria a invasão fácil de uma rede), mas invalida sua entrada ARP no endereço IP correspondente. Na próxima vez em que o dispositivo precisar falar com o serviço HA, ele fará uma solicitação ARP para obter o MAC correspondente ao endereço IP.

Em alguns outros cenários de alta disponibilidade (como alguns roteadores e firewalls), tanto o MAC quanto o endereço IP são recuperados pelo nó em espera. Isso permite que os clientes no mesmo segmento Ethernet mantenham sua tabela ARP intacta, mas isso não significa que o nó em espera pode salvar sua transmissão ARP (ou algum outro tráfego de rede). Neste caso, a transmissão ARP (ou outro tráfego de rede) é necessária para atualizar a tabela MAC-to-port do switch, para que o tráfego não termine na porta do dispositivo inativo.

Você pode ler isso para saber mais sobre o funcionamento interno detalhado dos switches [.

    
por 09.12.2012 / 13:22