---
# System prepended metadata

title: IP Methods
tags: [Networking]

---

# IP Methods

###### tags: `Networking`

Stabilization PR: https://github.com/rust-lang/rust/pull/76098

This document lists the methods tracked under the `ip` feature, whether they're covered by an EITF RFC, and whether the behavior matches corresponding methods in other languages.

Emoji Key:


| ✅               | ❓     |                         🔎                          | ❌                |
| ---------------- | --- | ---------------------------------------------------- | ----------------- |
| Behavior matches | Method does not exist    |  Source code is not provided | Behavior mismatch |

Anything other than "❓" is a link that will take you to the documentation / source code for that language's equivalent.

Unless otherwise noted, Rust behavior matches that of the RFC Spec provided.


| Rust                                                                                                                                         | Status            | RFC Spec                                                                                                    | Go                                                      | .NET                                                                                                                                     | Java                                                                                            |
| -------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- |:----------------------------------------------------------------------------------------------------------- | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |:----------------------------------------------------------------------------------------------- |
| [`Ipv6MulticastScope::InterfaceLocal`](https://doc.rust-lang.org/std/net/enum.Ipv6MulticastScope.html#variant.InterfaceLocal)                | new stabilization | [7346](https://tools.ietf.org/html/rfc7346#section-2)                                                       | [✅](https://golang.org/src/net/ip.go?s=3779:3824#L128) | ❓                                                                                                                                       | [🔎](https://docs.oracle.com/javase/10/docs/api/java/net/Inet6Address.html#isMCNodeLocal())     |
| [`Ipv6MulticastScope::LinkLocal`](https://doc.rust-lang.org/std/net/enum.Ipv6MulticastScope.html#variant.LinkLocal)                          | new stabilization | [7346](https://tools.ietf.org/html/rfc7346#section-2)                                                       | [✅](https://golang.org/src/net/ip.go?s=3977:4017#L134) | [🔎](https://docs.microsoft.com/en-us/dotnet/api/system.net.ipaddress.isipv6linklocal?view=net-5.0#System_Net_IPAddress_IsIPv6LinkLocal) | [🔎](https://docs.oracle.com/javase/10/docs/api/java/net/Inet6Address.html#isMCLinkLocal())     |
| [`Ipv6MulticastScope::RealmLocal`](https://doc.rust-lang.org/std/net/enum.Ipv6MulticastScope.html#variant.RealmLocal)                        | new stabilization | [7346](https://tools.ietf.org/html/rfc7346#section-2)                                                       | ❓                                                      | ❓                                                                                                                                       | ❓                                                                                              |
| [`Ipv6MulticastScope::AdminLocal`](https://doc.rust-lang.org/std/net/enum.Ipv6MulticastScope.html#variant.AdminLocal)                        | new stabilization | [7346](https://tools.ietf.org/html/rfc7346#section-2)                                                       | ❓                                                      | ❓                                                                                                                                       | ❓                                                                                              |
| [`Ipv6MulticastScope::SiteLocal`](https://doc.rust-lang.org/std/net/enum.Ipv6MulticastScope.html#variant.SiteLocal)                          | new stabilization | [7346](https://tools.ietf.org/html/rfc7346#section-2)                                                       | ❓                                                      | [🔎](https://docs.microsoft.com/en-us/dotnet/api/system.net.ipaddress.isipv6sitelocal?view=net-5.0#System_Net_IPAddress_IsIPv6SiteLocal) | [🔎](https://docs.oracle.com/javase/10/docs/api/java/net/Inet6Address.html#isMCSiteLocal())     |
| [`Ipv6MulticastScope::OrganizationLocal`](https://doc.rust-lang.org/std/net/enum.Ipv6MulticastScope.html#variant.OrganizationLocal)          | new stabilization | [7346](https://tools.ietf.org/html/rfc7346#section-2)                                                       | ❓                                                      | ❓                                                                                                                                       | [🔎](https://docs.oracle.com/javase/10/docs/api/java/net/Inet6Address.html#isMCOrgLocal())      |
| [`Ipv6MulticastScope::Global`](https://doc.rust-lang.org/std/net/enum.Ipv6MulticastScope.html#variant.Global)                                | new stabilization | [7346](https://tools.ietf.org/html/rfc7346#section-2)                                                       | ❓                                                      | [🔎](https://docs.microsoft.com/en-us/dotnet/api/system.net.ipaddress.isipv6multicast?view=net-5.0#System_Net_IPAddress_IsIPv6Multicast) | [🔎](https://docs.oracle.com/javase/10/docs/api/java/net/Inet6Address.html#isMCGlobal())        |
| `Ipv6MulticastScope::Reserved`                                                                                                               | new stabilization | [7346](https://tools.ietf.org/html/rfc7346#section-2)                                                       | ❓                                                      | ❓                                                                                                                                       | ❓                                                                                              |
| `Ipv6MulticastScope::Unassigned`                                                                                                             | new stabilization | [7346](https://tools.ietf.org/html/rfc7346#section-2)                                                       | ❓                                                      | ❓                                                                                                                                       | [🔎](https://docs.oracle.com/javase/10/docs/api/java/net/Inet6Address.html#isAnyLocalAddress()) |
| [`IpAddr::is_documentation`](https://doc.rust-lang.org/nightly/std/net/enum.IpAddr.html#method.is_documentation)                             | new stabilization | [5737](https://tools.ietf.org/html/rfc5737#section-3) [3849](https://tools.ietf.org/html/rfc3849#section-2) | -                                                       | -                                                                                                                                        | ❓                                                                                               |
| [`Ipv4Addr::is_global`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_global)                                     | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv4Addr::is_shared`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_shared)                                     | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv4Addr::is_ietf_protocol_assignment`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_ietf_protocol_assignment) | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv4Addr::is_benchmarking`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_benchmarking)                         | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv4Addr::is_reserved`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_reserved)                                 | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::is_unspecified`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_unspecified)                           | behavior changed  | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::is_loopback`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_loopback)                                 | behavior changed  | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::is_global`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_global)                                     | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::is_unique_local`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_unique_local)                         | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::is_unicast_link_local`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_unicast_link_local)             | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::is_unicast_site_local`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_unicast_site_local)             | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::is_documentation`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_documentation)                       | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::is_unicast_global`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_unicast_global)                     | new stabilization | -                                                                                                           | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::multicast_scope`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.multicast_scope)                         | new stabilization |                                                                                                             | -                                                       | -                                                                                                                                        | -                                                                                               |
| [`Ipv6Addr::to_ipv4_mapped`](https://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.to_ipv4_mapped)                           | new stabilization |                                                                                                             | -                                                       | -                                                                                                                                        | -                                                                                               |
