Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];

Вниз

Как работать на канальном и (или) физическом уровне?   Найти похожие ветки 

 
net_daemon   (2006-12-08 13:21) [0]

Суть проблемы такая: дали железку со встроенным Ethernet-адаптером. IP адрес вшить некуда, соответственно, использовать семейство протоколов TCP\IP не получится. Зато у адаптера есть MAC адрес, и работать с железкой, используя ее и свой MAC-адреса, можно через протоколы Ethernet и(или) IEEE 802.3. (Кажется, все правильно). Эти протоколы относятся к канальному и физическому уровню. Собственно, вопрос: подскажите, хотя бы, в каком направлении можно поискать ответ на вопрос, как реализовать обмен пакетами на канальном/физическом уровне, имея только MAC - адрес сетевой карты устройства-получателя?


 
Сергей М. ©   (2006-12-08 13:31) [1]


> дали железку со встроенным Ethernet-адаптером


И как ты с ней общаешься ?
На уровне портов ввода/вывода ?
Или драйвер к "железке" прилагается ?


 
iXT   (2006-12-08 17:57) [2]

Что за железка?


 
Sha ©   (2006-12-11 12:03) [3]

PCap


 
SlymRO   (2006-12-12 09:31) [4]

cmd.exe
arp -s 192.168.1.1 00-11-22-33-44-55
where "192.168.1.1" - virtual! IP adr & "00-11-22-33-44-55" - real MAC adr


 
SlymRO   (2006-12-12 09:33) [5]

if (ping 192.168.1.1) then Msg("Ya! We gocha it")


 
Дмитрий Белькевич ©   (2006-12-14 02:44) [6]

Над канальным уровнем что-то должно быть. Не обязательно TCP и не обязательно IP. Опять же, то что "вшить некуда" не факт, что уже не вшито, и IP - TCP или UDP нет.


 
net_daemon   (2007-01-12 12:08) [7]

Приношу извинения за вынужденное молчание, но проблема до сих пор не решена, а потому, сначала отвечаю на вопросы:
to iXT:

Что за железка?

ADSP Blackfin

to Сергей М. :

> И как ты с ней общаешься ?
> На уровне портов ввода/вывода ?
> Или драйвер к "железке" прилагается ?

В комплекте с железкой идет Development kit с ни хрена не работающими примерами. Общаюсь, есс-но, через драйвер, но по USB. Задачу поставили в общих словах "наладить чтение/запись из RAM девайса посредством Ethernet". Смысл в том, что читать/писать данные придется через LAN.
to Sha

PCap

Это пока единственное, к чему пришел. Однаок возникла проблема: для библиотек winpcap.dll и packet.dll не могу найти паскалевских файлов-описателей процедур и функций. С языком СИ, а именно- с переводом типов данных в псевдонимах функций возникают проблемы(((
Если есть пасовские описатели -дайте, плиз!
to SlymRO  

cmd.exe
arp -s 192.168.1.1 00-11-22-33-44-55
where "192.168.1.1" - virtual! IP adr & "00-11-22-33-44-55" - real MAC adr

На сколько я понимаю смысл ARP-пакета, он предназначен для формирования ARP-таблицы на хосте-приемнике, так? И получиться, что мы к реальному MAC-адресу отправителя привяжем виртуальный (не существующий) IP -адрес. Не окажется ли это одной из разновидности ARP-poisoning, и принимающий хост, обнаружив ошибку, не отключится ли от сети вообще? Заранее извиняюсь, но мне кажется, что предложенный вариант хорош только для тестирования, как рабочая версия - вряд ли.
to Дмитрий Белькевич ©  

Над канальным уровнем что-то должно быть. Не обязательно TCP и не обязательно IP. Опять же, то что "вшить некуда" не факт, что уже не вшито, и IP - TCP или UDP нет.

К сожалению, только канальный. А именно- IEEE 802.3. Из того, что выяснил, имеется формирование сетевым адаптером преамбулы пакета и вычисление CRC. Все остальное отдано на откуп программерам.

Далее, сомневаюсь в использовании ARP-пакетов, т.к. повторюсь, работа с девайсом предполагается в сети и некорректная работа с ARP может, как мне кажется, повлиять на ее работоспособность, причем не в лучшую сторону. Ведь ARP-пакеты использую широковещательный MAC-адрес получателя, я не ошибаюсь? А значит, эти пакеты обрабатывать будут ВСЕ сетевые карты данной сети.

Благодарю всех за ответы и внимание!


 
SlymRO   (2007-01-12 14:38) [8]

net_daemon   (12.01.07 12:08) [7]
И получиться, что мы к реальному MAC-адресу отправителя привяжем виртуальный (не существующий) IP -адрес.

НЕА!
К реальному MAC получателя (твой девайс) цепляем виртуальный IP адрес
Сначала попробуй потом вопросы...


 
net_daemon ©   (2007-01-12 15:08) [9]


НЕА!
К реальному MAC получателя (твой девайс) цепляем виртуальный IP адрес
Сначала попробуй потом вопросы...

Извини, сначала не понял идеи...
Очень заманчиво, по крайней мере - не тривиально!
А как можно выполнить из под дельфей вышеуказанный код? Все, до чего додумался пока - это зашить в BAT-файл и пробовать запустить на исполнение... Аналоги, скажем, API-шные есть?


 
wal ©   (2007-01-12 16:28) [10]


> SlymRO  
И что получится? Ну испохаблю я arp-таблицу, ну пошлю ping, а дальше что? Отправится датаграмма на указанный мак, будет принята, проверена FCS, а дальше что? Железяка ни про какой IP не знает и ничего не ответит, а даже если знает, то все равно не ответит, так как ничего про этот конкретный адрес не знает. Передавать, конечно, данные так можно, а вот получать как?

> net_daemon
Насколько я понял, Blackfin - это микроконтроллер, следовательно, его можно заставить выполнять программы. Нужно, всего лишь, написать реализацию IP и, хотя бы UDP, можно урезанную до невозможности, лишь бы выполняла то, что требуется.

С уважением.


 
Verg ©   (2007-01-12 17:12) [11]


> Если есть пасовские описатели -дайте, плиз!


http://www.magsys.co.uk/delphi/magmonsock.asp



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.061 c
6-1168336140
Ш-К
2007-01-09 12:49
2007.08.26
Как вставить картинку в TWebBrowser из памяти.


15-1185433846
@!!ex
2007-07-26 11:10
2007.08.26
Маечка.


15-1185396061
c0ddeR
2007-07-26 00:41
2007.08.26
Страшно жить.


2-1186241405
hahol
2007-08-04 19:30
2007.08.26
помогите чайнику плз


9-1155485737
Kav
2006-08-13 20:15
2007.08.26
ODE составная геометрия





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский