Pular para o conteúdo

Comando arp -a [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar
01 02

13. Re: Comando arp -a [RESOLVIDO]

Enviado em 10/11/2011 - 11:55h

legal esse seu comando adri3d!!!
Simplifica e muito, até mesmo agora eu vou estudar a possibilidade de não precisar do endereço de IP...
O MAC já informa quem é a pessoa!

Responder tópico

14. Re: Comando arp -a [RESOLVIDO]

Enviado em 10/11/2011 - 12:15h

vendo a ajuda do arp "$arp --help"
vi que o parametro "-e" é mais interesante
aproveitando trecho que rai3mb postou mais awk chegei a isso

um unico script pra toda tarefa, so no mysql tem que adicionar a data e a hora

#!/bin/bash

#o grep ether é para não listar o cabeçalho
for LINHA in $( arp -e | grep ether ); do
#filtra o IP
IP=$(echo "$LINHA" | awk '{print $1}')
#filtra o MAC
MAC=$(echo "$LINHA" | awk '{print $3}')
#ou Usa em instrução para o mysql
mysql -u USUARIO -pSEMHA -e "INSERT INTO tabela(ip,mac) VALUES('$IP','$MAC')"
done




15. Re: Comando arp -a [RESOLVIDO]

Enviado em 10/11/2011 - 12:23h

@adri3d

fazendo assim:
$ arp -a | awk '{print $1}'
vai retornar isso
?
?
E assim:
arp -a | awk '{print $2}'
Isso:
(192.168.0.103)
(192.168.0.1)

Por isso usei o egrep anterior ;-)

16. Re: Comando arp -a [RESOLVIDO]

Enviado em 10/11/2011 - 12:26h

soh para complicar um pouco... tem como esses scripts que estão listando, o proprio comando fazer um insert em um banco de dados em outro servidor, em outra rede, por exemplo, em um servidor com um banco de dados nos EUA por exemplo?

17. Re: Comando arp -a [RESOLVIDO]

Enviado em 10/11/2011 - 12:28h

rai3mb escreveu:

@adri3d

fazendo assim:
$ arp -a | awk '{print $1}'
vai retornar isso
?
?
E assim:
arp -a | awk '{print $2}'
Isso:
(192.168.0.103)
(192.168.0.1)

Por isso usei o egrep anterior ;-)
tente com o todo poderoso "arp -e"

18. Re: Comando arp -a [RESOLVIDO]

Enviado em 10/11/2011 - 12:36h

Desculpa ae nem percebi o '-e' ;-)

Sobre a execução do comando SQL do mysql remotamente, veja

$ mysql -h HOST -u USUARIO -e pSENHA "SQL"
Exemplo:
$ mysql -h 10.0.0.1 -u USUARIO -e pSENHADIFICIL "SQL"

para mais:

$ man mysql




19. Re: Comando arp -a [RESOLVIDO]

Enviado em 10/11/2011 - 12:37h

viniciuspedra escreveu:

soh para complicar um pouco... tem como esses scripts que estão listando, o proprio comando fazer um insert em um banco de dados em outro servidor, em outra rede, por exemplo, em um servidor com um banco de dados nos EUA por exemplo?
uma posibilidade é fazer uma requisição http


wget http://meuServidor.xxx/meuArquivoPHP.php?mac=xxxxxxxxx&ip=xxxxxxxxxxxx

essa pagina pega os parametros e sevira com o resto

20. Re: Comando arp -a [RESOLVIDO]

Enviado em 22/03/2014 - 12:40h

viniciuspedra escreveu:

vamos lá...

partindo então dos dados do arquivo que o comando arp -a salvou, fiz a seguinte gambiarra...

<?
$arquivo = "arquivo_salvo.txt";

$meuArray = file("$arquivo");

for ($n=0; $n < count($meuArray); $n++)
{}

@abre = fopen("$arquivo","r");
if (!$abre)
{
echo "Ops! Ocorreu um erro ao abrir o arquivo!";
exit;
}

for ($i=0; $i < $n; $i++)

{
$le = fgetss($abre,1024);
$le = explode("[ether]",$le);

$lido1 = strtoupper(trim($le[0]));

$result1 = str_replace("? (","",$lido1);
$result2 = str_replace(") EM","",$result1);

echo "$result2";
echo "<br>";

}
?>


Dae fica apenas pendente para finalizar, o insert no banco de dados que não é coisa dificil :D
Eu faria assim:


#pega o resultado do arp e coloca no arquivo result_arp.txt
arp -a > result_arp.txt

#depois deixava redondo para o PHP assim
cat result_arp | sed 's/(//g'| sed 's/)//g' | awk '{print $2, $4}' > mac_ip.txt


# em PHP assim:
#abre o arquivo mac_ip.txt
$ler = fopen ("mac_ip/.txt","r");

//dar uma lida no arquivo até o fim
while (!feof ($ler)) {
//LÊ UMA LINHA DO ARQUIVO
$pegou_mac_ip .= fgets($ler,1024);

}
//fecha
fclose ($ler);
Faz o tratamento $pegou_mac_ip para joga no mysql...





01 02

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder