Wie sende ich Daten an einem SOCK_PACKET-Socket, ohne anzugeben, für welchen Host er bestimmt ist? Ich habe den IP-Header erstellt, um zu zeigen, wohin es gehen soll, aber write() wird nicht funktionieren.Senden von Daten über den AF_PACKET-Socket
0
A
Antwort
2
Nicht. Verwenden Sie write(), verwenden Sie sendto().
Wenn Sie PF_PACKET, SOCK_DGRAM, verwenden, dann erstellt es die Link-Layer-Header für Sie, was normalerweise das ist, was Sie wollen. Sie müssen jedoch immer noch das höhere Protokoll erstellen, das Sie verwenden.
Sie geben eine sockaddr_ll im Zielparameter an. Sie können eine Link-Layer-Unicast-Adresse, Multicast-Adresse oder Broadcast-Adresse angeben.
Verwandte Themen
- 1. C# senden gemischte Daten über den Socket
- 2. Senden von Daten über die iPhone-Kopfhörerbuchse
- 3. Geschützte Senden/Empfangen von Daten über HTTP
- 4. Senden/Empfangen von Daten über Bluetooth
- 5. Senden von Daten über Header-Methode PHP
- 6. Senden von Daten über eine serielle Schnittstelle
- 7. Daten über serialisiertes Array senden
- 8. Senden von hierarchischen Daten von Javascript über flache POST-Anfrage
- 9. Senden von Daten über serielle in Python von verschiedenen Funktionen
- 10. Senden Sie 5MB Daten über einen Socket?
- 11. Senden von Daten über PHP-Seite von Android-Formular
- 12. Senden von Daten über USB von Android App zu PC
- 13. Verwenden von Getreide zum Senden von Daten über einen Griff
- 14. jQuery senden HTML-Daten über POST
- 15. Einfache Form keine Daten über _POST senden
- 16. Übertragen von Daten über den seriellen Port
- 17. über $ .post Daten + serialisierte Form senden
- 18. Senden einer TXT-Datei über den Webservice?
- 19. Senden von UIImage über NSOutputStream
- 20. Senden von Daten an Servlet über httpo mit Java DefaultHttpClient
- 21. Senden von Daten, Klassen und Methoden über Ajax
- 22. Abrufen von ID3D11Texture2D-Daten zum Senden über das Netzwerk
- 23. Senden von Daten an $ _POST Array über AJAX
- 24. Senden von Daten über zwei Programme in Python
- 25. das Netzwerk C# senden Daten über
- 26. Senden EXTRA Daten über PendingIntent Problem
- 27. Swift senden Hex-Daten über TCP-Socket
- 28. So senden Sie Daten über QUIC
- 29. MFC - Senden von Daten über PostMessage an die GUI
- 30. Senden von Daten von einem Eingang des Typs "Bild" über Ajax statt Formular senden
Ist es wichtig, welchen Host ich mit sendto() spezifiziere, wenn der IP-Header das Ziel enthält – computergeek6
Ja absolut; Wenn Sie ein IP-Paket senden, müssen Sie es immer noch an die entsprechende Link-Layer-Adresse senden, wenn Sie PF_PACKET, SOCK_DGRA, verwenden. Wenn Sie rohe IP-Pakete senden möchten, empfehle ich stattdessen, PF_INET, SOCK_RAW zu verwenden. – MarkR
Wenn ich PF_INET, SOCK_RAW, verwende, müsste ich den Socket binden? – computergeek6