Я пытаюсь создать программное обеспечение, которое обнюхивает DHCP-предложения из разных VLAN, и моя проблема в том, что пакеты, найденные мной, не содержат VLAN-тегов. Я использую сырые сокеты, и я пытался включить режим promiscuous, но безуспешно.Как инициализировать raw-сокет для sniffing VLAN
Вопрос в том, как инструктировать ядро хранить все данные в пакете без изменений?
При использовании wirehark я могу видеть ответный пакет с установленным заголовком VLAN, но мои данные recv'ed удалили всю информацию VLAN.
Заранее благодарен!
--Lauri
Я не могу использовать libpcap, так что опция находится вне окна. – user1444314
Теперь вопрос заключается в том, как извлечь информацию vlan_tci из заданного skb, используя только сокет, или мне нужно каким-то образом переопределить получение (бит ниже уровня, чем сокеты)? – user1444314
Возможно, вы захотите прочитать [этот вопрос и ответ] (http://stackoverflow.com/questions/10947433/linux-user-space-l2-control-protocols). В нем обсуждается, какие изменения необходимы в Linux для передачи информации L2 в приложение для пользовательского пространства. – user1202136