Em uma rede comutada, por que os pacotes unicast não endereçados a mim atingem minha NIC quando estou no modo promíscuo?

2

Quando estou conectado a um switch, o switch sabe qual endereço MAC pertence a qual porta. Então, mesmo quando estou no modo promíscuo, por que recebo pacotes unicast endereçados a outros endereços MAC?

O que eu deveria conseguir seriam broadcasts e multicasts e unicasts para o meu MAC, eu não entendo o que é esse modo promíscuo?

    
por JohnnyFromBF 29.09.2011 / 10:55

6 respostas

3

Os switches operam criando uma tabela que mapeia os endereços MAC dos dispositivos para as portas. Eles procuram o endereço MAC de destino para determinar qual porta devem encaminhar o tráfego e devem encaminhar somente quadros unicast para essa porta.

O switch aprende esses endereços MAC sempre que recebe tráfego. Se receber quadros na "Porta A", ele aprenderá o endereço MAC de origem do dispositivo, enviando esse tráfego para a porta.

Essas entradas envelhecerão ao longo do tempo se não houver tráfego recebido do host. Se o switch não tiver uma entrada para um endereço MAC de destino, ele "inundará" uma cópia do quadro de cada porta além daquela em que recebeu o quadro. Todo tráfego de broadcast e multicast também é tratado da mesma maneira, já que o tráfego pode ser destinado a vários hosts (a menos que o switch suporte recursos mais avançados, como snooping IGMP).

Portanto, se você está vendo muito tráfego de unicast destinado a um host diferente, uma das seguintes opções é a explicação mais provável:

  1. O dispositivo com o MAC de destino está recebendo apenas e não está gerando tráfego algum e já envelheceu fora da tabela ou nunca esteve nele.
  2. Os recursos que o comutador tem disponível para inserir novas entradas na tabela estão esgotados, o que significa que ele não adicionará novas entradas até que algum tempo se esgote. Isso resulta em todo o tráfego para esse destino ser inundado.
  3. O comutador está com defeito e não funciona como um comutador. Isso pode ser um problema de firmware ou de hardware.
  4. O switch não é realmente um switch, mas sim um hub. Os hubs sempre inundam uma cópia do quadro de cada porta em que não foram recebidos.
  5. Alguns switches podem ser configurados para "espelhar" o tráfego de uma porta para outra. Normalmente, você só encontra esse recurso em switches gerenciados.
por 11.12.2013 / 04:57
0

O modo promíscuo foi mais útil nos dias de hubs thin-net e Ethernet. Você está certo de que um switch Ethernet aprende quais endereços MAC estão conectados a quais portas e segregam o tráfego de acordo.

Alguns switches permitem que uma porta seja usada como uma porta de monitoramento, todo o tráfego que passa pelo switch também é transmitido para essa porta.

    
por 29.09.2011 / 11:23
0

O switch não envia pacotes em links que ele sabe que não precisam deles. A menos que seja um switch inteligente que esteja permanentemente configurado para saber que um determinado endereço MAC está atribuído a uma porta específica, ele 'vazará' alguns quadros.

    
por 29.09.2011 / 11:56
0

O modo promíscuo em um NIC significa que ele deseja ver todo o tráfego de rede, não apenas aqueles destinados a ele. No modo "normal", sua NIC veria broadcasts, multicasts e unicasts, mas nada mais.

Eu acho que o cartão poderia dizer que o switch está no modo promíscuo e, em seguida, o switch encaminharia todo o tráfego para ele. Isso é tudo em que consigo pensar.

Em operações normais, você não precisa do modo promíscuo. É apenas para monitorar a rede, diagnosticar problemas e assim por diante.

    
por 29.09.2011 / 17:20
0

O switch pode não conhecer todos os hosts e o comportamento padrão para o switch fazer no caso de não saber qual porta enviar é tratado como bc / mc e o switch inundará o pacote de todas as portas em aquela vlan. Isso é chamado de inundação unicast desconhecida.

    
por 11.12.2013 / 04:22
0

A switch 'floods' all ports when it doesn't know where the destination MAC address is.

The port that responds is how the switch learns what port has what MAC. The type of memory that a switch stores this information is called 'Content Addressable Memory', or CAM tables.

So, when traffic comes in to the switch, and the switch has recognized that destination MAC, the switch will only forward to that specific known port.

If different traffic comes in where it does NOT recognize the destination MAC, it floods all ports, including ones that it has previously 'discovered' a MAC is at.

So basically a switch can 'assign' more than one MAC to a port in its CAM tables.

Isso explicaria por que sua NIC está recebendo quadros de qualquer MAC, embora esteja atrás de um switch. Eu nunca pensei sobre isso antes e pode estar errado, mas essa é realmente a única maneira que poderia funcionar. Em switches de nível empresarial, você provavelmente pode modificar ou desabilitar esse comportamento.

O modo promíscuo é útil se você quiser configurar pontes virtuais no sistema em que a NIC está localizada. As pontes virtuais permitem que você ligue uma ou mais NICs em um sistema em uma ponte - essencialmente, fazendo um "switch" virtual ou um encaminhamento da Camada 2. O modo promíscuo também é útil se você deseja capturar o tráfego em uma rede, obviamente.

    
por 11.12.2013 / 04:58