私は、通信ライブラリをLinuxからWindowsに移植しています。私は私のアプローチが大部分のものであることを知っています。ライブラリはすべての通信にすべての生のイーサネットレベルのフレームを使用します。Winsockを使用したRawイーサネットフレーム
私が移植しているライブラリは、PF_PACKETファミリとstruct sockaddr_llを使用しています。 MSDN winsockサイトを参照した後、同等のファミリ/構造体が見つかりませんでした。私のアプローチはここにあるべきですか?
私はいくつかのアイデアを持っていますが、それが良いアイデアであるかどうかはわかりません 私はPF_UNSPECを指定できません。 私はPF_PACKETが表す数値を渡すことができます(それは符号なしのショートです) Windowsで独自のsockadddr_ll構造体を作成することもできます。
これらのアイデアはどれも私にとってはうれしくはありませんが、実際には動作しそうにないハックのようです。
誰かが何か提案があれば、私はそれを感謝します。
OK、rawソケットの制限事項は当てはまりません。私のアプリケーションは2番目のレイヤーだけ上に上がります。つまり、イーサネットフレームをレンダリング/受信するだけで、TCP/UDP/IPは必要ありません。 – devin
実際はそうです。 WinPcapで未処理のパケットを送信する例を見てください。必要なものを見つけられます:) – Aziz
ウィンドウにはレイヤー3より下のものはありません。 – Aziz