hipercontracer(1)

โœจ NAME โœจ

okay bestie, welcome to the hipercontracer(1) manual page, you're gonna slay this ๐Ÿ’…

  • hipercontracer โ€” High-Performance Connectivity Tracer (HiPerConTracer)

๐ŸŽ€ SYNOPSIS ๐ŸŽ€

here's literally every way you can call this icon. copy these exactly, no cap, character for character ๐Ÿ‘‘

       hipercontracer [-P | --ping]
                      [-T | --traceroute] [-L level | --loglevel level]
                      [-Z on|off | --logcolor on|off]
                      [-O file | --logfile file]
                      [-q | --quiet] [-w | --verbose]
                      [-U user|uid | --user user|uid]
                      [-# identifier | --measurement-id identifier]
                      [-S address|โ€
                      hostname[,traffic_class[,...]] | --source address|โ€
                      hostname[,traffic_class[,...]]]
                      [-D address|hostname | --destination address|hostname]
                      [--sources-from-file file]
                      [--destinations-from-file file]
                      [-M ICMP|UDP | --iomodule ICMP|UDP]
                      [-I number_of_iterations | --iterations number_of_โ€
                      iterations]
                      [--tracerouteinterval milliseconds]
                      [--tracerouteintervaldeviation fraction]
                      [--tracerouteduration milliseconds]
                      [--tracerouterounds rounds]
                      [--tracerouteinitialmaxttl value]
                      [--traceroutefinalmaxttl value]
                      [--tracerouteincrementmaxttl value]
                      [--traceroutepacketsize bytes]
                      [--tracerouteudpsourceport port]
                      [--tracerouteudpdestinationport port]
                      [--pinginterval milliseconds]
                      [--pingintervaldeviation fraction]
                      [--pingexpiration milliseconds]
                      [--pingburst packets]
                      [--pingttl value]
                      [--pingpacketsize bytes]
                      [--pingudpsourceport port]
                      [--pingudpdestinationport port]
                      [-R directory | --resultsdirectory directory]
                      [-x seconds | --resultstransactionlength seconds]
                      [-C none|XZ|BZip2|GZip|ZLIB|โ€
                      ZSTD | --resultscompression none|XZ|BZip2|GZip|ZLIB|ZSTD]
                      [-F version | --resultsformat version]
                      [-z depth | --resultstimestampdepth depth]
       hipercontracer [--check]
       hipercontracer [-h | --help]
       hipercontracer [-v | --version]

๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

so like, <pink>hipercontracer</pink> is a Ping/Traceroute service, periodt. ๐Ÿ’– It performs regular Ping and Traceroute runs among sites, and it can export the results into results statements for import into a database. it's giving very much "network diagnostics but make it scheduled and database-ready" energy, and we're obsessed ๐Ÿซถ


๐Ÿ’… ARGUMENTS ๐Ÿ’…

okay bestie, here comes the whole menu โ€” every flag, every value, every default, nothing left out. buckle up ๐ŸŽ€

  • -P, --ping โ€” spins up the Ping service. that's it, that's the whole job โœจ
  • -T, --traceroute โ€” spins up the Traceroute service. iconic behavior honestly ๐Ÿ’…
  • -L level, --loglevel level โ€” sets the minimum logging level to whatever you hand it: 0=trace, 1=debug, 2=info, 3=warning, 4=error, 5=fatal. lower number = more yapping ๐Ÿ“ข
  • -Z on|off, --logcolor on|off โ€” turns ANSI color escape sequences on or off so your log output gets colored by level. cute but optional ๐ŸŒˆ
  • -O file, --logfile file โ€” names a file to append the log output to. heads up: once a file is set, no log output goes to the console at all. if you don't set one, everything goes to the console ๐Ÿ“
  • -q, --quiet โ€” shortcut that slams the minimum logging level to 3 (warning). shhh mode ๐Ÿคซ
  • -w, --verbose โ€” shortcut that drops the minimum logging level all the way to 0 (trace). tell me EVERYTHING ๐Ÿ˜ญ
  • -U user|uid, --user user|uid โ€” after startup, HiPerConTracer takes on the UID and GID of the user you name (by name or by GID). the output directory's ownership and the ownership of the results files it creates get set to match ๐Ÿ‘‘
  • -# identifier, --measurement-id identifier โ€” sets a unique measurement identifier for the run. every output file gets this identifier baked into its filename as #<ID>. super useful for a setup-wide unique vantage-point id. if you don't set one, files carry the process ID instead, as P<ID>. range: 0-2147483647. default: 0 (which means "use the process ID instead") ๐Ÿ”–
  • -S address|hostname[,traffic_class[,...]], --source address|hostname[,traffic_class[,...]] โ€” adds the given source address or hostname. the ANY address (0.0.0.0 or ::) is fair game if you just wanna use the default route. no traffic class given? then Best Effort (00) is what you get. otherwise the list of traffic classes you gave (in hexadecimal) is used. you can also name the traffic class by PHB name: BE, EF, AF11, AF12, AF13, AF21, AF22, AF23, AF31, AF32, AF33, AF41, AF42, AF43, CS1, CS2, CS3, CS4, CS5, CS6, CS7 โ€” and in that case the matching traffic class is used with ECN bits set to 0. give a hostname and a DNS resolution happens, with all returned addresses added. and if you provide no source address at all, HiPerConTracer auto-adds 0.0.0.0 when there's an IPv4 destination, and :: when there's an IPv6 destination ๐Ÿฆ‹
โš ๏ธ Note: use lower-case hexadecimal letters so you don't get tangled up with PHB names (like be for 0xbe instead of the BE PHB)! iykyk ๐Ÿ’€
  • -D address|hostname, --destination address|hostname โ€” adds the given destination address or hostname. hostname means DNS resolution, and every returned address gets added ๐ŸŽฏ
  • --sources-from-file file โ€” reads sources from the given file. can be used multiple times to pull from multiple files ๐Ÿ“‚
  • --destinations-from-file file โ€” reads destinations from the given file. also repeatable, also multiple files ๐Ÿ—‚๏ธ
  • -M ICMP|UDP, --iomodule ICMP|UDP โ€” adds an I/O module: ICMP or UDP. yes you can pass it multiple times with different modules ๐Ÿงš
  • -I number_of_iterations, --iterations number_of_iterations โ€” caps the number of measurement iterations (one iteration = measuring all source/destination pairs) at the number you give. the default 0 lets HiPerConTracer run forever, continuously, no cap, no chill ๐Ÿ˜Œ
  • --tracerouteinterval milliseconds โ€” sets the Traceroute interval, i.e. how long each full round of destinations takes โฑ๏ธ
  • --tracerouteintervaldeviation fraction โ€” randomly deviates the Traceroute interval by the given fraction (as 0.0 to 1.0), so it picks from [interval - fraction * interval, interval + fraction * interval], all to dodge synchronisation effects. default is 0.1 (10%) ๐ŸŽฒ
  • --tracerouteduration milliseconds โ€” sets the Traceroute duration: the timeout for each destination โณ
  • --tracerouterounds rounds โ€” for each Traceroute measurement, run that many rounds simultaneously. default is 1 round. range: 1-64. every TTL test within a round shares the same ICMP checksum value ("Oslo Traceroute") so we can survive load balancing on the Internet. different rounds get different checksums โ€” meaning different rounds may take different paths through the network. chaos, but make it scientific ๐Ÿ”ฅ
  • --tracerouteinitialmaxttl value โ€” start with this maximum TTL. default is 6 ๐Ÿš€
  • --traceroutefinalmaxttl value โ€” finish with this maximum TTL (used when the destination still isn't reached at the current TTL setting). default is 36 ๐Ÿ
  • --tracerouteincrementmaxttl value โ€” bump the maximum TTL up by this much (again, when the destination isn't reached at the current TTL setting). default is 6 ๐Ÿ“ˆ
  • --traceroutepacketsize bytes โ€” sets the Traceroute packet size, which is IP header (20 for IPv4 / 40 for IPv6) + ICMP header (8) / UDP header (8) + HiPerConTracer header (16) + payload, in bytes. the packet actually sent always covers at least the headers for IPv4/IPv6, ICMP, and HiPerConTracer. maximum packet size is 65535 ๐Ÿ“ฆ
  • --tracerouteudpsourceport port โ€” sets the Traceroute source port for the UDP module (default: 0, meaning automatic allocation).
๐Ÿ›‘ Note: if you're using a fixed UDP port for Traceroute, you must use different UDP source ports for any other services!
  • --tracerouteudpdestinationport port โ€” sets the Traceroute destination port for the UDP module (default: 7, for Echo) ๐Ÿ“ฎ
  • --pinginterval milliseconds โ€” sets the Ping interval (the time for each full round of destinations). default is 5000 ms โฒ๏ธ
  • --pingintervaldeviation fraction โ€” randomly deviates the Ping interval by the given fraction (as 0.0 to 1.0), choosing out of [interval - fraction * interval, interval + fraction * interval] to avoid synchronisation effects. default is 0.1 (10%) ๐ŸŽฐ
  • --pingexpiration milliseconds โ€” sets the Ping duration: the timeout for each destination. default is 10000 ms ๐Ÿ•
  • --pingburst packets โ€” for each Ping measurement, fire a burst of that many packets. default is 1 packet. range: 1-1024 ๐Ÿ’ฅ
  • --pingttl value โ€” sets the Ping TTL value. default is 64. range: 1-255 ๐Ÿ›ฃ๏ธ
  • --pingpacketsize bytes โ€” sets the Ping packet size, which is IP header (20 for IPv4 / 40 for IPv6) + ICMP header (8) / UDP header (8) + HiPerConTracer header (16) + payload, in bytes. the packet actually sent always covers at least the headers for IPv4/IPv6, the transport protocol, and HiPerConTracer. default is 0 (use the minimum possible value). range: 0-65535 ๐Ÿ“
  • --pingudpsourceport port โ€” sets the Ping source port for the UDP module (default: 0, for automatic allocation).
๐Ÿ›‘ Note: same deal as before โ€” if you use a fixed UDP port for Ping, any other services need different UDP source ports!
  • --pingudpdestinationport port โ€” sets the Ping destination port for the UDP module (default: 7, for Echo) ๐Ÿ“ฌ
  • -R directory, --resultsdirectory directory โ€” sets the directory where the results files live. if you don't specify it, the results get stored... well, that's the deal ๐Ÿ 
  • -x seconds, --resultstransactionlength seconds โ€” after the given number of seconds, crack open a brand new results file ๐Ÿ”„
  • -C none|XZ|BZip2|GZip|ZLIB|ZSTD, --resultscompression none|XZ|BZip2|GZip|ZLIB|ZSTD โ€” sets the compression for the output files. default: XZ ๐Ÿ—œ๏ธ
  • -F version, --resultsformat version โ€” sets the results file format version. default: 2 (the current version). range (currently): 1-2.
๐Ÿ‘€ Note: a future version of HiPerConTracer may bump this default setting up!
  • -z depth, --resultstimestampdepth depth โ€” builds a timestamp-based directory hierarchy for the results, of the given depth (default: 0). 0 = none, 1 = year, 2 = year/month, 3 = year/month/day, 4 = year/month/day/hour:00, 5 = year/month/day/hour:00/hour:minute ๐Ÿ—“๏ธ
  • --check โ€” prints build environment info for debugging ๐Ÿ”
  • -h, --help โ€” prints command help. the classic ๐Ÿซถ
  • -v, --version โ€” prints the program version ๐Ÿท๏ธ

๐Ÿ“„ OUTPUT FORMAT ๐Ÿ“„

the output file is a text file (possibly compressed, see above). the format depends on the measurement type, and it goes a little something like this:

๐Ÿฉท Format identifier in first line ๐Ÿฉท

#? HPCT format version program
  • format: the format of the output data (Ping, Traceroute, etc.) ๐Ÿงพ
  • version: the version of the output data format (decimal) ๐Ÿ”ข
  • program: the identifier for the program generating the output, e.g. HiPerConTracer/2.1.12 ๐Ÿ–ฅ๏ธ

๐Ÿฉต Ping (version 2, current) ๐Ÿฉต

each Ping entry is a #P<m> line, where m=i for ICMP and m=u for UDP (matching the underlying I/O module) ๐Ÿ’ซ

#P<m> measurementID sourceIP destinationIP timestamp burstseq traffic_class packetsize response_size checksum sourcePort destinationPort status timesource delay_app_send delay_queuing delay_app_receive rtt_app rtt_sw rtt_hw
  • measurementID: the measurement identifier ๐Ÿ”–
  • sourceIP: the source IP address ๐Ÿ“
  • destinationIP: the destination IP address ๐ŸŽฏ
  • sendTimestamp: the send timestamp (nanoseconds since the UTC epoch, hexadecimal) โฑ๏ธ
  • burstseq: the sequence number within a burst (decimal), numbered from 0 ๐Ÿ”ข
  • traffic_class: the IP Traffic Class / Type of Service value of the sent packets (hexadecimal) ๐Ÿšฆ
  • packet_size: the sent packet size (decimal, in bytes), including the IPv4/IPv6 header, the transport header, and the HiPerConTracer header ๐Ÿ“ฆ
  • response_size: the response packet size (decimal, in bytes), including the IPv4/IPv6 header, the transport header, and the HiPerConTracer header ๐Ÿ“ฌ
  • checksum: the checksum of the ICMP Echo Request packets (hexadecimal); 0x0000 for other protocols, 0xffff for unknown ๐Ÿงฎ
  • sourcePort: the source port, 0 for ICMP (decimal) ๐Ÿ”Œ
  • destinationPort โ€” the destination port, babes ๐Ÿ’… it's 0 for ICMP, and it's written in decimal.
  • status โ€” the status code, decimal. Here's the whole mood board fr:
    • 1 = ICMP response: Time Exceeded โฐ
    • 100 = ICMP response: Unreachable scope
    • 101 = ICMP response: Unreachable network
    • 102 = ICMP response: Unreachable host
    • 103 = ICMP response: Unreachable protocol
    • 104 = ICMP response: Unreachable port
    • 105 = ICMP response: Unreachable, prohibited (firewall) ๐Ÿšซ
    • 110 = ICMP response: Unreachable, unknown reason
    • 200 = Timeout (no response from a router) ๐Ÿ’€
    • 210 = sendto() call failed (generic error)
    • 211 = sendto() error: tried to send to broadcast address (EACCES)
    • 212 = sendto() error: network unreachable (ENETUNREACH)
    • 213 = sendto() error: host unreachable (EHOSTUNREACH)
    • 214 = sendto() error: address not available (EADDRNOTAVAIL)
    • 215 = sendto() error: invalid message size (EMSGSIZE)
    • 216 = sendto() error: not enough buffer space (ENOBUFS)
    • 255 = Success (destination has responded) โœจ

Status values from 100 to 199 denote unreachability, as reported by an ICMP error from a router, bestie. The rtt_* fields contain the response time of the corresponding router. Status values from 200 to 254 have the destination IP in their destinationIP field. However, there was no response from a router, so the rtt_* fields will be the configured timeout value (on timeout) or the send trial time (on send errors)! ๐Ÿ˜ญ

  • timesource โ€” where the timing tea actually came from, hexadecimal, formatted as: AAQQSSHH ๐Ÿซถ
    • AA: Application
    • QQ: Queuing (queuing packet until sending it by driver, in software)
    • SS: Software (sending request by driver until receiving response by driver, in software; decimal, in nanoseconds; -1 if not available)
    • HW: Hardware (sending request by NIC until receiving response by NIC, in hardware; decimal, in nanoseconds; -1 if not available)

Each byte AA, QQ, SS, HH provides the receive time source (upper nibble) and send time source (lower nibble):

  • 0x0: Not available
  • 0x1: System clock
  • 0x2: SO_TIMESTAMPING socket option, microseconds granularity
  • 0x3: SO_TIMESTAMPINGNS socket option (or SO_TIMESTAMPING+SO_TS_CLOCK), nanoseconds granularity
  • 0x4: SIOCGSTAMP ioctl, microseconds granularity
  • 0x5: SIOCGSTAMPNS ioctl, nanoseconds granularity
  • 0x6: SO_TIMESTAMPING socket option, in software, nanoseconds granularity
  • 0xa: SO_TIMESTAMPING socket option, in hardware, nanoseconds granularity
  • delay_app_send โ€” the measured application send delay (nanoseconds, decimal; -1 if not available).
  • delay_queuing โ€” the measured kernel software queuing delay (nanoseconds, decimal; -1 if not available).
  • delay_app_receive โ€” the measured application receive delay (nanoseconds, decimal; -1 if not available).
  • rtt_app โ€” the measured application RTT (nanoseconds, decimal).
  • rtt_sw โ€” the measured kernel software RTT (nanoseconds, decimal; -1 if not available).
  • rtt_hw โ€” the measured kernel hardware RTT (nanoseconds, decimal; -1 if not available).

๐Ÿ•ฐ๏ธ Ping (version 1, SUPERSEDED!)

Okay so this is the old one, the ancestor, the lowkey vintage era ๐Ÿ™ˆ Every Ping entry is exactly one #P line. That's it, that's the whole vibe.

#P sourceIP destinationIP timestamp checksum status rtt [traffic_class [packet_size [timesource]]]
  • sourceIP โ€” source IP address.
  • destinationIP โ€” destination IP address.
  • timestamp โ€” timestamp (microseconds since the UTC epoch, hexadecimal).
  • checksum โ€” the checksum of the ICMP Echo Request packets (hexadecimal).
  • status โ€” status code (decimal).
  • rtt โ€” the measured RTT (microseconds, decimal).
  • traffic_class โ€” the outgoing IP Traffic Class/Type of Service value of the sent packets (hexadecimal). This entry has been added with HiPerConTracer 1.4.0! โœจ
  • packet_size โ€” the sent packet size (decimal, in bytes) including IPv4/IPv6 header, transport header and HiPerConTracer header. This entry has been added with HiPerConTracer 1.6.0!
  • timesource โ€” source of the timing information (hexadecimal) as: AA (same as for Ping, see above). This entry has been added with HiPerConTracer 2.0.0 development versions! ๐Ÿงš

๐ŸŒˆ Traceroute (version 2, current)

This is the one we actually stan, the current era, the main character ๐Ÿ’… Each Traceroute entry begins with a #Tm line, with m=i for ICMP and m=u for UDP (according to the underlying I/O module). Then it's followed with one TAB-started line per each hop, okay?

#T<m> measurementID sourceIP destinationIP timestamp round totalHops traffic_class packet_size checksum sourcePort destinationPort statusFlags pathHash
  • measurementID โ€” measurement identifier.
  • sourceIP โ€” source IP address.
  • destinationIP โ€” destination IP address.
  • timestamp โ€” timestamp (nanoseconds since the UTC epoch, hexadecimal) of the current run.
Note: this timestamp is only an identifier for the Traceroute run. All Traceroute rounds of the same run use the same timestamp here! The actual send timestamp of the request to each hop can be found in sendTimeStamp of the corresponding hop! ๐Ÿ”
  • round โ€” round number (decimal).
  • totalHops โ€” total hops (decimal).
  • traffic_class โ€” the IP Traffic Class/Type of Service value of the sent packets (hexadecimal).
  • packet_size โ€” the sent packet size (decimal, in bytes) including IPv4/IPv6 header, transport header and HiPerConTracer header.
  • checksum โ€” the checksum of the ICMP Echo Request packets (hexadecimal); 0x0000 for other protocols, 0xffff for unknown.
  • sourcePort โ€” source port, 0 for ICMP (decimal).
  • destinationPort โ€” destination port, 0 for ICMP (decimal).
  • statusFlags โ€” status flags (hexadecimal). See the status code for Ping above for the lower 8 bits. Additionally:
    • 0x100 = Route with * (at least one router did not respond)
    • 0x200 = Destination has responded โœจ
  • pathHash โ€” hash of the path (hexadecimal).

Then each hop line looks like this:

(TAB) sendTimeStamp hopNumber response_size status timesource delay_queuing delay_app_receive rtt_app rtt_app rtt_sw rtt_hw hopIP
  • sendTimeStamp โ€” timestamp (nanoseconds since the UTC epoch, hexadecimal) for the request to this hop.
  • hopNumber โ€” number of the hop.
  • response_size โ€” the response packet size (decimal, in bytes) including IPv4/IPv6 header, transport header and HiPerConTracer header.
  • status โ€” status code (decimal; the values are the same as for Ping, see above).
  • timesource โ€” source of the timing information (hexadecimal; the values are the same as for Ping, see above).
  • delay_app_send โ€” the measured application send delay (nanoseconds, decimal; -1 if not available).
  • delay_queuing โ€” the measured kernel software queuing delay (nanoseconds, decimal; -1 if not available).
  • delay_app_receive โ€” the measured application receive delay (nanoseconds, decimal; -1 if not available).
  • rtt_app โ€” the measured application RTT (nanoseconds, decimal).
  • rtt_sw โ€” the measured kernel software RTT (nanoseconds, decimal; -1 if not available).
  • rtt_hw โ€” the measured kernel hardware RTT (nanoseconds, decimal; -1 if not available).
  • hopIP โ€” hop IP address.

๐ŸŽ€ Traceroute (version 1, SUPERSEDED!)

Each Traceroute entry begins with a #T line. This is followed with one TAB-started line per each hop.

#T sourceIP destinationIP timestamp round checksum totalHops statusFlags pathHash [traffic_class [packet_size [timesource]]]
  • sourceIP โ€” the source IP address, bestie. who we are ๐Ÿ’…
  • destinationIP โ€” the destination IP address. who we're chasing ๐ŸŽฏ
  • timestamp โ€” timestamp of this run, in microseconds since the UTC epoch, written in hexadecimal. BIG note though: this timestamp is just an identifier for the Traceroute run โ€” every single Traceroute round of the same run uses the same timestamp here. no cap, same run = same stamp โœจ
  • round โ€” round number ๐Ÿ”
  • checksum โ€” the checksum of the ICMP Echo Request packets, in hexadecimal ๐Ÿงฎ
  • totalHops โ€” total hops, periodt ๐Ÿ›ฃ๏ธ
  • statusFlags โ€” status flags, in hexadecimal ๐Ÿšฉ
  • pathHash โ€” hash of the path, in hexadecimal ๐Ÿ”
  • traffic_class โ€” the IP Traffic Class / Type of Service value of the sent packets, in hexadecimal. this entry was added with HiPerConTracer 1.4.0! ๐Ÿ†•
  • packet_size โ€” the size of the packet that was sent, decimal, in bytes, and it includes the IPv4/IPv6 header, transport header and HiPerConTracer header. this entry was added with HiPerConTracer 1.6.0! ๐Ÿ“ฆ

and then, per hop, you get this line (yes, it really starts with a TAB, not a space, iykyk):

(TAB) hopNumber status rtt hopIP timesource
  • hopNumber โ€” number of the hop ๐Ÿ”ข
  • status โ€” status code, and heads up, it's in hexadecimal here(!); the values are the same as for Ping, see above โ˜๏ธ
  • rtt โ€” the measured RTT, microseconds, decimal โฑ๏ธ
  • hopIP โ€” hop IP address ๐Ÿ“
  • timesource โ€” the source of the timing information, in hexadecimal, as: AA (same as for Ping, see above). this entry was added with HiPerConTracer 2.0.0 development versions! ๐Ÿงš

๐Ÿ’ฅ EXIT STATUS ๐Ÿ’ฅ

the hipercontracer tool exits with 0 when it's slaying (success), and >0 if something went wrong. simple as that ๐Ÿซถ


๐ŸŒˆ EXAMPLES ๐ŸŒˆ

okay bestie, this is the part where we go absolutely feral with commands. every one of these is verbatim, so copy with care ๐ŸŽ€

hipercontracer -S 10.1.1.51 -D 10.1.1.6 -D 10.1.1.7 -D 10.1.1.8 -T --tracerouteinterval 10000 --tracerouteduration 1000 -v
hipercontracer --source 10.1.1.51 --destination 10.1.1.6 --destination 10.1.1.7 --destination 10.1.1.8 --traceroute --tracerouteinterval 10000 --tracerouteduration 1000
hipercontracer --source 172.16.0.127 --destination 8.8.8.8 --destination 193.99.144.80 --destination 132.252.181.87 --destination 10.254.254.254 --destination 91.189.93.5 --destination 128.112.139.90 --destination 4.31.198.44 --destination 136.186.1.10 --destination 101.4.112.170 --destination 77.36.144.2 --source 2a02:270:2014:40:92e2:baff:fe48:bde1 --destination 2400:cb00:2048:1::6814:155 --destination 2a02:2e0:3fe:1001:7777:772e:2:85 --destination 2a00:1450:400f:805::2004 --traceroute --ping --tracerouteduration 1000 --tracerouteinitialmaxttl 4 --traceroutefinalmaxttl 32 --tracerouteincrementmaxttl 4 --pinginterval 1000 --pingexpiration 7500 --pingttl 56 --resultsdirectory results --resultstimestampdepth 3
hipercontracer --source=0.0.0.0,00,AF11 --source=::,BE,EF,AF11 --destination=8.8.8.8 --destination=2606:4700:10::6814:155 --ping --traceroute --tracerouteduration=1000 --tracerouteinitialmaxttl=4 --traceroutefinalmaxttl=32 --tracerouteincrementmaxttl=4 --pinginterval=1000 --pingexpiration=7500 --pingttl=56 --resultsdirectory=/storage/โ€hpct-results --resultstransactionlength=20 --resultsโ€timestampdepth=4 --quiet
hipercontracer --user=hipercontracer --source=10.1.1.51 --destination=10.1.1.6 --destination=10.1.1.7 --destination=10.1.1.8 --traceroute --tracerouteinterval=10000 --tracerouteduration=1000
hipercontracer --user=hipercontracer --source=0.0.0.0 --destination=8.8.8.8 -M ICMP --ping --verbose
hipercontracer --user=hipercontracer --source=0.0.0.0 --source=::--destination=www.ietf.org --iomodule ICMP --ping --verbose
hipercontracer --user=hipercontracer --source=10.193.4.64 --destination 1.2.3.4 --iomodule ICMP --iomodule UDP --ping --traceroute
hipercontracer --version
hipercontracer -h

๐Ÿ“ NOTES ๐Ÿ“

this program is part of HiPerConTracer ๐Ÿซถ the latest version of HiPerConTracer can be found on the HiPerConTracer Homepage at HiPerConTracer Homepage: https://www.nntb.no/~dreibh/hipercontracer/ โœจ


๐Ÿ‘‘ AUTHORS ๐Ÿ‘‘

Thomas Dreibholz, Homepage: https://www.nntb.no/~dreibh ๐Ÿ’–


and that's a wrap on hipercontracer, bestie!! this whole page is from the hipercontracer manual, section hipercontracer(1), dated May 26, 2026 ๐ŸŒธ go forth and traceroute responsibly, ily ๐Ÿฆ‹โœจ๐Ÿ’…

๐Ÿ“ฆ where this page comes from