net-tools-rs

Crates.ionet-tools-rs
lib.rsnet-tools-rs
version0.1.2
created_at2025-11-26 17:13:54.636728+00
updated_at2026-01-19 21:33:13.651478+00
descriptionRust implementation of net-tools (Linux networking base tools)
homepage
repositoryhttps://github.com/rust-swifties/net-tools-rs
max_upload_size
id1951853
size137,185
Lena Voytek (lvoytek)

documentation

README

net-tools-rs

CI Status Crate License: GPL-2.0-or-later Compliance Tests

A memory-safe, Rust implementation of the classic Linux net-tools networking utilities.

net-tools has been the foundation of Linux networking administration for decades, providing essential utilities like ifconfig, route, netstat, and others. This project reimplements these tools in Rust, bringing memory safety and modern development practices to these critical system utilities.


Goals

net-tools-rs aims to be a drop-in replacement for the original net-tools for common use cases, leveraging Rust's memory safety guarantees to prevent entire classes of vulnerabilities present in C implementations. The project emphasizes modern development practices with comprehensive testing, including compliance tests against the original implementation. We strive to build an active contributor base and welcoming community around maintaining these fundamental Linux networking utilities.

See issue #3 for detailed implementation status on individual command flags and features.

Installation

Currently, net-tools-rs can be installed from crates.io or built from source. We aim to package it for various Linux distributions in the future.

From crates.io

cargo install net-tools-rs

From Source

git clone https://github.com/rust-swifties/net-tools-rs
cd net-tools-rs
cargo build --release

The compiled binaries will be available in target/release/.

Compliance Testing

We maintain comprehensive compliance tests to ensure net-tools-rs behaves identically to the original net-tools implementation. See compliance-tests/README.md for detailed testing documentation.

Contributing

We welcome contributions! Please see CONTRIBUTING.md for details on how to get started, development setup, and our code quality standards.

License

This project is licensed under the GNU General Public License v2.0 or later (GPL-2.0-or-later).

This matches the licensing of the original net-tools project, ensuring compatibility and legal compliance.

Commit count: 24

cargo fmt