Тип Ipv6Addr
Тип Ipv6Addr представляет собой IPv6-адрес.
Он хранит адрес в виде восьми 16-битных сегментов
и предоставляет методы для создания адреса, получения
его октетов, проверки принадлежности к специальным
диапазонам и преобразования в другие форматы.
Значения типа Ipv6Addr можно создавать
с помощью констант, метода new или
разбора строки через FromStr.
Синтаксис
use std::net::Ipv6Addr;
Ipv6Addr::new(a, b, c, d, e, f, g, h)
Пример
Давайте создадим IPv6-адрес с помощью метода
new и выведем его на экран:
use std::net::Ipv6Addr;
fn main()
{
let addr = Ipv6Addr::new(0x2001, 0xdb8, 0, 0, 0, 0, 0, 1);
println!("{}", addr);
}
Результат выполнения кода:
2001:db8::1
Пример
Давайте создадим IPv6-адрес из строки с помощью разбора и проверим, является ли он loopback-адресом:
use std::net::Ipv6Addr;
fn main()
{
let addr: Ipv6Addr = "::1".parse().unwrap();
let res = addr.is_loopback();
println!("{}", res);
}
Результат выполнения кода:
true
Пример
Давайте получим октеты IPv6-адреса с помощью метода
octets:
use std::net::Ipv6Addr;
fn main()
{
let addr = Ipv6Addr::LOCALHOST;
let res = addr.octets();
println!("{:?}", res);
}
Результат выполнения кода:
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]
Смотрите также
-
тип
Ipv4Addr,
который представляет IPv4-адрес -
тип
IpAddr,
который представляет IP-адрес версии 4 или 6 -
тип
SocketAddrV6,
который представляет IPv6-адрес с портом -
тип
SocketAddr,
который представляет IP-адрес с портом