Hallo,
mit Hilfe der PcapDotNET DLL soll ein Ping an ein Gerät versendet
werden.
Das Versenden und Empfangen von Ping Nachrichten funktioniert,
allerdings erhalte ich in Wireshark folgende Nachricht:
--> Destination unreachable
Die genauere Analyse der Nachrichten haben gezeigt, dass keine Daten im
ICMP Layer enthalten sind. Wie können die Daten in den ICMP Layer
integrieren?
1 | private static Packet BuildIcmpPacket()
|
2 | {
|
3 | EthernetLayer ethernetLayer =
|
4 | new EthernetLayer
|
5 | {
|
6 | Source = new MacAddress("00:61:6E:43:80:90"),
|
7 | Destination = new MacAddress("02:0F:69:FF:C0:00"),
|
8 | EtherType = EthernetType.None, // Will be filled automatically.
|
9 | };
|
10 |
|
11 | IpV4Layer ipV4Layer =
|
12 | new IpV4Layer
|
13 | {
|
14 | Source = new IpV4Address("192.168.1.1"),
|
15 | CurrentDestination = new IpV4Address("192.168.1.100"),
|
16 | Fragmentation = IpV4Fragmentation.None,
|
17 | HeaderChecksum = null, // Will be filled automatically.
|
18 | Identification = 1,
|
19 | Options = IpV4Options.None,
|
20 | Protocol = null, // Will be filled automatically.
|
21 | Ttl = 100,
|
22 | TypeOfService = 0,
|
23 | };
|
24 |
|
25 | IcmpEchoLayer icmpLayer =
|
26 | new IcmpEchoLayer
|
27 | {
|
28 | Checksum = null, // Will be filled automatically.
|
29 | Identifier = 1,
|
30 | SequenceNumber = 800,
|
31 | };
|
32 |
|
33 | PacketBuilder builder = new PacketBuilder(ethernetLayer, ipV4Layer, icmpLayer);
|
34 |
|
35 | return builder.Build(DateTime.Now);
|
36 | }
|