生のTCPパケットを受信し、同じワークロードで送り返したい。
次のようになります。
void OnPacketReceived(TcpPacket p)
{
byte [] body = p.GetBody();
}
注:イーサネットフレームではなく、TCPパケットが必要です。
生のTCPパケットを受信し、同じワークロードで送り返したい。
次のようになります。
void OnPacketReceived(TcpPacket p)
{
byte [] body = p.GetBody();
}
注:イーサネットフレームではなく、TCPパケットが必要です。
ソケットをrawソケットとして実装すると、パケット全体にアクセスできます(実際、パケットに関するすべてを自分で処理する必要があります)。
ソケットを作成するときは、SocketType.RawとProtocolType.Rawを使用します。
この方法でソケットを実装する場合は、TCPの詳細を処理する必要があることに注意してください。
参考までに、Socketクラスに関するMSDNドキュメントは次のとおりです。http: //msdn.microsoft.com/en-us/library/system.net.sockets.socket.aspx
pcapDotNetライブラリを使用できます。
パケットスニファを使用する必要があります。ここでは、選択したフィルタを配置でき、それに基づいて応答することもできます。
WinPcapの.Netラッパーが役立つことがわかります。