- Go 1.23.2
- Root privileges (due to the need for raw socket access)
-config: Required — Path to the global configuration file (e.g., measurement_http.yml).-target: Required — Path to the target configuration file (e.g., targets.jsonl).-resultPath: Required — Path to the result file (e.g., result.jsonl).-rounds: optional — Send each probe N times.-concurrency: optional — Number of concurrent measurements.
To build the program, run the following command in the project directory:
go build -o cendpi cmd/app/main.goThis will create an executable called cendpi.
sudo iptables -A OUTPUT -p tcp --tcp-flags RST RST -j DROPsudo ethtool -K <interface> gro off gso off tso offTo run the program on your host machine (with root privileges):
sudo ./cendpi -config measurement_https.yml -target targets.jsonl -resultPath result.jsonl -rounds 3 -concurrency 1000