subnetwork

Crates.iosubnetwork
lib.rssubnetwork
version0.4.8
sourcesrc
created_at2023-06-08 11:52:29.455599
updated_at2024-11-22 02:02:30.004146
descriptionReturn all ip addresses of a subnetwork
homepagehttps://github.com/rikonaka/subnetwork-rs
repositoryhttps://github.com/rikonaka/subnetwork-rs
max_upload_size
id885439
size34,813
isinstance (rikonaka)

documentation

https://docs.rs/subnetwork

README

subnetwork

Returns an iterator that iterates over all subnet IPs.

Rust

Example 1

use std::net::Ipv4Addr;
use subnetwork::Ipv4Pool;

fn main() {
    let ipv4_pool = Ipv4Pool::from("192.168.1.0/24").unwrap();
    for i in ipv4_pool {
        println!("{:?}", i);
    }
    let ipv4 = Ipv4Addr::new(192, 168, 1, 1);
    let ret = ipv4_pool.contain(ipv4);
    assert_eq!(ret, true);
}

Example 2

use std::net::Ipv4Addr;
use subnetwork::CrossIpv4Pool;

fn main() {
    let start = Ipv4Addr::new(192, 168, 1, 1);
    let end = Ipv4Addr::new(192, 168, 3, 254);
    let ips = CrossIpv4Pool::new(start, end).unwrap();
    for i in ips {
        println!("{:?}", i);
    }
}

Benchmark

You can see how our performance compares to other similar libraries here.

Commit count: 68

cargo fmt