https://github.com/czerwonk/net-reduce
Simple tool for reducing (removing more specifics) CIDR/IP addresses from standard input
https://github.com/czerwonk/net-reduce
Last synced: 5 months ago
JSON representation
Simple tool for reducing (removing more specifics) CIDR/IP addresses from standard input
- Host: GitHub
- URL: https://github.com/czerwonk/net-reduce
- Owner: czerwonk
- License: mit
- Created: 2025-06-18T14:08:11.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-08-28T06:03:32.000Z (10 months ago)
- Last Synced: 2025-08-28T12:13:54.531Z (10 months ago)
- Language: Rust
- Size: 58.6 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# net-reduce
Simple tool for reducing (removing more specifics) CIDR/IP addresses from standard input
This is a rewrite of [net-merge](https://github.com/czerwonk/net-merge) in rust.
## Remarks
Since the initial use case is preparing data to feed in a firewall the internal data structure is optimized for host prefixes.
First a trie is built for all net prefixes (parallel for IPv4 and IPv6), then coverage of the host prefixes is checked in parallel.
## Dependencies
This project uses the following Rust crates:
- **[anyhow](https://crates.io/crates/anyhow)** - Flexible error handling library
- **[clap](https://crates.io/crates/clap)** - Command line argument parser
- **[ipnet](https://crates.io/crates/ipnet)** - IP network address manipulation
- **[rayon](https://crates.io/crates/rayon)** - Parallel processing
## License
(c) Daniel Brendgen-Czerwonk, 2025. Licensed under [MIT](LICENSE) license.