UDP Probe Configuration in Proberix
This article provides a comprehensive guide to setting up and configuring UDP probes in Proberix, allowing you to monitor services that rely on the User Datagram Protocol (UDP), such as DNS servers, syslog listeners, or custom services.
Required Configuration
When creating a UDP probe, the following fields are required:
Host/IP:
The IP address or hostname of the target service. Similar to TCP probes, local network addresses (e.g., 127.0.0.1
, 192.168.x.x
, 10.x.x.x
) are not allowed. Proberix monitors only publicly accessible services.
Port:
The destination port of the target service. This must match the port your service is listening on (e.g., 53 for DNS, 514 for syslog).
Optional Configuration
Payload:
An optional string sent to the target immediately after the UDP probe is initiated. This is useful for triggering responses from services such as DNS, syslog, or custom UDP-based protocols.
Payload Encoding:
Specifies how the payload should be encoded before transmission. This is important when interacting with protocols that expect binary or structured data.
Supported values:
Plain
(UTF-8 text)Hex
Base64
Line Ending (Visible only when Plain Text is selected):
Defines how line breaks are handled in the payload. Some UDP-based services require specific terminators.
LF (\n)
— Line Feed onlyCRLF (\r\n)
— Carriage Return + Line Feed
The selected line ending will be applied to any newlines in the payload input when the data is transmitted.
Response Validation:
Define patterns that must appear in the response from the UDP service. Useful for verifying that a DNS reply, syslog response, or custom UDP protocol returns expected content.
For full details, see the Response Validation documentation.
Enable Change Detection:
When enabled, the probe tracks changes in the response body over time. This is useful for detecting unexpected behavior or unauthorized content changes in services that return dynamic data.
For details on how change tracking works, refer to Change Detection Documentation.
Monitoring Process
The UDP probe execution process includes:
- Opening a UDP connection to the target host and port.
- Sending an optional payload to the remote service.
- Waiting for a response within a fixed 5-second timeout.
- If response validation is enabled, matching the response against the defined patterns.
- Recording the result:
"ok"
if a valid response was received and matched."mismatch"
if the response was received but didn’t match the expected pattern."unreachable"
or"timeout"
in case of network failure or no response.
The probe also records the response time in milliseconds and includes the response body (base64-encoded) in the result.
Best Practices
- Make sure the service you're targeting is publicly reachable and not behind a firewall unless the Proberix IPs are allowlisted.
- When using payloads or expecting a response, confirm the remote service handles UDP interactions as expected.
- Enable response validation for protocols where structure or content matters, such as DNS or custom control channels.
- Keep timeout reasonable to avoid long waits for unreachable services—
3s
to5s
is a good starting point.
Advanced Considerations
Unlike TCP, UDP is connectionless and does not guarantee delivery or ordering of packets. Proberix’s UDP probes are designed for simple health checks—not full protocol emulation. The focus is on whether a service accepts a payload and optionally responds within a timeout. This makes UDP probes ideal for DNS servers, SNMP agents, game servers, or any service that responds to lightweight UDP messages.