Skip to main content

dns_a_trace_body

Function dns_a_trace_body 

Source
pub(crate) fn dns_a_trace_body(
    src: &Address,
    dst: &Address,
    sport: u16,
    id: &TraceDnsId<'_>,
) -> Vec<u8> 
Expand description

Build a DNS A-query message (header + question) for a UDP (Paris) traceroute probe.

The QNAME encodes the probe identity so that the destination DNS server’s reply can be matched to a trace session and terminate it:

{tx_micros}.{src}.{dst}.{worker_id}.{sport}.{probe_id}.{ttl}.{qname}

where tx_micros is the full microsecond send time (so the destination-hop RTT is a plain epoch delta, matching the ICMP/discovery convention).