Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR. Learn more →
Trippy Alternatives
Similar projects and alternatives to trippy
-
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
-
wezterm
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
-
-
-
ratatui
Discontinued Rust library that's all about cooking up terminal user interfaces (TUIs) 👨🍳🐀 [Moved to: https://github.com/ratatui/ratatui] (by ratatui-org)
-
-
Nutrient
Nutrient - The #1 PDF SDK Library. Bad PDFs = bad UX. Slow load times, broken annotations, clunky UX frustrates users. Nutrient’s PDF SDKs gives seamless document experiences, fast rendering, annotations, real-time collaboration, 100+ features. Used by 10K+ devs, serving ~half a billion users worldwide. Explore the SDK for free.
-
-
gcodepreview
OpenPythonSCAD library for moving a tool in lines and arcs so as to model how a part would be cut using G-Code or described as a DXF.
-
-
-
-
-
freebies
Source code for Uisual templates. Free HTML/CSS landing page templates for startups. New template every week.
-
-
-
-
mezura
A fairly fast, fairly accurate and very customizable stats generator and growth tracker, for programming projects, in the form of a CLI executable, written in Rust.
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
trippy discussion
trippy reviews and mentions
-
Nping – ping, but with a graph or table view
Another interesting tool in this space is trippy, which ‘combines the functionality of traceroute and ping’
https://github.com/fujiapple852/trippy
-
Schrödinger's IPv6 Cat
You can, with several caveats, detect which hop(s) on the path perform NAT by using some trickery [1]:
> NAT devices are detected by observing a difference in the expected and actual checksum of the UDP packet that is returned as the part of the Original Datagram in the ICMP Time Exceeded message. If they differ then it indicates that a NAT device has modified the packet. This happens because the NAT device must recalculate the UDP checksum after modifying the packet (i.e. translating the source port) and so the checksum in the UDP packet that is nested in the ICMP error may not, depending on the device, match the original checksum.
[1] https://github.com/fujiapple852/trippy/releases/tag/0.11.0
-
How Raw sockets behave differently in macOS and Linux
OP, you may find this [1] “trick” useful. It allows you to dynamically determine the correct byte order for the various IPv4 headers for the platform and thus avoid the need to statically decide on the byte ordering for each platform you intend to target.
You may also find this [2] table useful, it shows which platforms allow the combination of IPPROTO_ICMP + IP_HDRINCL so it may be used without elevated privileges.
In general, my experience of raw sockets is that they are not very “raw” at all, the OS can and does still perform a variety modifications and additions to what you send and receive, in highly platform specific and often poorly documented ways. In particular, TCP and raw sockets should generally be avoided.
[1] https://github.com/fujiapple852/trippy/blob/master/crates/tr...
[2] https://github.com/fujiapple852/trippy/issues/101#issuecomme...
- Ask HN: What are you working on (August 2024)?
-
Apnic: Cgnat is harming internet innovation (2022)
[3] https://github.com/fujiapple852/trippy/issues/1104
- FLaNK Stack Weekly 11 Dec 2023
-
Trippy – A Network Diagnostic Tool
You are right that showing packet loss for intermediate hops is a frequent source of confusion.
Rather than leave it out, I added a status column which shows different statuses for intermediate hops (blue if the hop responds to less than 100% of probes and brown if it responds to 0%) vs the target hop (amber and red).
Where this breaks down is when dealing with ECMP for UDP & TCP tracing, as a given hop (ttl) may represent the target for a given round of tracing but not for the next. The mistake, imho, is to associate _any_ data with a hop (ttl) rather than the hop in the context of a tracing flow.
That is why Trippy had a number of features aimed at helping with ECMP, such as Paris and Dublin tracing, and the ability to filter tracing by unique flow id. I've covered these quite a bit in the 0.8.0 [0] and 0.9.0 [1] release notes if you want to know more.
[0] https://github.com/fujiapple852/trippy/releases/tag/0.8.0
-
A note from our sponsor - CodeRabbit
coderabbit.ai | 15 Mar 2025
Stats
fujiapple852/trippy is an open source project licensed under Apache License 2.0 which is an OSI approved license.
The primary programming language of trippy is Rust.