Dnes jsem řešil související problém. Funkční kód pro zjištění všech IPv4 adres z místního počítače:
Imports System.Net
Imports System.Net.Sockets
Module Module1
Sub Main()
Dim hostAddressInfo = Dns.GetHostEntry(Dns.GetHostName())
Dim addresses = hostAddressInfo.AddressList
For Each address In addresses
If address.AddressFamily = AddressFamily.InterNetwork Then
Console.WriteLine(address.ToString())
End If
Next
Console.ReadKey()
End Sub
End Module
Jak ale zjistit, která z adres slouží pro připojení do sítě Internet? Napadlo mě připojit se na nějaký webserver TcpClientem a z množiny addresses najít to co odpovídá adrese jeho lokálního EndPointu ale to by nefungovalo univerzálně a připadá mi to jako drbat se levou nohou za pravým uchem.
|