fork of https://github.com/shellrow/default-net/tree/v0.16.2 fixes an unsafe bug in sockaddr_to_network_addr
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
shellrow a8b34adf6e Update gateway.rs 3 years ago
examples Add Interface and Gateway 3 years ago
src Update gateway.rs 3 years ago
.gitignore Initial commit 3 years ago
Cargo.toml Downgrade pnet to 0.26 3 years ago
LICENSE Initial commit 3 years ago
README.md Add doc 3 years ago

README.md

default-net

Get default network information
default-net provides a cross-platform API for network interface and gateway.

Supported platform

  • Linux
  • macOS(OS X)
  • Windows

Usage

Add default-net to your dependencies

[dependencies]
default-net = "0.1.0"

Example

use default_net;

fn main(){
    if let Some(default_interface) = default_net::get_default_interface(){
        println!("Index {}", default_interface.index);
        println!("Name {}", default_interface.name);
        println!("MAC {:?}", default_interface.mac);
        println!("IPv4 {:?}", default_interface.ipv4);
        println!("IPv6 {:?}", default_interface.ipv6);
        println!("Gateway IP {:?}", default_interface.gateway.ip);
        println!("Gateway MAC {:?}", default_interface.gateway.mac);
    }else{
        println!("Failed to get default interface info");
    }
}

For more details, see examples or doc.