Wysyłanie i odbieranie danych RAW przez ethernet w QT

Witam, chciałbym się zapytać jak mogę wysyłać i odbierać ramki Ethernet z poziomu QT (na Windows 7). Ogólnie potrzebuje przekazywać dane dysponując jedynie adresami MAC.

Prawdopodobnie będzie to ciężkie. Jeżeli to rozważanie akademickie / próby pisania własnego systemu to raczej nic nie pomogę. Jeżeli jednak jest to próba rozwiązania jakiegoś rzeczywistego problemu, to sugeruję zamiennik. Jak rozumiem, problem wygląda następująco: oba systemy implementują wszystkie warstwy modelu OSI, ale niemożliwość korzystania z IP wiąże się z tym, że przykładowo maszyny mają przydzielane dynamicznie adresy IP w nacie (jak rozumiem, chcesz komunikować dwie stacje w lokalnej sieci, bo adres MAC) po np. restarcie i rekonfiguracja pliku konfiguracyjnego aplikacji po każdym takim zdarzeniu to PITA.

Sugeruję, żeby wykorzystać tutaj podejście, które widziałem przy okazji korzystania z klastra hazelcasta. Tutaj masz poglądowy kawałek XML-a, jakby to wyglądało:

https://docs.hazelcast.org/docs/latest-development/manual/html/Setting_Up_Clusters/Discovering_Members_by_Multicast.html

Oczywiście w twoim przypadku nie wiem, czy można byłoby wykorzystać podejście z trusted interface, ale można to zastąpić jakimś mechanizmem autentykacji warstwy aplikacji (o ile w ogóle jest to potrzebne, czyli w sieci są niezaufane urządzenia).

Inne przydatne linki