Связь между двумя системами с использованием только MAC-адреса - PullRequest
1 голос
/ 14 июля 2011

Я хочу знать, как обмениваться данными между двумя системами, используя только MAC-адрес, используя программу C (без использования IP-адреса).Я думаю, что это сырое соединение Ethernet.Мое требование - отправлять данные с клиента на сервер только с использованием MAC-адреса.Может быть, это может быть сделано путем создания нашего собственного фрейма Ethernet.

Пожалуйста, помогите мне в этом.Если кто-то написал код на C, пожалуйста, поделитесь.

Эта ссылка может вам помочь, http://aschauf.landshut.org/fh/linux/udp_vs_raw/ch01s03.html

Ответы [ 2 ]

3 голосов
/ 14 июля 2011

Библиотека libpcap позволяет вам собирать необработанные пакеты Ethernet и отправлять их непосредственно на адаптер: самая сложная часть - это поиск правильного адаптера.Это разработано для использования C / C ++ на большинстве платформ (Win PCAP и т. Д.).

Убедитесь, что это именно то, что вам нужно: я видел несколько проектов, в которых использовались интерфейсы пакетов Ethernet без обработки, только для болееи еще больше протоколов, которые будут внедрены для повторной передачи, создания окон и т. д., пока вы не получите свою собственную версию TCP / IP (только ту, которая не была проверена миллионами людей, использующих Windows / Linux или какую-либо другую платформу).).Большинство чипов Ethernet имеют функции для ускорения стеков TCP / IP и в наши дни: так что вы тоже упустите это.

0 голосов
/ 14 июля 2011

Здесь являются примерами для C #, возможно, вы можете использовать это.Правильный код зависит от ОС и даже от используемых чипов при программировании для микроконтроллеров.

...