TRACEMCAST(1)
π NAME π
okay bestie, welcome to the tracemcast(1) page β it's filed under User Commands, and it's literally all about how to multicast captured packets on an interface. That's the one-line vibe, but trust me, this little tool is a packet-sharing icon. π
β¨
β¨ SYNOPSIS β¨
tracemcast [ -m <monitor identifier> ] [ -f <filterstring> ] [ -g
<multicast group address> ] [ -p <port for beaconing group> ] [ -s
<source address> ] [ -t <number of threads> ] [ -M <mtu> ] inputuri
π¦ DESCRIPTION π¦
okay so tracemcast reads packets from a single live packet source (like an interface or a hardware capture card), and then it emits those packets to a multicast group that interested clients can join to receive an independent feed of the captured packets. it's giving packet democracy π«Ά.
This is iconic because it lets you share a capture source that would normally only allow one program to read from it at a time. No cap, that's a serious glow-up for your capture setup. π₯
The multicasting protocol is the nDAG protocol, and libtrace supports it as an input format, so libtrace programs can natively receive packets from a tracemcast group without any additional modifications. periodt β¨
π the flags, one by one π
-m <monitor identifier>β set a unique identifier that will be included in thenDAGheader. This is used by the recipient to tell which multicast sender emitted the packet. iykyk.-f <filterstring>β only emit packets that match this BPF filter expression. Filtered and fabulous, bestie. π-g <address>β emit packets to this multicast group address (e.g.224.0.0.1). group chat, but make it packets.-p <port>β sendnDAGbeacon messages to this port number. Beacon vibes β¨.-s <address>β use the interface that owns this IP address to multicast packets. Pick the interface by its IP, main character interface energy.-t <threads>β sets the number of threads to use for capturing and multicasting packets. Each thread will produce a separate multicast stream on a unique port. multithreaded baddie behavior π₯.-M <bytes>β do not create anynDAGmulticast messages larger than this number of bytes. Don't forget to allow for additional encapsulation (e.g. Ethernet, IP, UDP) when determining this value. important caveat, bestie β account for the extra wrapping or your math will be off π.
π LINKS π
More details about tracemcast (and libtrace) can be found at https://github.com/LibtraceTeam/libtrace/wiki. go read, it's cute.
π SEE ALSO π
libtrace(3)tracesplit(1)tracesplit_dir(1)tracefilter(1)traceconvert(1)tracereport(1)tracertstats(1)tracestats(1)tracepktdump(1)traceanon(1)tracesummary(1)tracereplay(1)tracediff(1)traceends(1)tracetopends(1)tracemerge(1)traceucast(1)
π AUTHORS π
Shane Alcock <salcock@waikato.ac.nz> β the author, the icon, the legend. π«Ά
and that's the page, bestie! this was tracemcast (libtrace) from Feb 2020, signing off with a cute little footer moment instead of the boring footer line. π
β¨
π¦ where this page comes from
- nixos 26.05: libtrace 4.0.31-1
- nixpkgs unstable: libtrace 4.0.34-1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms