Member 13079470 Ответов: 1

Как получить mac-адрес на подключенной к локальной сети машине?


Я пытаюсь получить mac-адрес на подключенной к локальной сети машине, но у меня есть следующая ошибка,

Успешно подключено mac-адрес для 127.0.0.1 не найден

Что я уже пробовал:

Я уже пробовал этот код,


<? php

$link = mysqli_connect ('localhost', 'mysql_user', ");
если (! $link)
{
die ('не удалось подключиться:'. mysql_error());
}
echo "успешно подключено";
mysqli_close($ссылка);


$ip = $_SERVER ['REMOTE_ADDR'];
$mac = shell_exec('arp-a'. escapeshellarg($ip));
$findme = " физический";
$pos = strpos($mac, $findme);
$macp = substr($mac,($pos+42), 26);

if (empty ($mac))
{
die ("нет mac-адреса для $ip не найдено");
}
echo " mac-адрес для $ip: $macp";

?>

1 Ответов

Рейтинг:
1

Jochen Arndt

MAC-адреса (Media Access Control) связаны с сетевыми интерфейсами harwdare. Но 127.0.0.1-это виртуальный интерфейс обратной связи, а виртуальные интерфейсы не имеют MAC-адреса.

Чтобы проверить свой код, вы должны подключиться с клиентской машины, которая не является самим сервером.


Member 13079470

пожалуйста, опишите подробнее.
Как решить эту проблему?

Jochen Arndt

Нет никаких проблем.
Ваш код работает так, как и ожидалось.

Вы запросили "получить mac-адрес на подключенной к локальной сети машине", но ваш скрипт был вызван для подключения с вашей локальной машины, которая указана IP-адресом 127.0.0.1

Чтобы получить MAC-адрес для другой машины, вы должны сначала установить соединение с этой машиной.