pub fn create_udp_trace(
src: &Address,
dst: &Address,
sport: u16,
dport: u16,
identifier: u16,
desired_checksum: u16,
id: &TraceDnsId<'_>,
) -> Vec<u8> ⓘExpand description
Creates a UDP (Paris) traceroute probe packet with a DNS payload
When the probe reaches its destination DNS server, the server replies to the DNS query, resulting in the traceroute being terminated (destination reached).
Encoding scheme:
- IPv4 IP identification (16b) / IPv6 flow label (16b of 20b):
(worker_hi_2 << 14) | timestamp_14b - UDP checksum (16b):
(ttl << 8) | worker_lo_8
§Arguments
src/dst- source / destination addresssport/dport- configured ports (constant across probes for Paris)identifier- IP identification / flow label (worker_hi + timestamp)desired_checksum- value forced into the UDP checksum (ttl + worker_lo)id- probe identity encoded in the QNAME (worker, measurement, send time, TTL)