Mtrace can be started on any router on the network.
SLX# mtrace source 10.1.1.2 destination 40.1.1.1 group 225.0.0.1 2020/01/17-06:48:37.451759 MTRACE.EVT: fwd code changed from MTRACE_NO_ERR to 2020/01/17-06:48:37.451828 MTRACE_NO_ERRSending mtrace query from src 10.1.1.2 to dest 40.1.1.1 through group 225.0.0.1 Collecting Statistics, waiting for 5 seconds..... Type Control-c to abort 0 30.1.1.1 NONE THRES 1 MTRACE_NO_ERR 1 15.1.1.2 NONE THRES 1 MTRACE_NO_ERR 2 10.1.1.1 NONE THRES 1 MTRACE_REACHED_RP
SRC-(10.1.1.2)-----------(10.1.1.1)--R1(FHR)--(15.1.1.1)----------(15.1.1.2)--R2--(30.1.1.2)---------(30.1.1.1)--R3(LHR)--(40.1.1.1)---------(40.1.1.2)--HOST
In this example the destination IP is 40.1.1.1, the source IP is 10.1.1.2, and the group IP is 225.0.0.1. The mtrace query is sent from R3 to R2. The initial header is not modified by any of the routers. R2 adds a response block based on the (S, G) or the (*, G) entry, adds its incoming interface, outgoing interface, and other information, and sends it to its upstream neighbor. The process continues until the query reaches the First Hop Router (FHR), which is R1. R1 then determines that it is the FHR, completes the response block, and sends the response back to R3. R3 reads the information from the packet and prints it out.