👋 Привет, сетевой друг! — 28 июля 2026 г. в 11:38:44.219
👋 Привет, сетевой друг! Сегодня про инструментForerunner - библиотеку для разрабов, которая делает из сетевого сканирования готовый набор компонентов для .NET. И это не готовый сканер с интерфейсом, а движок, на базе которого можно собирать свои сетевые утилиты. 🟣Зачем он: когда нужно написать свой IP-сканер, мониторинг доступности или проверку портов, обычно приходится самостоятельно реализовывать потоки, таймауты, обработку ошибок и сбор результатов. Forerunner берёт эту рутину на себя и отдаёт всё в виде готовых объектов. 🟣Как работает: библиотека построена вокруг асинхронного событийного подхода. Вы создаёте Scanner, запускаете проверку IP или диапазона адресов, а результаты приходят через события с прогрессом и итоговыми объектами. Например, можно просканировать сеть: Scanner scanner = new Scanner(); IPScanObject result = scanner.Scan("192.168.1.1"); В результате объект содержит: • IP-адрес • статус доступности • время ответа Ping • hostname • MAC-адрес • ошибки при проверке 🟣 Что умеет: IP Scan - проверка одного адреса или диапазона ScanRange("192.168.1.1", "192.168.1.255") Port Scan - поиск доступных TCP/UDP портов IsPortOpen("192.168.1.1", 443) Ping Monitoring - проверка доступности и средней задержки GetAveragePingResponse("192.168.1.1", 5, 1000) Port Knock - массовая проверка портов на хостах 🟣Главная фишка, что всё работает параллельно. Библиотека рассчитана на многопоточность, поэтому можно одновременно проверять сотни адресов без блокировки основного приложения. Например, свой мониторинг можно построить так: серверы → Forerunner → проверка Ping → проверка портов → отправка результата в панель мониторинга 🟣 Пример асинхронного сканирования: scanner.ScanAsync("10.0.0.1"); scanner.ScanAsyncComplete += (sender, result) => { Console.WriteLine(result.IP); }; Программа не зависает в ожидании ответа, а получает события по мере завершения проверок. 🤖Бесплатный ChatGPT

