Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

BRG

Pegando MAC Address em PHP com servidor LINUX

Recommended Posts

Estava fazendo um sistema de autenticação de usuário via PHP, e me surgiu a idéia de pegar o endereço MAC da máquina para aumentar ainda mais o nível de segurança.

Bom, meu server é linux, procurei na net vários scripts para o mesmo e não encontrei. Em alguns posts encontrei até gente falando que era impossível.

Depois de muito tempo tentando .. saiu :)

Para complementar, coloquei 2 endereços de MACs em um array e no fim uma comparação. Se o MAC no array for igual ao seu retorna TRUE, se não FALSO.

Espero que gostem.

 

// LIMPA VARIAVEL IP
$ip = "";
// SE EXISTIR PEGA O IP DA REDE, SE NAO PEGA O IP REMOTO
$ip = ($_SERVER["HTTP_X_FORWARDED_FOR"] != '') ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER['REMOTE_ADDR'];
// MANDA UM PACOTE DE INFORMACAO
$ping = shell_exec("ping -c1 ".$ip."");
// ELE PROCURA SE NA LISTA DO ARP TEM ESSE IP E CAPTURA TODAS AS INFORMACOES
$output = shell_exec("arp -n ".$ip."");
// SEPARA A STRING DE SAIDA POR ESPACO EM BRANCO
$mac = preg_split("/\s+/",$output);
// MACS CADASTRADOS EM UM ARRAY
$macs = array(
        "nome-1" => "00:00:00:00:00:1A",
        "nome-2" => "00:00:00:00:00:1B"
);
//COMPARA OS MACS DA PLACA COM O DO ARRAY
echo ($macs["nome-1"] == $mac[8]) ? "MAC TRUE" : "MAC FALSO";

,

Compartilhar este post


Link para o post
Compartilhar em outros sites

ARP stands for Address Resolution Protocol, which is used to find the media access control address of a network neighbour for a given IPv4 Address.

 

Retirado do manual do comando arp.Preciso dizer mais algo?

Pra quem não entendeu,só funciona para computadores na mesma rede.De resto,impossivel.

Entenda o que usa meu caro...

E putz...que código cara...-.-

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

ARP stands for Address Resolution Protocol, which is used to find the media access control address of a network neighbour for a given IPv4 Address.

 

Retirado do manual do comando arp.Preciso dizer mais algo?

Pra quem não entendeu,só funciona para computadores na mesma rede.De resto,impossivel.

Entenda o que usa meu caro...

E putz...que código cara...-.-

 

Teria um melhor??? Pois se tiver posta ai para a galera, e não critica os outros.

 

,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pinguim, o que você quer é impossível. ARP só funciona para computadores que estão ligados diretamente ao servidor, na intranet. A única forma possível de detectar o MAC seria através de uma máquina java no cliente (http://www.paulovittor23.org/?p=28) ou ActiveX (http://www.qualitycodes.com/tutorial.php?articleid=19) no IE. Para outros navegadores nem com javascript é possível.

 

Teria um melhor??? Pois se tiver posta ai para a galera, e não critica os outros.

,

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu pelo script

 

vai nos ajudar bastante pata amarrar Login+senha+ip+mac em nossos servidores de internet (VPN).

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.