Есть ли простой способ отправить пакет по IP-адресу (не зная MAC) из сетевого приложения?

Я разрабатываю небольшое приложение NAT, используя DPDK. В настоящее время я использую драйвер pcap_pmd, поэтому устройства по-прежнему виден для ifconfig и помощников. Теперь я хочу отправить пакет по определенному IP-адресу, но не хочу запускать ARP, а сам возиться с таблицами маршрутизации.

Есть ли способ просто передать пакет интерфейсу, чтобы он понял, как его доставить автоматически? Если нет, то как проще всего запросить этот MAC-адрес по известному IP? Устройство по-прежнему управляется ядром, поэтому, может быть, я могу как-то запросить его таблицу маршрутизации?

Что, если бы я использовал драйвер более низкого уровня, такой как e1000, который отвязывает устройство от управления ядром, мог бы я все же избежать реализации собственной маршрутизации?


person Necto    schedule 14.11.2015    source источник


Ответы (1)


Один из способов — использовать широковещательный MAC-адрес: ff-ff-ff-ff-ff-ff, и пусть другие позаботятся о том, знают ли они, где находится предполагаемый IP-адрес.

person Necto    schedule 14.11.2015