2

我将使用 SharpPcap 框架来制作我的欺骗程序,因此我需要在源地址字段中使用另一个 IP 地址编辑我机器的数据包 IP 地址。

我在 SharpPcap 项目上找到了一些示例,但是如何编辑或更改发送数据包的源地址字段?

下面是发送随机数据包的示例代码:

byte[] bytes = GetRandomPacket();

private static byte[] GetRandomPacket()
{
    byte[] packet = new byte[200];
    Random rand = new Random();
    rand.NextBytes( packet );
    return packet;
}

- 设备.SendPacket(字节);

4

1 回答 1

8

改用Pcap.Net 。

以下是在 Pcap.Net 中构建具有特定源地址和目标地址以及自定义有效负载的简单 IPv4 数据包的方法:

Packet packet =
    PacketBuilder.Build(DateTime.Now,
                        new EthernetLayer
                            {
                                Source = new MacAddress("11:22:33:44:55:66"),
                                Destination = new MacAddress("11:22:33:44:55:67"),
                            },
                        new IpV4Layer
                            {
                                Source = new IpV4Address("1.2.3.4"),
                                Destination = new IpV4Address("1.2.3.5"),
                                Ttl = 64,
                                Identification = 100,
                            },
                        new PayloadLayer
                            {
                                Data = new Datagram(new byte[] {1, 2, 3, 4})
                            });
于 2010-05-18T12:40:09.770 回答