Udpbox

Aus DXL-Wiki
Zur Navigation springen Zur Suche springen

Über udpbox

udpbox ist ein leistungsfähiger und äußerst individuell konfigurierbarer APRS Digipeater mit allerhand Filtermöglichkeiten. Input und Output von udpbox sind im AXUDP Format. udpbox kann auch dazu genutzt werden eine AXUDP Quelle zu vervielfältigen, also an einem Port eingehende AXUDP Pakete an mehrere andere Ports identisch weiterzuleiten.

Übersicht der Parameter

udpbox -h

 -a <paths>     user message ack path eg. WIDE2-2 or - for no path
 -b <s>:<file>  enable beacon every s(econds) path and text from <file>
                cycles thru lines in file, empty lines = no tx (size max 32kb)
                \\z ddhhmm, \\h hhmmss, \\:filename: insert file, \\[filename]
                insert file and delete after, \\(filename) if exists insert
                and delete,\\\ is \\, \\rm delete beacon file
                file may be modified any time eg. by telemetry program
 -c <ip>:<port> send text monitor udp frame with cr lf
 -D             output decoded Data to stdout
 -d <call>      digipeater enable (and dupe filter) call
 -d -           dupe filter without data modification
 -e             echo last (filtert) output
 -f <filterparm>  'p<x>,<x>...' pass UI frames with first char (-f p58,110)
                  'd<x>,<x>...' pass UI frames with not first char (-f d32,65-79)
                  Messages to itself are treated as Telemetry  (-f d84)
 -h             this
 -k <deg>/<deg>/<km> distance filter, center/radius -k 48.2/13.5/100
                -k 0/0/20000 remove all (not user msg) with no position data
 -L <ip>:<port>:<netname>   read monitor rflink header with netname
 -l <ip>:<port> send raw axudp frame and pass thru axudp2 header
 -M <ip>:<port> read text monitor udp frame
                ip=255.255.255.255:0 read text monitor from stdin
                ip=255.255.255.255:1 read text monitor from stdin and terminate
 -m <ip>:<port> send text monitor udp frame 0 terminated
 -p <n>,<...>   -p 7,8 igate friendly digi relaying all direct heared
                -p 5,6,7,8,9 first hop digi, -p 3,4 (noisy) last hop digi
                -p 0,1,3,4,5,6,7,8,9,14,16 original, noisy, path loosing ...
                0..2 limit ssid-routing to (bit0 + 2*bit1 + 4*bit2)
                dest-3: dest-2,digicall*, dest-3,call*: dest-2,call,digicall*
                3 allow repeatet before (mostly with wrong path trace)
                4 no uplink check for 'looks like direct heared'
                  (noisy, wrong path trace possible)
                5 resend TRACEn-(N-1), 6 resend WIDEn-(N-1)
                  so frames may be relayed again by loss of downlink trace
                7 append remaining digi path after via digicall
                8 append remaining digi path after RELAY/GATE/TRACE
                9 append remaining digi path after WIDE
                  so frames may be relayed again by loss of downlink trace
                10, 11, 12, 13 switch off via digicall, RELAY, TRACE, WIDE
                14 insert not digicall on direct heared before WIDEn-N,
                   as others do, your digi is hidden, and path is shown wrong
                15 convert destination ssid routing to WIDEn-n
                16 send n-0 without repeated flag
                17 remove all WIDE from downlink path
                18 enable via GATE (use as gate: disable via all other)
                19 allow ECHO as alias to RELAY
 -P <s>         piggyback time sending beacon earlier if sent anything now
 -R <ip>:<port> read raw axudp frame, 0 ip read from all (-R 0.0.0.0:2000)
 -r <ip>:<port> send raw axudp frame
 -S             Satgate, filter out uplink (has via with no h-bit)
 -s             pass not-UI-frames too (all PR-Frames, SABM, RR..)
                (raw axudp only) and axudp2 modem to layer2 message frames
 -t <s>,<s>     dupe filter time in seconds (all types, user messages)
                -t 1740,28 29min not same beacon, 28s for retrying user message)
 -u <call>:<file> global option, receive & ack usermessages to call store in file
                repeat -u for more Calls to same or different File
 -v             show frames and analytics on stdout
 -X             same as -x but pass only frames with this calls
 -x <call>{,<call>} delete frames with call in a address field, -x TCPIP,N?CALL*
udpbox -v -M 0.0.0.0:9200 -d MYCALL-10 -p 0,1,7 -t 1800,28 -r 192.168.1.24:9400

Pakettypen für frametype filter -f

Es folgt eine Übersicht aller möglichen APRS Pakettypen (frametypes) aus der Originaldatei der APRS Protokollbeschreibung aprs101.pdf. Der Pakettyp gibt die Art und den Inhalt des Pakets an.

dec = Dezimalwert des Pakettyps (anzugeben im -p Parameter) ascii = ASCII Wert des Parameters (sichtbar als erstes Zeichen im Datenteil des APRS Pakets) pos = enthält Positionskoordinaten ja (+) oder nein (-) ? = Unterschiedlich bzw. unbekannt digi = ???

dec ascii pos digi
28  0x1c   +   + Current Mic-E Data (Rev 0 beta)
29  0x1d   +   + Old Mic-E Data (Rev 0 beta)
33     !   +   + Position without timestamp (no APRS messaging), or Ultimeter 2000 WX Station
34     "         [Unused]
35     #   ?   + Peet Bros U-II Weather Station
36     $   +   + Raw GPS data or Ultimeter 2000 
37     %   ?   + Agrelo DFJr / MicroFinder
38     &   ?   + [Reserved   Map Feature]
39     '   +   + Old Mic-E Data (but Current data for TM-D700)
40     (         [Unused]
41     )   +   + Item
42     *   ?   + Peet Bros U-II Weather Station
43     +         [Reserved   Shelter data with time]
44     ,       - Invalid data or test data
45     -         [Unused]
46     .   ?   + [Reserved   Space weather]
47     /   +   + Position with timestamp (no APRS messaging)
48-57  0-9     - [Do not use]
58     :   -   + Message
59     ;   +   + Object
60     <   -   + Station Capabilities
61     =   +   + Position without timestamp (with APRS messaging)
62     >   -   - Status
63     ?   -   + Query
64     @   +   + Position with timestamp (with APRS messaging)
65-83  A-S     - [Do not use]
84     T   -   - Telemetry data
85-90  U-Z     - [Do not use]
91     [   +   + Maidenhead grid locator beacon (obsolete)
92     \         [Unused]
93     ]         [Unused]
94     ^         [Unused]
95     _   -   - Weather Report (without position)
96     `   +   + Current Mic-E Data (not used in TM-D700)
97-122 a-z     - [Do not use]
123    {   ?   + User-Defined APRS packet format
124    |       - [Do not use   TNC stream switch character]
125    }  +-   - Third-party traffic
126    ~       - [Do not use   TNC stream switch character]



Digipeating Optionen -p

-p <n>,<...>   -p 7,8 igate friendly digi relaying all direct heared
                -p 5,6,7,8,9 first hop digi, -p 3,4 (noisy) last hop digi
                -p 0,1,3,4,5,6,7,8,9,14,16 original, noisy, path loosing ...
                0..2 limit ssid-routing to (bit0 + 2*bit1 + 4*bit2)
                dest-3: dest-2,digicall*, dest-3,call*: dest-2,call,digicall*
                3 allow repeatet before (mostly with wrong path trace)
                4 no uplink check for 'looks like direct heared'
                  (noisy, wrong path trace possible)
                5 resend TRACEn-(N-1), 6 resend WIDEn-(N-1)
                  so frames may be relayed again by loss of downlink trace
                7 append remaining digi path after via digicall
                8 append remaining digi path after RELAY/GATE/TRACE
                9 append remaining digi path after WIDE
                  so frames may be relayed again by loss of downlink trace
                10, 11, 12, 13 switch off via digicall, RELAY, TRACE, WIDE
                14 insert not digicall on direct heared before WIDEn-N,
                   as others do, your digi is hidden, and path is shown wrong
                15 convert destination ssid routing to WIDEn-n
                16 send n-0 without repeated flag
                17 remove all WIDE from downlink path
                18 enable via GATE (use as gate: disable via all other)
                19 allow ECHO as alias to RELAY

Weiterführende Links


Ausführliche Beschreibung der Parameter

Parameter Beschreibung
a <Pfad> APRS Pfad für ACK Pakete zu APRS-Nachrichten, z.B. WIDE2-2, oder - für keinen Pfad
b :<Datei> Aktiviert eine zu sendende APRS-Bake alle s Sekunden welche aus der einer Datei <Datei> gelesen wird. Ein Pfad kann angegeben werden, z.B. /home/pi/dxlAPRS/aprs/digibeacon.txt. Jede Zeile in der Datei enthält Informationen im folgenden Format: MYCALL>TOCALL:APRS-Daten
Mehr Informationen dazu auf der Seite digibeacon.txt.
c <ip>:<port> Beispiel
D Beispiel
d <call> Aktiviere Digipeater mit dem Rufzeichen CALL. Dupefilter wird ebenfalls aktiviert (Filtern identischer Baken).
d - Beispiel
e ??? Zeigt die zuletzt gefilterten Pakete
f <filterparm> Pakettyp filter. Vorangesetztes p lässt die genannten Pakettypen durch ("pass") und filtert die übrigen. Vorangesetztes d lässt alle Pakettypen zu, außer die hier angegebenen.
Beispiele: -f p58,110 oder -f d32,65-79
h Hilfetext
k <Grad>/<Grad>/<km> Radiusfilter in km um die angegebene Koordinate (in Dezimalgrad)
Beispiel: -k 48.2/13.5/100
-k 0/0/20000 Filtert alle Pakete ohne Position, mit Ausnahme von APRS-Nachrichten.
L <ip>:<port>:<netname> Beispiel
l <ip>:<port> Beispiel
M <ip>:<port> Beispiel
m <ip>:<port> Beispiel
p <n>,<...> Die Digipeating Optionen geben an unter welchen Umständen empfangene Pakete digipeatet werden. Siehe Abschnitt "Digipeating Optionen".
P Beispiel
R <ip>:<port> Beispiel
r <ip>:<port> Beispiel
S Beispiel
s Lass alle nicht-IU-Frames durch (z.B. alle Packet Radio Pakete, SABM, RR usw.). ??? Nur reines AXUDP Format und AXUDP2 Modem zu Layer2 Nachrichtenpakete. ?????
t , Dupefilter in s Sekunden. Die erste Angabe bezieht sich auf alle Pakettypen, die zweite bezieht sich auf APRS-Nachrichten.
Beispiel: -t 1740,28 lässt die gleiche Bake nur einmal alle 29 Minuten durch, bei APRS-Nachrichten beträgt die Zeit mindestens 28 Sekunden bis zur Wiederholung. Achtung! Das hier eingestellte Intervall kann auch eigene identische Baken aus der digibeacon.txt filtern. Die Intervalle müssen aufeinander abgestimmt werden.
u <call>:<file> Beispiel
v Zeige Informationen in der Bildschirmausgabe.
X Lasse nur Pakete durch, welche die genannten Rufzeichen enthalten, egal an welcher Stelle (TO-Call, Via-Call usw.)
x <call>{,<call>} Filtere alle Pakete, welche die genannten Rufzeichen enthalten, egal an welcher Stelle (TO-Call, Via-Call usw.).

Konfigurationsbeispiele

udpbox -v -M 0.0.0.0:9200 -d MYCALL-10 -p 0,1,7 -t 1800,28 -r 192.168.1.24:9400