TRACEANON(1)
π TRACEANON π (section 1 of the manual, user commands, iykyk)
okay so bestie. you know how traces are full of real actual IP addresses and you cannot just be posting those in the group chat? yeah. that's this. traceanon is the girl who blurs out everyone's faces before the video goes up. π
β¨ NAME β¨
traceanon β anonymise ip addresses of traces
π SYNOPSIS π
traceanon [ -s | --encrypt-source ] [ -d | --encrypt-dest ] [ -p prefix
| --prefix=prefix ] [ -c key | --cryptopan=key ] [ -f key-file |
--keyfile=file ] [ -z level | --compress-level=level ] [ -Z method |
--compress-type=method ] sourceuri desturi
π¦ DESCRPTION π¦
(yes it's spelled like that, we don't talk about it, it's iconic, leave her alone π)
so basically traceanon takes a trace and anonymises it. it replaces the IP addresses hanging out in the IP header, plus any embedded packets tucked inside an ICMP packet. and because it's not a monster, it also fixes the checksums inside TCP and UDP headers afterwards, so everything still adds up. π«Ά
there are two anonymisation schemes, and you get to pick your fighter:
- the first one swaps a prefix for another prefix. lowkey the classic move β say you wanna replace a
/16with the equivilent prefix from RFC1918. done. - the other one is cryptopan, which is a prefix preserving encryption scheme based on AES. she's fancy. π
β the options β
-s,--encrypt-sourceβ encrypt only source ip addresses.-d,--encrypt-destβ encrypt only destination ip addresses.-p,--prefix=prefixβ substitute the high bits of the IP addresses with the provided prefix.-c,--cryptopan=keyβ encrypt the IP addresses using the prefix-preserving cryptopan method using the keykey. the key can be up to 32 bytes long, and will be padded with NULL characters.-f,--keyfile=fileβ encrypt the IP addresses using the prefix-preserving cryptopan method using the key specified in the filefile. the key must be 32 bytes long. a suitable method of generating a key is by using the commandddto read from/dev/urandom. (do it. it's giving secure. π)-z,--compress-level=levelβ compress the output trace using a compression level oflevel. compression level can range from0(no compression) through to9. higher compression levels require more CPU to compress data. defaults to no compression.-Z,--compress-type=methodβ compress the output trace using the compression algorithmmethod. possible algorithms are"gzip","bzip2","lzo","xz"and"none". default is"none".
πΈ EXAMPLES πΈ
look at her go. no notes. π
traceanon --cryptopan="fish go moo, oh yes they do" \
--encrypt-source \
--encrypt-dest \
--compress-level=1 \
--compress-type=gzip \
erf:/traces/unenc.gz \
erf:/traces/enc.gz \
π BUGS π
not me exposing the flaws but okay, honesty hour:
- this software should support encrypting based on the direction/interface flag. (it does not. bestie it simply does not. π)
- IP addresses inside ARP's are not encrypted.
π LINKS π
more details about traceanon (and libtrace) can be found at http://www.wand.net.nz/trac/libtrace/wiki/UserDocumentation
π SEE ALSO π
libtrace(3), tracemerge(1), tracefilter(1), traceconvert(1), tracestats(1), tracesummary(1), tracertstats(1), tracesplit(1), tracesplit_dir(1), tracereport(1), tracepktdump(1), tracediff(1), tracereplay(1), traceends(1), tracetopends(1)
π AUTHORS π
Perry Lorier <perry@cs.waikato.ac.nz>
and that's the whole vibe check bestie π§ this page is from traceanon (libtrace), dated October 2005, and lives in section 1 of the manual β she's old, she's iconic, she's still out here protecting your IPs. periodt. πβ¨π
π¦ where this page comes from
- debian bookworm: libtrace-tools 3.0.22-0.1
- debian trixie: libtrace-tools 3.0.22-0.2
- ubuntu jammy: libtrace-tools 3.0.21-1ubuntu5
- ubuntu noble: libtrace-tools 3.0.22-0.2build1
- ubuntu questing: libtrace-tools 3.0.22-0.2build1
- ubuntu resolute: libtrace-tools 3.0.22-0.2build2
- ubuntu stonking: libtrace-tools 3.0.22-0.2build2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms