Получение IP-адреса вместо MAC-адреса - PullRequest
1 голос
/ 18 ноября 2011

У меня есть этот код

public static TcpConnectionInformation[] getConnections()
{
    IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
    TcpConnectionInformation[] tcpInfoList = properties.GetActiveTcpConnections();
    return tcpInfoList;
}

Но иногда этот код возвращает MAC-адреса (например, :: ffff: 0: f7ad: 645d) вместо ip, кто-нибудь знает, как это исправить?

Ответы [ 2 ]

4 голосов
/ 18 ноября 2011

Это не MAC-адрес, это адрес IPv6.Вы можете отфильтровать результаты, чтобы они отображали только адреса IPv4, как показывает легенда.

2 голосов
/ 18 ноября 2011

Вы пробовали это?

IPHostEntry host;
string localIP = "?";
host = Dns.GetHostEntry(Dns.GetHostName());
foreach (IPAddress ip in host.AddressList)
{
    if (ip.AddressFamily == AddressFamily.InterNetwork)
    {
        localIP = ip.ToString();
    }
}
return localIP;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...