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 */
public long get_ScopeId ()

/** @property */
public void set_ScopeId (long value)

public function get ScopeId () : long

public function set ScopeId (value : long)

Property Value

A long integer that specifies the scope of the address.

Exception typeCondition

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(("AddressFamily: " 
    + curAdd.get_AddressFamily().ToString()));

// Display the ScopeId property in case of IPV6 addresses.
if (curAdd.get_AddressFamily().ToString().equals(
        ProtocolFamily.InterNetworkV6.ToString())) {
    Console.WriteLine(("Scope Id: " 
        +(new Long(curAdd.get_ScopeId())).ToString()));
}

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

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

.NET Framework

Supported in: 2.0, 1.1

.NET Compact Framework

Supported in: 2.0

Community Additions

ADD
Show:
© 2014 Microsoft