Запись делаю что бы не забыть. Сначала думал для сканирования хостов решил использовать API nmap. Но при использовании этого метода возникли следующие проблемы:

  1. Необходимо установить nmap перед тем как использовать в коде;
  2. Необходимо установить Npcap (вроде как не совместим с Wireshark);
  3. Для того запуска требует права админа, что не есть хорошо (ну это в рамках моего проекта).

На офиициальном сайте Мелкомягких есть пример использования. Прям от туда и взял, чуть подправив под свои нужды. На вход подаем адрес

using System;
using System.Net;
using System.Net.NetworkInformation;
using System.Text;

namespace PingConsole
{
    internal class Program
    {
        static void Main(string[] args)
        {         
            string sb;
               sb = "172.26.0.";
            for(int i = 1; i < 20; i++)
            {
                Ping(sb + i.ToString());
            }

            Console.ReadKey();
        }

        static void Ping(string IPAddress)
        {
            Ping pingSender = new Ping();
            PingOptions options = new PingOptions();

            // Use the default Ttl value which is 128,
            // but change the fragmentation behavior.
            options.DontFragment = true;

            // Create a buffer of 32 bytes of data to be transmitted.
            string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
            byte[] buffer = Encoding.ASCII.GetBytes(data);
            int timeout = 120;
            PingReply reply = pingSender.Send(IPAddress, timeout, buffer, options);
            if (reply.Status == IPStatus.Success)
            {
                Console.WriteLine("Address: {0}", reply.Address.ToString());
            }

        }

    }
}

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *