Преобразование IP-адреса в массив байтов C # - PullRequest
0 голосов
/ 08 марта 2012

Я пытаюсь пропинговать сервер на основе IP-адреса и порта, используя класс Ping, я должен преобразовать IP-адрес в массив байтов, как я это делаю?Я взял этот метод откуда-то

 bool IsConnectedToInternet
    {
        get
        {
            Uri url = new Uri("www.abhisheksur.com");
            string pingurl = string.Format("{0}", url.Host);
            string host = pingurl;
            bool result = false;
            Ping p = new Ping();
            try
            {

                PingReply reply = p.Send(host, 3000);
                if (reply.Status == IPStatus.Success)
                    return true;
            }
            catch { }
            return result;
        }
    }

Мне просто нужно пропинговать сервер на основе IP, а не URL.Спасибо.

Ответы [ 4 ]

1 голос
/ 08 марта 2012

Хотя ваш фрагмент кода не требует его , вот ответ на вопрос в заголовке вашего сообщения:

Вы можете использовать System.Net.Dns.GetHostAddresses("www.abhisheksur.com")чтобы получить массив IPAdresses объектов, представляющих адреса вашего хоста.Затем можно вызвать GetAddressBytes() для отдельного IPAddress объекта, чтобы преобразовать его в массив байтов.

1 голос
/ 08 марта 2012

Разве вы не можете просто сделать это:

public static bool IsConnectedToInternet
{
    get
    {
        using (var ping = new Ping())
        {
            try
            {
                var reply = ping.Send("173.194.41.168", 3000);
                return reply.Status == IPStatus.Success;
            }
            catch
            {
                return false;
            }
        }
    }
}
0 голосов
/ 08 марта 2012

Используйте класс IPAddress и метод Ping.Send (адрес IPAddress).Если вы пытаетесь преобразовать IP-адрес в байты, он предлагает удобные методы hosttonetwork и networktohost.

http://msdn.microsoft.com/en-us/library/system.net.ipaddress.aspx

http://msdn.microsoft.com/en-us/library/hb7xxkfx.aspx

0 голосов
/ 08 марта 2012

Попробуйте использовать документацию для Ping.Send

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...