Я пытаюсь получить имя компьютера пользователя с помощью
gethostbyaddr ($ _ SERVER [ ‘REMOTE_ADDR’]);
но я получаю только имя хоста, одинаковое для всех пользователей моей беспроводной сети.
Я гуглил, и некоторые говорят, что невозможно получить имя локального компьютера пользователя в беспроводной среде.
Есть ли другой способ получить имя машины в беспроводной среде?
Это вообще возможно?
Заранее спасибо.
Вам понадобится какое-то сканирование, nmap или любое другое в зависимости от вашей среды. Вы не сказали, работает ли ваш сервер под Windows или какая ОС.
Я полагаю, вы пытаетесь получить имена netbios.
В Windows вы можете запустить команду nbtstat, используя php exec
или аналогичная функция и получить вывод и проанализировать его.
Руководство о том, как это сделать: http://www.onlinecomputertips.com/networking/nbtstat.html . В любом случае это легко nbtstat -A <ip>
В Linux у вас есть больше вариантов, но наверняка nmap может быть одним, но, вероятно, проще использовать nbtscan, просто запустите nbtscan <ip>
и то же самое … запустить его из php, сохранить вывод и разобрать его.
Других решений пока нет …