Permalink
Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
40 lines (37 sloc) 1.87 KB
syntax = "proto2";
package cloudprober.probes.ping;
message ProbeConf {
// Set the source address to send packets from, either by providing an address
// or a network interface.
oneof source {
string source_ip = 3;
string source_interface = 4;
}
// Packets per probe
optional int32 packets_per_probe = 6 [default = 2];
// How long to wait between two packets to the same target
optional int32 packets_interval_msec = 7 [default = 25];
// Export stats after these many probes
optional int32 stats_export_interval = 8 [default = 5]; // =10s
// Resolve targets after these many probes
optional int32 resolve_targets_interval = 9 [default = 5]; // =10s
// Ping payload size in bytes. It cannot be smaller than 8, number of bytes
// required for the nanoseconds timestamp.
optional int32 payload_size = 10 [default = 56];
// IP protocol version
optional int32 ip_version = 11 [default = 4];
// Use datagram socket for ICMP.
// This option enables unprivileged pings (that is, you don't require root
// privilege to send ICMP packets). Note that most of the Linux distributions
// don't allow unprivileged pings by default. To enable unprivileged pings on
// some Linux distributions, you may need to run the following command:
// sudo sysctl -w net.ipv4.ping_group_range="0 <large valid group id>"
// net.ipv4.ping_group_range system setting takes two integers that specify
// the group id range that is allowed to execute the unprivileged pings. Note
// that the same setting (with ipv4 in the path) applies to IPv6 as well.
optional bool use_datagram_socket = 12 [default = true];
// Disable integrity checks. To detect data courruption in the network, we
// craft the outgoing ICMP packet payload in a certain format and verify that
// the reply payload matches the same format.
optional bool disable_integrity_check = 13 [default = false];
}