Lesen Sie dies in anderen Sprachen: English, Español, Deutsch, Français.
Paket Sender ist ein Open-Source-Dienstprogramm, das das Senden und Empfangen von TCP-, UDP- und SSL-Paketen (verschlüsseltes TCP) sowie HTTP/HTTPS-Anfragen und die Erstellung von Panels ermöglicht. Der Mainline-Zweig unterstützt offiziell Windows, Mac und Desktop-Linux (mit Qt). Andere Stellen können Paket Sender neu kompilieren und weiterverteilen. Paket Sender ist kostenlos und steht unter der GPL v2 oder höher. Es kann sowohl für kommerzielle als auch für private Zwecke verwendet werden. Wenn Sie die App nützlich finden, ziehen Sie bitte eine Spende/Sponsoring in Betracht, damit die Entwicklung fortgesetzt werden kann.
Paket Sender möchte sich bei den folgenden Sponsoren bedanken.
IWL ist ein kalifornisches Unternehmen, das Computer-Netzwerkprodukte herstellt.
NagleCode ist ein Softwarehersteller und Entwicklungsstudio.
Möchten Sie, dass Ihr Name/Logo hier aufgeführt wird?
HINWEIS: Versuchen Sie, Ihre Firewall (vorübergehend) zu deaktivieren, wenn Sie Probleme unter Windows haben.
Offizielle Versionen von Paket Sender können unter PacketSender.com heruntergeladen werden. Mancherorts wird das Paket Sender weiterverteilt.
Paket Sender ist für alle Desktop-Versionen identisch. Der einzige Unterschied besteht darin, dass das Design an das Betriebssystem angepasst ist.
Bildschirmfoto des Paketsenders](screenshots/ps_GUI.png)
Die Felder im oberen Bereich können mit STRG+1, STRG+2 usw. bis hin zu STRG+8 (Schaltfläche Senden) durchlaufen werden. Auf dem Mac lautet die Tastenkombination Befehl.
Die Hotkeys und Felder sind:
Einige Anmerkungen:
Die integrierten Server von Paket Sender sind so konfiguriert, dass sie entweder IPv4 oder IPv6 unterstützen, aber nicht beide gleichzeitig. Für Clients schalten Paket Sender GUI und CLI beim Senden nahtlos zwischen den beiden Modi um (für IPv6 wird möglicherweise eine Scope-ID benötigt). Klicken Sie unten rechts auf die Umschalttaste IPv4 / IPv6, um zwischen den beiden Optionen zu wechseln.
In den Einstellungen können Sie auch festlegen, dass sich die Server von Packet Sender an eine benutzerdefinierte IP-Adresse binden. Dies kann für Systeme mit mehreren NICs oder komplizierten IP-Konfigurationen sehr nützlich sein. Paket Sender löst einen Fehler aus, wenn er sich an eine Adresse binden soll, die nicht existiert.
Paket Sender hat einen eingebauten Subnetz-Rechner. Es befindet sich unter dem Menü Extras.
Paket Sender unterstützt den Aufbau verschlüsselter Verbindungen über SSL. Dies wird sowohl in der grafischen Benutzeroberfläche als auch in der Befehlszeile unterstützt.
Paket Sender bündelt OpenSSL für die Verwendung unter Windows. Auf Mac und Linux verwendet Packet Sender die nativen SSL-Bibliotheken.
Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im OpenSSL-Toolkit entwickelt wurde. (http://www.openssl.org/)_
SSL-Notizen:
Paket Sender bündelt ein internes "Snake Oil"-Zertifikat für die Verwendung als Server für Windows. Das Zertifikat und der Schlüssel befinden sich an der gleichen Stelle wie das Paket und die Einstellungen.
Anmerkung: Das Überschreiben der Zertifizierungsstellen in den Einstellungen überschreibt auch das Schlangenöl-Zertifikat.
Wenn ein SSL-Fehler auftritt, wird dieser von Paketsender in des Verkehrs log, eingetragen. Wenn die Einstellung so ist, dass die Verschlüsselung trotzdem fortgesetzt wird (Standardeinstellung), wird die Verschlüsselung weiter ausgehandelt. Andernfalls wird die Verbindung mit einem Verbindungsabbruch beendet.
Die Multicast-Unterstützung von PaketSender wird durch den Versuch ausgelöst, an eine IPv4-Multicast-Adresse zu senden, oder über das Untermenü Mulitcast. Die Funktion ist derzeit experimentell und hat diese bekannten Probleme.
Es gibt keine IPv6-Multicast-Unterstützung, obwohl sie auf der Roadmap steht. Sponsoren, die IPv6-Multicast-Unterstützung wünschen, können sich gerne an mich wenden.
Wenn das normale Sendesystem nicht ausreicht, können Sie eine Ziel-IP mit Paketen beschießen, um zu sehen, ob Ihr Gerät damit umgehen kann. Diese finden Sie in der GUI-Symbolleiste unter Werkzeuge -> Intensiver Verkehrsgenerator.
Bitte beachten Sie, dass diese Funktion experimentell ist und die angezeigten Metriken noch nicht vollständig getestet wurden. Für einen genaueren Test sollten Sie sich die CLI-Version dieses Werkzeugs ansehen.
Paketsätze können mit dem kostenlosen Dienst [Packet Sender Cloud] (https://cloud.packetsender.com/) schnell gespeichert/abgerufen/geteilt werden. Die Cloud kann auch verwendet werden, um Ihre Pakete öffentlich anzuzeigen und zu verteilen (über eine URL), für die Zusammenarbeit, für Tutorials, für Endbenutzer usw. Paketabsender können öffentliche Paketsätze mit öffentlicher URL importieren.
Hierfür gibt es verschiedene Gründe:
Wenn Sie eine Netzwerk-API veröffentlichen, ist es wesentlich einfacher, eine öffentliche Cloud-Seite zu pflegen, als Ihren Nutzern die Pakete mühsam im Detail (IP, Port, Typ usw.) zu beschreiben. Außerdem ist es einfach, diese Seite zu aktualisieren.
Weitere Informationen dazu finden Sie unter https://cloud.packetsender.com/help
Paket Sender hat einen "tragbaren" Modus. Beim Programmstart sucht es nach der Datei portablemode.txt
und füllt alle fehlenden Einstellungsdateien in diesem Laufzeitverzeichnis auf. Diese Dateien sind packets.ini
, ps_settings.ini
, ps.key
, und ps.pem
.
Sie können auch einige Dateien portabel und die anderen an ihrem Standardspeicherort belassen, indem Sie portablemode.txt entfernen.
Wenn Sie die grafische Benutzeroberfläche nicht benötigen, können Sie diese DDLs entfernen
Wenn Sie kein SSL benötigen, können Sie diese DDLs entfernen
Das Laufzeitverzeichnis für Windows-Benutzer ist derselbe Ort wie die .exe-Datei.
Für MAC-Benutzer befindet sich dieses Laufzeitverzeichnis unter PacketSender.app/Contents/MacOS
.
Wenn INI-Dateien gefunden werden, werden sie anstelle von %APPDATEN%
oder Bibliothek/Anwendungsunterstützung
verwendet.
Paket Sender unterstützt bis zu 5 intelligente Antworten.
Um diese Funktion zu aktivieren, wählen Sie Datei -> Einstellungen in der GUI-Symbolleiste. Gehen Sie zur Registerkarte Smart Responses und aktivieren Sie das Kontrollkästchen, Senden Sie eine intelligente Antwort.
Pcket Sender unterstützt diese Makros beim Senden von Antworten:
Paket Sender unterstützt dauerhafte TCP- und SSL-Verbindungen über ein separates GUI-Fenster. Sie wird über ein Kontrollkästchen im Hauptfenster oder über das Fenster Einstellungen aktiviert.
Dauerhafte Verbindungen werden nicht über die Befehlszeile unterstützt.
Paket Sender unterstützt das Senden von POST/GET-Anfragen über HTTP und HTTPS. Das Dropdown-Menü Protokoll enthält die folgenden Optionen: HTTP GET, HTTP POST, HTTPS GET, HTTPS POST. Wenn Sie HTTP(S) auswählen, werden die Eingabefelder auf aktualisiert: Name, Anfrage, Adresse, Daten (wenn POST ausgewählt ist), Schaltfläche Daten generieren (wenn POST ausgewählt ist), Datei laden (wenn POST ausgewählt ist).
Sie können auch eine vollständige URL in das Anforderungsfeld einfügen, und Packet Sender analysiert und füllt die anderen Felder automatisch aus.
Paket Sender unterstützt die Erstellung von Bedienfeldern. Felder bestehen aus Schaltflächen, denen Skripte (Pakete) zugewiesen sind. Wenn Sie auf die Schaltfläche klicken, werden die Pakete, auf die die Schaltfläche verweist, ausgeführt.
Panels können auf zwei Arten erstellt werden:
Packet Sender unterstützt das Starten im Nur-Panel-Modus mit dem Starter-Panel unter Verwendung der Befehlszeilenoption --starterpanel
.
Um mit der Skripterstellung für die Schaltflächen auf Ihrem Bedienfeld zu beginnen, müssen Sie ein Bedienfeld öffnen und zum Bearbeitungsbildschirm wechseln. Sobald ein Panel-Projekt geöffnet ist, prüfen Sie die Schaltfläche in der unteren rechten Ecke. Wenn auf dieser Schaltfläche "Betrachten" steht, befinden Sie sich auf dem Bildschirm "Betrachten". Klicken Sie auf die Schaltfläche, um das Panel in den Bearbeitungsbildschirm zu verschieben.
Auf dem Bearbeitungsbildschirm können Schaltflächen und Skripte zum Bedienfeld hinzugefügt werden.
Die Schaltflächenskripte enthalten den Namen des zu sendenden Pakets.
Mehrere Pakete können auf eine Schaltfläche gelegt werden, indem jeder Name in eine neue Zeile eingefügt wird.
Der Panel Generator unterstützt das Hinzufügen einer Verzögerung zwischen mehreren Paketen durch das Hinzufügen von "delay:# of seconds" zwischen den Paketen.
Panel Generator unterstützt das Hinzufügen eines Skripts zum Laden eines neuen Panels durch Hinzufügen von "panel:panel id #". Sobald alle vorherigen Skripte auf der Schaltfläche ausgeführt wurden, wechselt das Panel zum nächsten Panel.
Panel Generator unterstützt das Hinzufügen von Schaltflächen, die auf lokal gespeicherte Dateien oder URLs verweisen. Datei-/URL-Schaltflächen können im Bearbeitungsbildschirm durch Klicken auf das + in der unteren rechten Ecke hinzugefügt werden.
Sobald die Datei oder URL kopiert ist, werden Sie aufgefordert, einen Namen für die Schaltfläche einzugeben. Die Schaltflächen werden am unteren Rand des Fensters eingeblendet.
Wenn Sie auf dem Bearbeitungsbildschirm auf diese Schaltflächen klicken, können Sie den Datei-/URL-Link und den Namen der Schaltfläche bearbeiten. Sie können die Schaltfläche auch löschen, indem Sie auf das X im Popup-Fenster klicken.
Wenn Sie auf dem Ansichtsbildschirm auf diese Schaltflächen klicken, wird die URL im Standardbrowser aufgerufen oder die Datei geöffnet (mit dem Standardprogramm für den Dateityp).
Wenn Sie sich im Bearbeitungsbildschirm eines Panels befinden, gibt es eine Symbolleiste mit den Menüs Datei, exportieren, Einstellungen und Hilfe. Von dieser Symbolleiste aus können Sie Panel-Projekte speichern, exportieren, importieren, laden und das aktuelle Panel-Projekt bearbeiten.
In den Einstellungen können Sie Folgendes tun:
Paket Sender kann über die Befehlszeile auf Ihrem Computer verwendet werden.
Für Windows verwenden Sie die Erweiterung .com (packetsender.com
), um die Befehlszeilenschnittstelle zu verwenden. Optional können Sie auch Paketsender
ohne Erweiterung verwenden. Mit der Endung .exe wird die GUI gestartet.
Für Linux folgt das Kommandozeilensystem in Packet Sender demselben Muster wie andere Linux-Dienstprogramme. Sie hat einen langen Namen (z. B. --version) und einen kurzen Namen (z. B. -v). Diese Optionen können in beliebiger Reihenfolge angeordnet werden und werden von Packet Sender korrekt ausgewertet. Die letzten 3 Optionen sind positionsabhängig und müssen als letztes erscheinen. Diese sind IP, Port und Daten. Diese letzten Optionen sind optional, wenn ein gespeichertes Paket verwendet wird.
paket sender --help
Paket Sender ist ein Netzwerk-UDP/TCP/SSL/HTTP-Testdienstprogramm von NagleCode
Siehe https://PacketSender.com/ für weitere Informationen.
Optionen:
-?, -h, --help Zeigt die Hilfe zu den Befehlszeilenoptionen an.
--help-all Zeigt die Hilfe einschließlich Qt-spezifischer Optionen an.
-v, --version Zeigt Versionsinformationen an.
-q, --quiet Leiser Modus. Nur empfangene Daten ausgeben.
-x, --hex Zu sendende Daten als Hexadezimalwert parsen (Standard für
TCP/UDP/SSL).
-a, --ascii Parsen der zu sendenden Daten als gemischtes ASCII (Standard für http
und GUI).
-A, --ASCII Parsen der zu sendenden Daten als reine ASCII-Daten (keine \xx)
Übersetzung).
-w, --wait <ms> Warten Sie bis zu <Millisekunden> auf eine Antwort nach
senden. Null bedeutet, dass nicht gewartet werden soll (Standard).
-f, --file <Pfad> Den Inhalt des angegebenen Pfades senden. Maximal 10 MiB für
UDP, 100 MiB für TCP/SSL.
-b, --bind <Port> Port binden. Standardwert ist 0 (dynamisch).
-6, --ipv6 Erzwingt IPv6. Dasselbe wie -B "::". Standard ist IP:Any.
-4, --ipv4 Erzwingt IPv4. Dasselbe wie -B "0.0.0.0". Standard ist
IP:Beliebig.
-B, --bindip <IP> Benutzerdefinierte IP binden. Standard ist IP:Any.
-t, --tcp TCP senden (Standard).
-s, --ssl SSL senden und Fehler ignorieren.
-S, --SSL SSL senden und bei Fehlern anhalten.
-u, --udp UDP senden.
--http <http> HTTP senden. Erlaubte Werte sind GET (Standard) und
POST
-n, --name <name> Ein zuvor gespeichertes Paket mit dem Namen <name> senden. Andere
setzt gespeicherte Paketparameter außer Kraft.
--bps <bps> Intensiver Verkehr. Berechnen Sie den Satz auf der Grundlage des Wertes von
Bits pro Sekunde.
--num <Nummer> Intensiver Verkehr. Anzahl der zu sendenden Pakete. Standard
unbegrenzt.
--rate <Hertz> Intensiver Verkehr. Bewerten. Die Option in bps wird ignoriert.
--usdelay <microseconds> Intensiver Verkehr. Verzögerung beim erneuten Senden. Wird verwendet, wenn die Rate 0 ist.
Die Option in bps wird ignoriert.
Argumente:
Adresse Zieladresse/URL. Fakultativ für gespeicherte Pakete.
port Zielhafen/POST-Daten. Fakultativ für gespeicherte
Päckchen.
daten Zu sendende Daten. Fakultativ für gespeicherte Pakete.
Die Befehlszeilenschnittstelle hat unter Windows, Linux und MAC das gleiche Format.
Das Format ist: Paketsender [Optionen] Adresse Port Daten
packetsender -taw 500 mirrors.xmission.com 21 "USER anonymous\r\nPASS [email protected]\r\n"
TCP (65505)://mirrors.xmission.com:21 55 53 45 52 20 61 6e 6f 6e 79 6d 6f 75 73 0d 0a 50 41 53 53 20 63 68 72 6f 6d 65 40 65 78 61 6d 70 6c 65 2e 63 6f 6d 0d 0a
Antwortzeit:5:51:37.042 pm
Antwort HEX:32 32 30 2D 57 65 6C 63 6F 6D 65 20...
Antwort ASCII:220-Willkommen bei XMission Internet...
Die Kommandozeile von Packet Sender kann an benutzerdefinierte Ports gebunden werden, um IPv4/6-Modi oder mehrere NICs mit der Option -B zu erzwingen.
packetsender -taw 3000 fe80::c07b:d517:e339:5a08 5005 "Hello\r"
packetsender -taw 3000 192.168.0.201 5005 "Hello\r"
packetsender -B 192.168.0.200 -taw 3000 192.168.0.201 5005 "Hello\r"
packetsender -B fe80::a437:399a:3091:266a%ethernet_32769 -taw 3000 fe80::c07b:d517:e339:5a08 5005 "Hello\r"
packetsender -B fe80::a437:399a:3091:266a -taw 3000 fe80::c07b:d517:e339:5a08 5005 "Hello\r"
Die Befehlszeile bietet die Möglichkeit, SSL-Fehler zu ignorieren oder abzubrechen. Die Standardeinstellung ist "ignorieren".
packetsender -saw 500 expired.packetsender.com 443 "GET / HTTP/1.0\r\n\r\n"
SSL-Fehler: Das Zertifikat ist abgelaufen
SSL (54202)://expired.packetsender.com:443 47 45 54 20 2f 20 48 54 54 50 2f 31 2e 30 0d 0a 0d 0a
Chiffre: Verschlüsselt mit AES(128)
Antwortzeit:3:24:55.695 pm
Antwort HEX:48 54 54 50 2f 31 2e 31 20 34 32 31 20 0d 0a 53 65 72 76 65 72 3a 20 6e 67 69 6e 78 2f 31 2e 31 30 2e 30 20 28 55 62 75 6e 74 75 29 0d
Antwort ASCII:HTTP/1.1 421 \r\nServer: nginx/1.10.0 (Ubuntu)\r
Beachten Sie, dass dabei die eingebauten Standardpakete verwendet werden.
packetsender --name "HTTPS POST Params"
packetsender --http GET "https://httpbin.org/get"
packetsender --http POST "https://httpbin.org/post" "{}"
Der befehlsintensive Verkehrsgenerator funktioniert ähnlich wie die GUI-Version, ist aber etwas genauer und bietet mehr Steuerungsmöglichkeiten (und mehr Intensität!).
Im Folgenden finden Sie Beispiele für die Verwendung dieser Funktion. Beachten Sie, dass diese Berechnungen nach bestem Wissen und Gewissen erfolgen. Das funktioniert ganz gut, aber Prozessorspitzen oder verschiedene Netzwerkprobleme können das System stören. Die Einfädelung erfolgt nicht in Echtzeit und ist auch nicht besonders intelligent in ihren Kompensationsversuchen.
Anmerkung: Für Windows verwenden Sie die ".com"-Erstellung, d. h. jedes Beispiel wäre packetsender.com
packetsender --rate 20 --name "Mein Wahnsinns-Paket"
packetsender --bps 2000 --name "Mein Wahnsinns-Paket"
packetsender --rate 0 --name "Mein Wahnsinns-Paket"
packetsender --usdelay 2000000 --name "Mein Wahnsinns-Paket"
Die einzige Abhängigkeit ist Qt SDK
Die Windows- und Mac-Versionen wurden mit Qt 5.12 erstellt. Paket Sender unterstützt zwar Qt 6, aber nicht cmake unterstützen.
Hier ist die Reihenfolge der Befehle für Ubuntu 16.04. Bitte passen Sie es an Ihre Linux-Plattform an. Paket Sender benötigt keine zusätzlichen Bibliotheken neben dem Qt SDK. Mir wurde gesagt, dass es Probleme bei der Erstellung der Fedora-Version gibt. Wenn ein Fedora-Experte einen Einblick hat, lassen Sie es mich bitte wissen, und ich werde Ihre Anweisungen hinzufügen.
Wenn Sie abenteuerlustig sind, können Sie auch aus dem Master-Zweig bauen. Sie enthält die neueste stabile Version. Der Entwicklungszweig sollte wahrscheinlich vermieden werden.
sudo apt-get update
sudo apt-get install qt5-default build-essential
wget https://github.com/dannagle/PacketSender/archive/(Version).tar.gz
tar -xzvf (Version).tar.gz
cd PacketSender-(Version)/src
qmake PacketSender.pro
make
Zum Ausführen verwenden:
./PacketSender
Wenn es nicht ausgeführt wird, müssen Sie es möglicherweise als ausführbar festlegen
chmod a+x PacketSender
Vermissen Sie eine Funktion? Sie können [mich beauftragen, es zu Paket Sender hinzuzufügen] (https://packetsender.com/enhancements).
Die Lizenz ist GPL v2 oder später. Kontaktieren Sie mich, wenn Sie eine andere Lizenz benötigen. Einige Distributionen von Paket Sender verwenden möglicherweise OpenSSL. Die aktuellste VPAT finden Sie in diesem Repo.
Paket Sender wurde von Dan Nagle geschrieben und wird veröffentlicht von © NagleCode, LLC - @NagleCode - PacketSender.com