SSH para host remoto (roteadores edgemarc 4200 ou 4500 series) e dados pull arp

1

Estou tentando pensar em um método para fazer isso por dias, mas ainda não encontrei nada. Idealmente, isso é o que eu procuro fazer:

De uma máquina com Windows XP, eu preciso abrir uma conexão SSH para um host remoto, enviar o comando arp e puxar os resultados de texto do comando de volta para uso no cliente. Vou precisar analisar esses dados e, de preferência, produzir uma matriz 2D de endereços IP e MAC. Não haverá chaves compartilhadas, tudo isso feito com um nome de usuário e senha que sempre serão diferentes, eles precisarão ser inseridos no comando por meio de variáveis que serão extraídas de um banco de dados usando um script de autoit baseado no ip da WAN. o host remoto.

Agora, a análise real dos dados e a criação da matriz serão fáceis se eu conseguir o texto da tabela arp. Existe alguma maneira de ssh para um host remoto, executar um comando e retornar os dados desse comando para o cliente em um script em lotes ou script perl (está tudo bem se ele grava o texto em um arquivo, eu posso lê-lo de o arquivo depois, eu só preciso dele para chegar ao cliente)?

    
por MaQleod 07.03.2011 / 08:57

2 respostas

1

Usando o plink do PuTTY:

plink <server> arp

Se isso não funcionar:

echo arp | plink <server>

Se o sistema estiver executando o Linux e o comando ip estiver disponível, use-o. O formato é mais fácil de analisar:

plink <server> /sbin/ip -o -f inet neigh

plink <server> /sbin/ip -o -f inet6 neigh
    
por 07.03.2011 / 11:42
3

Usando o PuTTY, você pode especificar o nome de usuário e a senha da seguinte forma:

  • putty -pw senha username @ hostname

Além disso, a opção de linha de comando "-m" também permitirá que você especifique um arquivo de texto para ler comandos para execução no servidor após a conexão.

Você pode baixar o PuTTY daqui:

PuTTY (gratuito e de código aberto)
link

    
por 07.03.2011 / 09:29