Export (0) Print
Expand All

IPAddress.ScopeId Property

Gets or sets the IPv6 address scope identifier.

Namespace:  System.Net
Assembly:  System (in System.dll)

public long ScopeId { get; set; }

Property Value

Type: System.Int64
A long integer that specifies the scope of the address.

ExceptionCondition
SocketException

AddressFamily = InterNetwork.

ArgumentOutOfRangeException

scopeId < 0

- or -

  • scopeId > 0x00000000FFFFFFFF

The meaning of ScopeId changes depending on the context in which it is used.

  • Link-local address. On a host with multiple interfaces connected to separate links, the same link-local address can be assigned to multiple interfaces. To eliminate this ambiguity, a scope identifier is used to specify the interface over which messages are exchanged.

NoteNote:

Link-local addresses, identified by the Format Prefix (FP) FE80, are used by nodes when communicating with neighboring nodes on the same link.

  • Site-local addresses. A host can be connected to multiple sites. In this case, a scope identifier is used to indicate a specific site to communicate with.

NoteNote:

Site-local addresses, identified by the Format Prefix (FP) FEC0, are used by nodes when communicating on private intranets.

The notation that is used to specify the ScopeId with an address is Address%ScopeId. For example, FE80::5EFE:192.168.41.30%2.

// Display the type of address family supported by the server. If the 
// server is IPv6-enabled this value is: InternNetworkV6. If the server 
// is also IPv4-enabled there will be an additional value of InterNetwork.
Console.WriteLine("AddressFamily: " + curAdd.AddressFamily.ToString());

// Display the ScopeId property in case of IPV6 addresses. 
if(curAdd.AddressFamily.ToString() == ProtocolFamily.InterNetworkV6.ToString())
  Console.WriteLine("Scope Id: " + curAdd.ScopeId.ToString());
// Display the type of address family supported by the server. If the
// server is IPv6-enabled this value is: InternNetworkV6. If the server
// is also IPv4-enabled there will be an additional value of InterNetwork.
Console::WriteLine(S"AddressFamily: {0}", __box(curAdd->AddressFamily));

// Display the ScopeId property in case of IPV6 addresses.
if(__box(curAdd->AddressFamily)->ToString() == __box(ProtocolFamily::InterNetworkV6)->ToString())
    Console::WriteLine(S"Scope Id: {0}", __box(curAdd->ScopeId));

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1

.NET Compact Framework

Supported in: 3.5, 2.0

Community Additions

ADD
Show:
© 2014 Microsoft