Localize um host na rede
Qual é o melhor método para localizar uma estação de trabalho específica em uma VLAN?
Às vezes, preciso fazer isso, se um endereço IP da estação de trabalho aparecer em um ACL Deny
Alto uso de largura de banda (principais participantes)
Alerta de bufo
Do jeito que eu faço agora,
Faça logon em um switch principal na mesma VLAN
Faça ping no endereço IP,
Recuperar o MAC da tabela ARP
Pesquisa de endereço do Mac para ver de qual comutador foi aprendido
logon nesse interruptor, enxágue e repita até localizar a estação de trabalho
às vezes isso pode levar o login a ~ 7 switches, há desafios específicos a essa rede sobre os quais não posso fazer nada no momento. VLANs enormes (/ 16) com algumas centenas de usuários em cada VLAN
em uma loja completa da Cisco, com orçamento mínimo usando switches Cisco, deve haver uma maneira mais eficiente de rastrear máquinas host?
EDIT: Para adicionar mais detalhes
Especificamente, estou procurando a porta do switch à qual o usuário está conectado? também algum histórico seria ótimo .. porque minha abordagem só funciona enquanto o usuário ainda está conectado e não tem valor quando reviso os logs pela manhã, mas o dispositivo não está mais conectado.
Não há DNS central ou Active Directory, é como uma rede de convidados, onde apenas o acesso à Internet é fornecido. Eu tento fornecer um pouco de gerenciamento e um pouco de segurança.
Eu tentei "show ip dhcp binding | inc", me dá um MAC estranho (com 2 caracteres extras) que não é o dispositivo associado ao MAC, ainda não examinei isso, mas o ARP é preciso e estou mais preocupado ao encontrar a porta do switch à qual a máquina ofensiva está conectada.
espero que isso forneça algum esclarecimento
Em relação ao "show ip dhcp binding | inc": Os caracteres extras na frente são do tipo de mídia. Se você remover os dois primeiros caracteres, ficará com o cliente MAC. As representações de dois dígitos estão na tabela 2: freesoft.org/CIE/RFC/1700/24.htm
— some_guy_long_gone
@ legioxi, isso pressupõe que o próprio dispositivo se identificasse usando o MAC. Se ele usou uma string, pode ser o que o servidor mostra.
Dê uma olhada no traceroute Layer2 (para Cisco). O Cdp deve estar executando ...
Isso é incrível, estou brincando com isso agora. Exatamente o que eu estava procurando
Usamos o plug-in mactrack no Cacti para fazer essas coisas. Funciona muito bem, dados históricos também estão disponíveis.
Desde que as tabelas de endereços ARP e MAC estejam disponíveis via SNMP, elas funcionam. O único pequeno problema que tivemos foi onde a instância da camada 3 de um site é um ASA. Acabamos de solucionar isso puxando a tabela ARP por meio de scripts e gerando um arquivo arpwatch , pois o mactrack suporta isso.
Exemplo de captura de tela de nossa configuração:
Link para Imgurl: http://i.imgur.com/h9JQVkC.png
— Stefan Radovanovici
Agradável! Pode ser melhor mostrar uma imagem maior no imgur ou algo assim. Não consigo ver muito disso. :-)
@ JohnJensen Sim, isso é apenas uma troca de pilha, diminuindo a escala da imagem, ela é carregada em tamanho real. Tente abrir a imagem em outra guia, por exemplo "Clique com o botão direito do mouse - abra a imagem em uma nova guia no Chrome". Irá adicionar um link para a resposta de qualquer maneira.
Existem algumas maneiras de fazer isso barato (o exercício de pesquisa e / ou implementação, deixarei com você).
Tenha um script que efetue login em cada um dos seus dispositivos de borda e pegue as tabelas de endereços MAC deles. Você deseja excluir interfaces de tronco para isso, mas seria trivial criar um hash (ou dict para você, pessoal python), com as chaves sendo as chaves de borda e os valores sendo outro hash que é basicamente "mac.addr -> interface " Isso eliminará a necessidade de você perseguir os MACs nos seus switches de borda, que é a maior parte do trabalho que parece. Eu posso recomendar o uso de Perl Net::Appliance::Sessionou Python exscriptpara fazer isso acontecer (isso pressupõe que você tenha acesso a uma caixa * NIX).
Use o SNMP para consultar esses dados, o que eliminará a necessidade de um script efetivamente efetuar login nos comutadores e executar comandos. Você pode procurar MIBs para as tabelas de endereços MAC, mas aqui está uma pesquisa no Google para você começar .
Se você estiver apenas no Windows, poderá usar o SecureCRT ou o TeraTerm para configurar macros para "automatizar parcialmente" isso para você, mas minha experiência com qualquer uma dessas é muito limitada, portanto, YMMV.
Espero que te dê algumas ideias.
Eu gosto de ter um script que capte show arpe show cam dynproduza a cada 15 minutos, eu o registro com data e hora term exec prompt timestamppara que tenhamos uma correlação aproximada por vezes. Anexo toda a saída do switch a um arquivo ... um arquivo por switch, por dia.
Todos esses logs são mantidos no mesmo diretório para facilitar o grepping.
Encontrar hosts se torna um exercício grep bastante simples se você conhece a topologia ... Preso no Windows sem o grep? Use cygwin ...
Por que não simplificar as coisas e fazer uma pesquisa no IP, pegar o nome do host no DNS e usar o nome do host para encontrar o computador por meio de uma lista de ativos ou banco de dados de gerenciamento? Ou, se você não tiver a configuração reversa do DNS, poderá fazer login no servidor DHCP para obter o nome do host.
Sei que não é um método Cisco / CLI, mas deve funcionar se os usuários estiverem atribuídos aos computadores 1-1. Se você possui muitos, pode usar as ferramentas do Windows / Linux para descobrir o usuário atual do computador.
Não acho que hyussuf esteja tentando descobrir quem está no computador - como é a Engenharia de rede e, pelo exemplo que ele forneceu, presumo que ele esteja tentando determinar a qual porta física um dispositivo está conectado, e esse dispositivo pode nem sempre seja uma estação de trabalho.
É verdade que não é só isso, mas essa é uma espécie de rede de convidados, o único serviço que fornecemos é Internet, mistura de BYOD e pequenas empresas que precisam de acesso à Internet para realizar seu trabalho. tecnicamente um ISP em um local remoto com todos os tipos de usuários. Os roteadores Cisco são meus servidores dhcp, quando olho para as informações de ligação, o MAC está completamente errado e ainda tem 2 caracteres extras ainda não analisados.
Também o meu principal objetivo é localizar a porta do switch ofender e desconexão ou 'fechada' para baixo ... Peço desculpas, figura não consigo descobrir como nova linha
Você pode atualizar a pergunta com mais detalhes dos dois comentários que postou na minha resposta. Definitivamente, algumas boas informações para ajudar nas respostas.
Você está fazendo da mesma maneira que eu faria manualmente.
Existe um software por aí que fará as etapas manuais para você. Uma ferramenta incluída no SolarWinds Engineering Toolkit irá, embora infelizmente não seja barata. Tenho certeza que existem outras alternativas.
Se você deseja uma solução intermediária ou algum trabalho de script, consulte os comandos SNMP emitidos nesta resposta para ter uma idéia de como você pode criá-la a partir de um sistema com um cliente CLI SNMP
Editado para adicionar: Presumo que seu "enxágue e repita" não inclua novamente o ping e outros enfeites ao longo do caminho. Depois de determinar o endereço mac, você poderá fazer apenas sh mac addr | em #### (os colchetes angulares desaparecem)
correta, pingue apenas uma vez, "show mac add | inc ####", misturado com algumas show cdp vizinhos várias vezes
Vou divulgar que tenho acesso ao Engineering Toolkit e ao User Device Tracker ( solarwinds.com/user-device-tracker.aspx ) e, em 99% do tempo, acabo efetuando login nos comutadores e apenas fazendo isso manualmente. É certo que é raro eu tenho que ir 7 profundidade, mas simplesmente funciona.
Meu SNMP-fu não é forte, mas esse link é muito interessante e me deu algumas idéias.
— hyussuf 6/06/2013
Você está perguntando duas coisas.
1.Localize um MAC na sua rede - aconselho a criar um script (php) e usar o SNMP para consultar toda a tabela de endereços MAC para fornecer a opção / porta em que está localizado o endereço IP / MAC.
2. Monitore o uso do seu (uso de torrent, uso de alta largura de banda (principais participantes), alerta do Snort) - Use uma solução como ntop para monitorar os fluxos em sua rede. Eu tinha usado isso há muito tempo e foi ótimo.
— cgasp
Apenas uma sugestão ... se você tiver algum tipo de inspeção de syslog ativa que possa ser acionada em eventos específicos, poderá escrever um script para procurar SNMP no IP em todos os comutadores, para saber onde estava aproximadamente na época em que o evento acontece.
(desculpe, não consigo encontrar os OIDs exatos)
Edit: link " Usando o SNMP para encontrar um número de porta de um endereço MAC em um Catalyst Switch " Eu esqueci o truque do comm @ vlan . Existem muitas tabelas para executar ping para encontrar todas as informações necessárias para um ser humano. :-(
O switchmap é outra ferramenta que pode ser usada para rastrear qual endereço MAC está por trás do qual switchport (entre outras coisas).
Eu usei o netdisco para coletar essas informações. Isso permitirá que você consulte a base de dados com um nome de host, endereço IP, endereço MAC, etc., e retorne o switch e o switchport. Também fará outras coisas úteis.
Você pode achar este link útil
— edrtz
Geralmente, é considerado bom estilo no Net Eng SE incluir os detalhes básicos de sua resposta e fornecer um link para materiais de referência, se necessário. (Porque, "elo podridão" significa eventualmente que URL não vai a lugar nenhum útil.)