Forum: PC-Programmierung PcapDotNET C#


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von dev (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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
        }

von Donni D. (donnidonis)


Bewertung
0 lesenswert
nicht lesenswert
Muss es zwingend per pcapDotNET geschehen? C# liefert eine eigene 
Ping-Klasse mit.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.