IPv6InterfaceProperties.Index Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the index of the network interface associated with an Internet Protocol version 6 (IPv6) address.
public:
abstract property int Index { int get(); };
public abstract int Index { get; }
member this.Index : int
Public MustOverride ReadOnly Property Index As Integer
Property Value
An Int32 value that contains the index of the network interface for IPv6 address.
Examples
The following code example gets an IPv6InterfaceProperties object and displays its data.
void DisplayIPv6NetworkInterfaces()
{
array<NetworkInterface^>^nics = NetworkInterface::GetAllNetworkInterfaces();
IPGlobalProperties ^ properties = IPGlobalProperties::GetIPGlobalProperties();
Console::WriteLine( "IPv6 interface information for {0}.{1}",
properties->HostName, properties->DomainName );
int count = 0;
System::Collections::IEnumerator^ myEnum24 = nics->GetEnumerator();
while ( myEnum24->MoveNext() )
{
NetworkInterface ^ adapter = safe_cast<NetworkInterface ^>(myEnum24->Current);
// Only display informatin for interfaces that support IPv6.
if ( !adapter->Supports( NetworkInterfaceComponent::IPv6 ) )
{
continue;
}
count++;
Console::WriteLine();
Console::WriteLine( adapter->Description );
// Underline the description.
Console::WriteLine( String::Empty->PadLeft( adapter->Description->Length, '=' ) );
IPInterfaceProperties ^ adapterProperties = adapter->GetIPProperties();
// Try to get the IPv6 interface properties.
IPv6InterfaceProperties ^ p = adapterProperties->GetIPv6Properties();
if ( !p )
{
Console::WriteLine( "No IPv6 information is available for this interface." );
continue;
}
// Display the IPv6 specific data.
Console::WriteLine( " Index ............................. : {0}",
p->Index );
Console::WriteLine( " MTU ............................... : {0}",
p->Mtu );
}
if (count == 0)
{
Console::WriteLine(" No IPv6 interfaces were found.");
Console::WriteLine();
}
}
public static void DisplayIPv6NetworkInterfaces()
{
NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
Console.WriteLine("IPv6 interface information for {0}.{1}",
properties.HostName, properties.DomainName);
int count = 0;
foreach (NetworkInterface adapter in nics)
{
// Only display informatin for interfaces that support IPv6.
if (!adapter.Supports(NetworkInterfaceComponent.IPv6))
{
continue;
}
count++;
Console.WriteLine();
Console.WriteLine(adapter.Description);
// Underline the description.
Console.WriteLine(String.Empty.PadLeft(adapter.Description.Length,'='));
IPInterfaceProperties adapterProperties = adapter.GetIPProperties();
// Try to get the IPv6 interface properties.
IPv6InterfaceProperties p = adapterProperties.GetIPv6Properties();
if (p == null)
{
Console.WriteLine("No IPv6 information is available for this interface.");
Console.WriteLine();
continue;
}
// Display the IPv6 specific data.
Console.WriteLine(" Index ............................. : {0}", p.Index);
Console.WriteLine(" MTU ............................... : {0}", p.Mtu);
}
if (count == 0)
{
Console.WriteLine(" No IPv6 interfaces were found.");
Console.WriteLine();
}
}
Public Shared Sub DisplayIPv6NetworkInterfaces()
Dim nics As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces()
Dim properties As IPGlobalProperties = IPGlobalProperties.GetIPGlobalProperties()
Console.WriteLine("IPv6 interface information for {0}.{1}", properties.HostName, properties.DomainName)
Dim count as Integer = 0
Dim adapter As NetworkInterface
For Each adapter In nics
' Only display informatin for interfaces that support IPv6.
If adapter.Supports(NetworkInterfaceComponent.IPv6) = False Then
GoTo ContinueForEach1
End If
count += 1
Console.WriteLine()
Console.WriteLine(adapter.Description)
' Underline the description.
Console.WriteLine(String.Empty.PadLeft(adapter.Description.Length, "="c))
Dim adapterProperties As IPInterfaceProperties = adapter.GetIPProperties()
' Try to get the IPv6 interface properties.
Dim p As IPv6InterfaceProperties = adapterProperties.GetIPv6Properties()
If p Is Nothing Then
Console.WriteLine("No IPv6 information is available for this interface.")
GoTo ContinueForEach1
End If
' Display the IPv6 specific data.
Console.WriteLine(" Index ............................. : {0}", p.Index)
Console.WriteLine(" MTU ............................... : {0}", p.Mtu)
ContinueForEach1:
Next adapter
if count = 0 then
Console.WriteLine(" No IPv6 interfaces were found.")
Console.WriteLine()
End if
End Sub
Remarks
If the value of this property is zero, IPv6 is not supported by this interface.