
Sendet Kopien von (UDP) Datagrammen an mehrere Empfänger, mit optionalem Sampling und Spoofing.
Dieses kleine Programm empfängt UDP-Datagramme auf einem bestimmten Port und sendet diese Datagramme an eine festgelegte Gruppe von Empfängern weiter. Zusätzlich kann für jeden Empfänger ein Teilungsdivisor N angegeben werden, sodass dieser nur jedes N-te der empfangenen Pakete erhält.
Dieses Paket wird verteilt unter https://github.com/sleinen/samplicator/
Siehe INSTALL.md.
Siehe die Datei AUTHORS.
Die Nutzungskonvention für das Programm ist
$ samplicate [<option>...] [<destination>...]
Wobei jedes <option> eines der folgenden sein kann
-d <level> um den Debug-Level festzulegen
-s <address> um die Schnittstellenadresse festzulegen, auf der gehört
werden soll (Standard: any)
-p <port> um den UDP-Port festzulegen, auf dem nach eingehenden
Paketen gehört werden soll (Standard: 2000)
-b <buflen> Größe des Empfangspuffers (Standard: 65536)
-c <configfile> Konfigurationsdatei zum Einlesen angeben
-x <delay> um eine Verzögerung nach jedem Paket anzugeben,
in Mikrosekunden
-S Quelladressen beibehalten (Spoofing)
-n UDP-Prüfsumme nicht berechnen (nur relevant mit -S)
-f Programm in den Hintergrund forken
-m <pidfile> Prozess-ID in eine Datei schreiben
-4 nur IPv4
-6 nur IPv6
-h um eine Nutzungsnachricht auszugeben und zu beenden
-u <pdulen> Größe der maximalen PDU auf dem lauschenden Socket (Standard: 65536)
und jedes <destination> sollte als
<addr>[/<port>[/<interval>[,ttl]]] angegeben werden, wobei
<addr> IP-Adresse des Empfängers
<port> UDP-Portnummer des Empfängers (Standard: 2000)
<freq> Anzahl empfangener Datagramme zwischen aufeinanderfolgenden
kopierten Datagrammen für diesen Empfänger.
<ttl> Das TTL (IPv4) oder Hop-Limit (IPv6) für
ausgehende Datagramme.
Konfigurationsdatei-Format:
a.b.c.d[/e.f.g.h]: receiver ...
wobei:
a.b.c.d die IP-Adresse des Senders ist
e.f.g.h eine Maske, die auf den Sender angewendet wird (Standard: 255.255.255.255)
receiver siehe oben.
Empfänger, die auf der Kommandozeile angegeben werden, erhalten alle Pakete; die in der Konfigurationsdatei angegebenen Empfänger erhalten nur Pakete mit einer passenden Quelle.