Tôi đang chuyển thư viện truyền thông từ Linux sang Windows. Tôi biết cách tiếp cận của tôi là phần lớn. Thư viện sử dụng tất cả các khung mức ethernet thô cho tất cả các liên lạc.Khung Ethernet Nguyên Sử dụng Winsock
Thư viện tôi đang chuyển từ sử dụng gia đình PF_PACKET và cấu trúc sockaddr_ll. Sau khi duyệt qua các trang web winsock MSDN, tôi đã không tìm thấy một gia đình tương đương/struct. Cách tiếp cận của tôi nên ở đây là gì?
Tôi có một vài ý tưởng, nhưng tôi không chắc liệu đó có phải là ý tưởng hay không Tôi có thể sử dụng PF_UNSPEC, để không xác định. Tôi chỉ có thể vượt qua số PF_PACKET đại diện (đó là một unsigned ngắn) Tôi cũng có thể chỉ cần làm cho riêng của tôi sockadddr_ll struct trong Windows.
Không ai trong số những ý tưởng đó có vẻ tốt đối với tôi, chúng dường như giống như những hacks không thực sự có khả năng hoạt động.
Nếu có bất kỳ đề xuất nào, tôi sẽ đánh giá cao nó.
ok, các giới hạn trên ổ cắm thô không áp dụng cho tôi. Ứng dụng của tôi chỉ tăng lên cao như lớp thứ hai. Tức là, tôi chỉ cần rê/nhận khung ethernet, không cần TCP/UDP/IP. – devin
Thực ra nó có. Hãy xem ví dụ về việc gửi các gói dữ liệu thô với WinPcap và bạn sẽ tìm thấy những gì bạn cần :) – Aziz
Không có gì bên dưới lớp 3 được cho phép trong các cửa sổ. – Aziz