I’m wondering if you can tell me why this arp response is not being received. There are no exceptions. The code below returns a response within the same code block as the arp request. My full code example is based on your .NET demo.
var reply = new ArpPacket(ArpOperation.Response, arpPacket.SenderHardwareAddress, arpPacket.SenderProtocolAddress, new System.Net.NetworkInformation.PhysicalAddress(new byte[] { 0, 21, 93, 6, 35, 240 }), arpPacket.TargetProtocolAddress);
var ethRequest = new NdisApiDotNet.Native.NdisApi.ETH_REQUEST();
ethRequest.hAdapterHandle = activeAdapeter.Handle;
fixed (byte* response = reply.Bytes)
{
ethRequest.EthPacket.Buffer = (nint)response;
var buffer = *(ethRequest.EthPacket.GetIntermediateBuffer());
buffer.m_Length = (uint)reply.Bytes.Length;
filter.SendPacketToAdapter(ref ethRequest);
Console.WriteLine($"ARP Reply: {reply.SenderProtocolAddress} {reply.SenderHardwareAddress} -> {reply.TargetProtocolAddress} {reply.TargetHardwareAddress}");
}
}