Built using the Slick2D graphics library, Hot Packets is a network simulation tool envisioned during and developed at Bitcamp 2023 in less than 36 hours. Winning the Best Bitcamp Hack award (see here!), Hot Packets simulates the intricacies of packet flow throughout a network system in an easy-to-understand manner, and even supportsiptable filter and NAT rules.
To interact with the simulation, the user is provided with simple sliders (to adjust simulation settings) and a command prompt for additional functionality.
Supported commands are given below:
create device [device ip]: Creates a device on the networkconnect [source ip] to [destination ip]: Creates a connection fromsource ipoutwards todestination ip.packet [source ip] to [destination ip] [protocol]: Sends a packet from the source IP to the destination IP, under some protocol (TCPorUDP).nat postroute on [host ip] [old ip] to [new ip]: Adds a NAT postrouting rule onto the host device. If the destination IP on a packet matchesold ip, it will be fowarded tonew ip.nat preroute on [host ip] [old ip] to [new ip]: Adds a NAT prerouting rule onto the host device. If the source IP on a packet matchesold ip, it will be forwarded tonew ip.filter on [host ip] [src ip] to [dest ip] [protocol] [rule]: Adds a filter to a host device. If a packet's source, destination, and protocol match that of the filter's, the rule (ACCEPT,REJECT,DROP) will be applied to that packet.ping from [host ip]: Toggles a flag on devices, causing them to send packets outwards (to random connected devices). Useful for traffic congestion analysis.
Such a simulation tool may serve as a useful basis for testing and researching largescale networks without risking the integrity of the actual network. It can be used for traffic congestion analysis, attacker behavior analysis, and educational purposes.
