![]() |
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]() ![]() ![]() |
|
geek2600 |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 19.11.2006 Репутация: нет Всего: 1 |
Здравствуйте.Уважаемые участники форума, у меня следующий вопрос.
Для определения IP входящих на сайт компьютеров я использую следующий код:
Как мне сделать так, чтобы фиксировался не только IP входящего компьютера,но и MAC адрес? Т.е. если компьютер имеет выход в интернет через локальную сеть. Заранее благодарен.
Это сообщение отредактировал(а) MoLeX - 15.6.2008, 08:21 |
||||
|
|||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
код - шедевр.
ответ на вопрос - никак. |
|||
|
||||
geek2600 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 19.11.2006 Репутация: нет Всего: 1 |
Я на оригинальность и идеальность кода не претендую.
Так , что действительно никак? |
|||
|
||||
gta4kv |
|
|||
![]() Walking around mad. ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1868 Регистрация: 25.7.2006 Репутация: нет Всего: 91 |
geek2600, действительно никак.
|
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
geek2600, напротив, код твой нереально оригинальный. Так что можешь смело претендовать.
|
|||
|
||||
geek2600 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 19.11.2006 Репутация: нет Всего: 1 |
Feldmarschall, я хочу Вам задать вопрос не в тему вопроса.Скажите если человек выходит в интернет по вышеописанной схеме, и я пошлю ping на его интернет IP,куда пойдет мой IP пакет?Какому именно компьютеру?Я просто имею лишь поверхностное понятие о том как происходит маршрутизация пакета.
Заранее благодарен. |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Куда пошлешь - туда и придет.
|
|||
|
||||
geek2600 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 19.11.2006 Репутация: нет Всего: 1 |
немного не понял.В IP пакете есть поле содержащее MAC адрес?
|
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
что ты не понял? вот ты пишешь: "я пошлю ping на его интернет IP". "компьютер имеет выход в интернет через локальную сеть" через какое место эта сеть выходит в интернет - в это место и придет твой пинг. разве это не очевидно? нет |
|||
|
||||
Glip |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 473 Регистрация: 30.12.2006 Репутация: 2 Всего: 18 |
||||
|
||||
geek2600 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 19.11.2006 Репутация: нет Всего: 1 |
т.е. в пакете который отсылается в интернет MAC адре не содержится.Тогда как маршрутизатор опознает какому MAC чего пришло?
|
|||
|
||||
Glip |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 473 Регистрация: 30.12.2006 Репутация: 2 Всего: 18 |
geek2600, для определения мак адресов есть протокол arp, но для начала маршрутизатор узнает IP адрес по таблице маршрутизации, если есть nat то еще и с учетом его.
учите матчасть. разговор уже на тему чисто сетевых технологий и к php не имеет отношения |
|||
|
||||
geek2600 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 19.11.2006 Репутация: нет Всего: 1 |
Спосибо большое!!!!Буду изучать.
|
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
а код, может, подправишь, все-таки?
чтобы эпохальная конструкция
вызывалась только один раз? |
|||
|
||||
MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 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! |
|||
|
||||
MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4379 Регистрация: 15.8.2002 Где: Москва Репутация: нет Всего: 32 |
Ответ неверный -) Конечно, если разложить все по модели 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! |
|||
|
||||
Sannis |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 14.8.2007 Где: Москва Репутация: нет Всего: 13 |
MuToGeN, а вы возьмётесь реализовать это на PHP? Я конечно не местный, но что-то мне не верится
![]() -------------------- |
|||
|
||||
MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 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! |
|||
|
||||
gta4kv |
|
|||
![]() Walking around mad. ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1868 Регистрация: 25.7.2006 Репутация: нет Всего: 91 |
MuToGeN, ну а вот тема у нас про PHP, так то понятно что можно
![]() |
|||
|
||||
MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 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! |
|||
|
||||
gta4kv |
|
|||
![]() Walking around mad. ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1868 Регистрация: 25.7.2006 Репутация: нет Всего: 91 |
MuToGeN, внешние средства не везде сможешь использовать.
Не у всех "считающих себя гуру в пхп" есть свои сервера. ;) или даже впсы. |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Sannis, практическая ценность такого решения будет равна нулю.
Всё уже разжевали на предыдущей странице. Кто не понял - перечитайте ещё раз. |
|||
|
||||
Sannis |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 14.8.2007 Где: Москва Репутация: нет Всего: 13 |
Feldmarschall, да я в курсе, мой вопрос был для выяснения ответа MuToGeN'а ;)
-------------------- |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Самое забавное, что - я сейчас посмотрел - он же и разжевывал. Вот в чем прикол.
В принципе, мотивы человека понять можно, я даже и отвечать не стал. А тут захожу - такая дискуссия. Это сообщение отредактировал(а) Feldmarschall - 19.6.2008, 01:26 |
|||
|
||||
MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 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! |
|||
|
||||
Sannis |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 14.8.2007 Где: Москва Репутация: нет Всего: 13 |
Разумеется. Только вы же не будете объяснять это каждому, кто с периодичностью раз в полгода приходит с вопросом про МАК, с вопросом о супербане etc., не имея при даже знаний в PHP, не говоря уже о влезании в код сервера для выхватывания начала пакета(я не в курсе, но мне кажется даже на более низком уровне). Сделать можно, но большинству это не по карману, так что лучше ответить "нет", зная что собеседник не собирается заказывать разработку, да и повторных вопросов будет меньше
![]() -------------------- |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Sannis, сделать нельзя. поставим уже точку в этой дискуссии.
Ни дорого, ни дешево. Вообще никак. Здесь вообще речь не о том. Не "можно ли определить", а "содержится ли в пакете". А что в нем содержится - см. выше. Собственно, вся вторая страница к первоначальному вопросу никакого отношения не имеет, а представляет собой отвлеченный разговор о технологических тонкостях. Это сообщение отредактировал(а) Feldmarschall - 19.6.2008, 10:18 |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Сеть | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |