これまで、SharpPcapを使用してPacket.Netで作成したARPパケットを送信しようとして失敗しました。問題は、それを使用してパケットを送信してdevice.SendPacket
も実際には送信されないことであり、理由がわかりません。
これは私のコードです:
ARPPacket arpPacket = new ARPPacket(ARPOperation.Request, PhysicalAddress.Parse("000000000000"), targetIpAddress, device.Interface.MacAddress, myIpAddress);
EthernetPacket ethPacket = new EthernetPacket(device.Interface.MacAddress, PhysicalAddress.Parse("FFFFFFFFFFFF"), EthernetPacketType.Arp);
ethPacket.PayloadPacket = arpPacket;
device.Open();
device.SendPacket(ethPacket);
device.Close();
ちなみに、SharpPcap ARPクラスだけでなく、自分でARPパケットを送信することが重要です。