Модераторы: Aliance, skyboy, MoLeX, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как узнать MAC адрес, Как узнать MAC адрес 
:(
    Опции темы
geek2600
Дата 14.6.2008, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 19.11.2006

Репутация: нет
Всего: 1



Здравствуйте.Уважаемые участники форума, у меня следующий вопрос.
Для определения IP входящих на сайт компьютеров я использую следующий код:
Код

<?php
$filename = 'KLIENT-IP.log';
$_SERVER['REMOTE_ADDR'];
$PROXY;
$ip = &$_SERVER['REMOTE_ADDR'];
$LP = "\x0D\x0A";
$LD = " IN TIME : ";

// Вначале давайте убедимся, что файл существует и доступен для записи.
if (is_writable($filename)) {

    // В нашем примере мы открываем $filename в режиме "дописать в конец".
    // Таким образом, смещение установлено в конец файла и
    // наш $somecontent допишется в конец при использовании fwrite().
    if (!$handle = fopen($filename, 'a')) {
         echo "Не могу открыть файл ($filename)";
         exit;
    }

    // Записываем $somecontent в наш открытый файл.
    if (fwrite($handle, $ip) === FALSE) {
        echo "Не могу произвести запись в файл ($filename)";
        exit;
    }

    if (fwrite($handle, $LD) === FALSE) {
        echo "Не могу произвести запись в файл ($filename)";
        exit;
    }

$dt=date('Y-m-d [H:i:s]');
    if (fwrite($handle, $dt) === FALSE) {
        echo "Не могу произвести запись в файл ($filename)";
        exit;
    }

    if (fwrite($handle, $LP) === FALSE) {
        echo "Не могу произвести запись в файл ($filename)";
        exit;
    }

    fclose($handle);

} else {
    echo "Файл $filename недоступен для записи";
}
?>



Как мне сделать так, чтобы фиксировался не только IP входящего компьютера,но и MAC адрес?
Т.е. если компьютер имеет выход в интернет через локальную сеть.
Заранее благодарен.



M
MoLeX
Модератор: Я буду тебя очень благодарен, если будешь свой код соответсвенно оформлять. (включаем JS и жмем на кнопку КОД).


Это сообщение отредактировал(а) MoLeX - 15.6.2008, 08:21
PM MAIL   Вверх
Feldmarschall
Дата 14.6.2008, 22:28 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



код - шедевр.
ответ на вопрос - никак.
PM   Вверх
geek2600
Дата 14.6.2008, 22:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 19.11.2006

Репутация: нет
Всего: 1



Я на оригинальность и идеальность кода не претендую.
Так , что действительно никак?
PM MAIL   Вверх
gta4kv
Дата 14.6.2008, 23:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: нет
Всего: 91



geek2600, действительно никак.
PM MAIL   Вверх
Feldmarschall
Дата 14.6.2008, 23:05 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



geek2600, напротив, код твой нереально оригинальный. Так что можешь смело претендовать.
PM   Вверх
geek2600
Дата 14.6.2008, 23:24 (ссылка)   | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 19.11.2006

Репутация: нет
Всего: 1



Feldmarschall, я хочу Вам задать вопрос не в тему вопроса.Скажите если человек выходит в интернет по вышеописанной схеме, и я пошлю ping на его интернет IP,куда пойдет мой IP пакет?Какому именно компьютеру?Я просто имею лишь поверхностное понятие о том как происходит маршрутизация пакета.
Заранее благодарен.
PM MAIL   Вверх
Feldmarschall
Дата 14.6.2008, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



Куда пошлешь - туда и придет.
PM   Вверх
geek2600
Дата 14.6.2008, 23:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 19.11.2006

Репутация: нет
Всего: 1



немного не понял.В IP пакете есть поле содержащее MAC адрес?

PM MAIL   Вверх
Feldmarschall
Дата 15.6.2008, 00:06 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



Цитата(geek2600 @  14.6.2008,  23:56 Найти цитируемый пост)
немного не понял.

что ты не понял?
вот ты пишешь: "я пошлю ping на его интернет IP". "компьютер имеет выход в интернет через локальную сеть"
через какое место эта сеть выходит в интернет - в это место и придет твой пинг. разве это не очевидно?

Цитата(geek2600 @  14.6.2008,  23:56 Найти цитируемый пост)
В IP пакете есть поле содержащее MAC адрес?

нет
PM   Вверх
Glip
Дата 15.6.2008, 00:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 473
Регистрация: 30.12.2006

Репутация: 2
Всего: 18



geek2600вот и вот
нет там мак адреса, мак адрес это уже уровень ethernet (Канальный уровень)


--------------------
user posted image
PM MAIL   Вверх
geek2600
Дата 15.6.2008, 00:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 19.11.2006

Репутация: нет
Всего: 1



т.е. в пакете который отсылается в интернет MAC адре не содержится.Тогда как маршрутизатор опознает какому MAC чего пришло?

PM MAIL   Вверх
Glip
Дата 15.6.2008, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 473
Регистрация: 30.12.2006

Репутация: 2
Всего: 18



geek2600, для определения мак адресов есть протокол arp, но для начала маршрутизатор узнает IP адрес по таблице маршрутизации, если есть nat то еще и с учетом его.
учите матчасть. 
разговор уже на тему чисто сетевых технологий и к php не имеет отношения


--------------------
user posted image
PM MAIL   Вверх
geek2600
Дата 15.6.2008, 00:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 19.11.2006

Репутация: нет
Всего: 1



Спосибо большое!!!!Буду изучать.
PM MAIL   Вверх
Feldmarschall
Дата 15.6.2008, 01:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



а код, может, подправишь, все-таки?
чтобы эпохальная конструкция 
Код

    if (fwrite($handle, ХХХ) === FALSE) {
        echo "Не могу произвести запись в файл ($filename)";
        exit;
    }

вызывалась только один раз?
PM   Вверх
MuToGeN
Дата 18.6.2008, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: нет
Всего: 32



Скажем так... Media Access Control (в сокращении - MAC) адрес используется для того, чтоб сетевой концентратор (хаб, свич, аксесспоинт итд) понимал, по какому каналу передавать пакет дальше, и не более того. MAC - это идентификатор железки, в которую воткнут кабель. Когда пакет минует очередной роутер, MAC адрес отправителя, указанный в пакете, становится MAC адресом роутера. Т.е. для того, чтоб узнать мак, тебе нужно иметь свою точку в одной подсети с тем, чей мак ты хочешь узнать.
А если вы физически в одной подсети, то arp -a.


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
MuToGeN
Дата 18.6.2008, 22:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: нет
Всего: 32



Цитата(Feldmarschall @  15.6.2008,  00:06 Найти цитируемый пост)
нет

Ответ неверный -) Конечно, если разложить все по модели OSI и отделить зерна от плевел, можно сказать, что его там нет. Попробуйте запустить что-то типа ethereal и посмотреть, что ходит по сети. В любом пакете 0-5 байт - мак отправителя, 6-11 байт - мак получателя. Это, кстати, одно из того немногого, что идет без контрольных сумм, на других слоях OSI уже есть как минимум проверка четности.


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Sannis
Дата 18.6.2008, 23:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 14.8.2007
Где: Москва

Репутация: нет
Всего: 13



MuToGeN, а вы возьмётесь реализовать это на PHP? Я конечно не местный, но что-то мне не верится smile


--------------------
Я Критик Джим, раньше писал моды для IPB 1.3.x-2.3.x, а теперь продвигаю Node.js в массы.
PM MAIL WWW   Вверх
MuToGeN
Дата 19.6.2008, 00:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: нет
Всего: 32



Sannis, если бы мне за это заплатили, я бы взялся. Только и исключительно на PHP это сделать нереально, но никто не запрещает использование внешних инструментов.


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
gta4kv
Дата 19.6.2008, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: нет
Всего: 91



MuToGeN, ну а вот тема у нас про PHP, так то понятно что можно smile
PM MAIL   Вверх
MuToGeN
Дата 19.6.2008, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: нет
Всего: 32



gta4kv, в том и дело, что 80% людей, считающих себя гуру в пхп, о наличии каких-то внешних инструментов не догадывается в принципе.


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
gta4kv
Дата 19.6.2008, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: нет
Всего: 91



MuToGeN, внешние средства не везде сможешь использовать.
Не у всех "считающих себя гуру в пхп" есть свои сервера. ;) или даже впсы.
PM MAIL   Вверх
Feldmarschall
Дата 19.6.2008, 00:50 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



Sannis, практическая ценность такого решения будет равна нулю.
Всё уже разжевали на предыдущей странице. Кто не понял - перечитайте ещё раз.
PM   Вверх
Sannis
Дата 19.6.2008, 01:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 14.8.2007
Где: Москва

Репутация: нет
Всего: 13



Feldmarschall, да я в курсе, мой вопрос был для выяснения ответа MuToGeN'а ;)


--------------------
Я Критик Джим, раньше писал моды для IPB 1.3.x-2.3.x, а теперь продвигаю Node.js в массы.
PM MAIL WWW   Вверх
Feldmarschall
Дата 19.6.2008, 01:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



Самое забавное, что - я сейчас посмотрел - он же и разжевывал. Вот в чем прикол.
В принципе, мотивы человека понять можно, я даже и отвечать не стал. А тут захожу - такая дискуссия.

Это сообщение отредактировал(а) Feldmarschall - 19.6.2008, 01:26
PM   Вверх
MuToGeN
Дата 19.6.2008, 03:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: нет
Всего: 32



Sannis, тот, кто знает, когда вступать в битву и когда отступить, одержит победу. "Исскуство войны".
К чему это я...... 
Нет ничего невозможного. Просто нет, это аксиома. Можно сделать все, что пожелаешь. Есть какая-то умная философская мысль, но раньше чем завтра я ее не сформулирую.


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Sannis
Дата 19.6.2008, 07:09 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 14.8.2007
Где: Москва

Репутация: нет
Всего: 13



Разумеется. Только вы же не будете объяснять это каждому, кто с периодичностью раз в полгода приходит с вопросом про МАК, с вопросом о супербане etc., не имея при даже знаний в PHP, не говоря уже о влезании в код сервера для выхватывания начала пакета(я не в курсе, но мне кажется даже на более низком уровне). Сделать можно, но большинству это не по карману, так что лучше ответить "нет", зная что собеседник не собирается заказывать разработку, да и повторных вопросов будет меньше smile


--------------------
Я Критик Джим, раньше писал моды для IPB 1.3.x-2.3.x, а теперь продвигаю Node.js в массы.
PM MAIL WWW   Вверх
Feldmarschall
Дата 19.6.2008, 10:06 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



Sannis, сделать нельзя. поставим уже точку в этой дискуссии. 
Ни дорого, ни дешево. Вообще никак.
Здесь вообще речь не о том. Не "можно ли определить", а "содержится ли в пакете". А что в нем содержится - см. выше.
Собственно, вся вторая страница к первоначальному вопросу никакого отношения не имеет, а представляет собой отвлеченный разговор о технологических тонкостях. 

Это сообщение отредактировал(а) Feldmarschall - 19.6.2008, 10:18
PM   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Сеть | Следующая тема »


 




[ Время генерации скрипта: 0.1235 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.