Skip to content

Stream virtual network packet captures from the node

Request

Opens a streaming session that outputs VPN packet details in a tcpdump-like format. Filter by network, protocol, peer, host, port, TCP flags, or session ID. The session stays open until closed by the client.

Use ?wait=1 to buffer output until the session ends.


Requires nodes::service:vpn-dump or nodes::remote-execute permission.

Security
JWTAuthorizer
Path
nodeIDstringrequired

Node ID

Query
waitinteger

Pass 1 to block until the node responds and return its output.

Value:1
Bodyapplication/json
networkstring

Virtual network name to capture. Use any or omit for all networks.

protocolstring

Protocol filter

Enum:"icmp""tcp""udp""any"
peerstring

Remote peer name filter

hoststring

Source or destination IP filter

Example:"10.0.0.1"
portstring

Port filter. Supports single port (443), range (1024-2048), or operator prefix (lt:1024, gt:1024, ne:443).

tcpflagsstring

TCP flag filter. Combine flag letters: S (SYN), P (PSH), U (URG), F (FIN), R (RST), . (ACK). Use any to match all.

Example:"S"
curl -i -X POST \
  'https://apidocs.trustgrid.io/_mock/node/{nodeID}/trigger/vpn-dump?wait=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "network": "string",
    "protocol": "icmp",
    "peer": "string",
    "host": "10.0.0.1",
    "port": "string",
    "tcpflags": "S"
  }'

Responses

OK

Bodyapplication/json
boolean
Response
true