• 18 Posts
  • 894 Comments
Joined 3 years ago
cake
Cake day: September 1st, 2023

help-circle






  • nixpkgs as a mono repo might’ve been a mistake, honestly. shithub wasn’t made for monorepos. It doesn’t have a permissions system for it.

    So many PRs get a bunch of inane comments that have nothing to do with the functionality to please somebody’s ego, the CODEOWNERS file is nearly worthless as “package maintainers” don’t even have the last say on their own packages, docs are nearly the last of the priorities making it difficult for pretty much anybody but the christened cream of the crop to make changes. It almost seems like the entire thing was made for “job security” - only a few people really understand what’s going on and thus make the decisions. That of course introduces a bottle-neck.

    Even if more people wanted to contribute, they wouldn’t be aren’t able to. I think the decision makers like it that way.







  • Cisco Packet Tracer is a comprehensive networking simulation software tool for teaching and learning how to create network topologies and imitate modern computer networks.

    That’s for simulation. I don’t think it’s possible to analyse a running system to find trace packets as they go through the firewall.

    Cisco Packet Tracer is available for free to all Cisco Networking Academy instructors, students, and alumni. Sign up for our free Getting Started with Cisco Packet Tracer course to learn how to download, install, and get started.

    And it also requires a paid account to use.




  • Regarding your question, I’ve had trouble multiple times with docker (and other software) that required trying to find out just where a packet was getting stuck. The worst thing is when you open a port in the container to 0.0.0.0, send a request to it (HTTP, telnet, or otherwise) from the host via the container’s IP and the packet doesn’t arrive. Then you have to run through the gamut of:

    • are the interfaces up?
    • is it the IP address that’s wrong?
    • is the the port wrong?
    • is the network mask correct?
    • is the gateway IP correct?
    • is the firewall somehow interfering?

    There might be other things I’m missing, but once I get to the firewall stage, most of the time I just give up, put the service into a VM and try accessing it from there - if I really really care. Otherwise, I drop it and move on.

    I did just find this Network address translation part 1 – packet tracing which allows tracing a packet through the firewall via xtables-monitor. It’s in my notes now, so if I run into the problem again, I might have a place to start next time.

    But still, that’s just on my machine. Once things happen on the network and there are routers and other things involved, it’s very difficult for me to debug.


  • Reading the iptables dump is not for beginners. Far from it. A packet can go through all tables and chains or none. And allowing a packet in one chain then begs the questions which is the next table or chain. There are maybe 100 flags and nobody can memorise them all.

    Ufw just allows adding rules, ss doesn’t trace packages as they go through the firewall, it can show you open ports and established connections, but it can show you which tables and chains a packet went through. lsof is even more rudimentary than ss and literally means “list open files”. Since everything is a file in linux, that’s a lot of files. Again, no tracing.

    Somebody will say “just tcpdump”. Again, no that doesn’t trace which tables and chains a packet goes through. The entire firewall is a blackbox to tcpdump. At least to my knowledge. All it sees is which packets arrived and which were sent on the selected interfaces, and whether they was successful or not.

    Nothing I know of traces a packet through the firewall and presents in a TUI nor GUI. I know that it’s possible to make copies of packets and send then to custom chains that can log the chain and packet it came from. There might even be a way of generating a trace by adding a rule to a chain, which means adding it to every chain, but I’m not sure I’ve seen something do that.