![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
пакет и мак адреса
Rosmi © (2006-10-27 20:57:00)здравствуйте.
недавно попал мне в руки демонстрационный пример перехвата пакетов (SnifferDemo) написанный Александром (Rouse). там создается сокет и биндится к заданному интерфейсу просматривая все проходящие пакеты. мне само содержимое пакета не нужно, интересен лишь мак адрес отправителя, однако насколько я понял он хранится несколько "выше" заголовка ip, и средствами программы до него не добраться так в буфере "украденного" у винсока пакета сразу идет айпи заголовок и прочие "довески" ) и всеже можно ли както добраться до мака? или я чтото не понимаю и он "где-то рядом" ? )
Ketmar (2006-10-28 04:44:00) [1]>[5] Free_Breeze 28-Oct-2006, 03:50
спать иди. просили адрес отправителя, а не получателя. %-)
Free_Breeze (2006-10-28 03:50:00) [2]Для того, чтобы этот код работал, необходимо включить в проект юнит NB30. Простой вызов функции GetMACAddress возвращает адрес первого установленного сетевого адаптера.
Но лично я при возникновении проблемы воспользовался компонентой "IP Works Delphi Edition v6" (и компонент и регистратор его в интернете по поиску нашел). МАС-адрес там выводится простой командой:
Label1.Caption:=Ipinfo1.AdapterPhysicalAddress;
Ketmar (2006-10-28 00:49:00) [3]>[3] DrPass(c) 28-Oct-2006, 00:01
>усниффиться хоть до посинения :)
если уснифиться до посинения, то можно стать буйным и опасным.
DrPass (2006-10-28 00:01:00) [4]
> "сниффинг" -- это не перехват. это шпионаж
В современной коммутируемой сети можно усниффиться хоть до посинения :)
И познавательно, и для окружающих неопасно
Ketmar (2006-10-27 21:18:00) [5]"сниффинг" -- это не перехват. это шпионаж.
mac-адрес -- это к заголовкам Ethernet. афаир, так просто их не добудешь.
DrPass (2006-10-27 21:16:00) [6]Ты прав, IP-пакет - это более высокий уровень абстракций. Такие вещи, как MAC-адреса, протолоку IP и собственно библиотеке Windows Sockets неведомы. Это фича конкретной аппаратной среды (Ethernet). Но с помощью протокола ARP можно выцепить и МАС-адрес по IP. См. функцию SendARP. Эта функция есть в Iphlpapi.dll, и в Delphi надо будет ее либо ручками импортировать, либо искать заголовочный файл для этой либы