Browse Source

chg: [doc] update the README for d4 forwarding

Jean-Louis Huynen 2 years ago
No known key found for this signature in database GPG Key ID: 64799157F4BD6B93
  1. 28


@ -19,21 +19,12 @@ For more information about the [D4 project](
Fetch d4-goclient code and dependencies
go get
go get
Use make to build binaries:
make arm5l # for raspberry pi / linux
make amd64l # for amd64 / linux
## Dependencies
- golang 1.10 (tested)
- go.uuid
- golang 1.13 (tested)
# Use
@ -47,13 +38,17 @@ Part of the client configuration can be stored in folder containing the followin
- key: your Pre-Shared-Key
- snaplen: default is 4096
- source: stdin
- source: stdin or d4server
- destination: stdout, [fe80::ffff:ffff:ffff:a6fb]:4443,
- type: D4 packat type, see [types](
- uuid: generated automiatically if empty
- type: D4 packet type, see [types](
- uuid: generated automatically if empty
- version: protocol version
- rootCA.crt: optional : CA certificate to check the server certificate
- metaheader.json: optional : a json file describing feed's meta-type [types](
If source is set to d4server, then one also 2 additional files:
- redis_queue: redis queue in the form analyzer:typeofqueue:queueuuid, for instance analyzer:3:d42967c1-f7ad-464e-bbc7-4464c653d7a6
- redis_d4: redis server location:port/database, for instance localhost:6385/2
## Flags
@ -68,6 +63,8 @@ Part of the client configuration can be stored in folder containing the followin
Keep Alive time human format, 0 to disable (default 30s)
-ct duration
Set timeout in human format
-rl duration
Rate limiter: time in human format before retry after EOF (default 200ms)
-rt duration
Time in human format before retry after connection failure, set to 0 to exit on failure (default 30s)
-v Set to True, true, TRUE, 1, or t to enable verbose output on stdout
@ -86,3 +83,8 @@ $IP being the monitoring computer ip
tcpdump not dst $IP and not src $IP -w - | ./d4-goclient -c conf.sample/ | socat - OPENSSL-CONNECT:$IP_SRV:$PORT,verify=0
## Forwarding data from a D4 server to another D4 server
Add two files to you configuration folder: `redis_d4` and `redis_queue`:
- `redis_d4` contains the location of the source d4's redis server database, for instance ``
- `redis_queue` contains the queue to forward to the other D4 server, for instance `analyzer:3:d42967c1-f7ad-464e-bbc7-4464c653d7a6`