Crate ip_network
source · [−]Expand description
IPv4 and IPv6 network structs.
Optional features
When using this crate, you can choose to compile with these features:
serde
– for serialization and deserialization by Serde framework.diesel
– support for PostgreSQL CIDR type with Diesel ORM.postgres
– support for PostgreSQL CIDR type with postgres crate.
Examples
use std::net::Ipv4Addr;
use ip_network::Ipv4Network;
let ip_network = Ipv4Network::new(Ipv4Addr::new(192, 168, 1, 0), 24)?;
assert_eq!(Ipv4Addr::new(192, 168, 1, 0), ip_network.network_address());
assert_eq!(24, ip_network.netmask());
assert_eq!(254, ip_network.hosts().len());
assert_eq!("192.168.1.0/24", ip_network.to_string());
Modules
Ipv4RangeIterator
, Ipv4NetworkIterator
, and Ipv6NetworkIterator
.
Structs
IPv4 Network.
IPv6 Network.
Enums
Holds IPv4 or IPv6 network.
Errors when creating new IPv4 or IPv6 networks.
Errors from IPv4 or IPv6 network parsing.
IPv6 Multicast Address Scopes.