как пропинговать несколько адресов сразу
Как я могу ping диапазон IP-адресов одновременно [закрыто]
У меня есть набор машин по диапазону IP-адресов, который я хочу пинг одновременно, как быстрый и грязный способ сказать, какие из них включены. Какое (бесплатное) программное обеспечение можно использовать для этого?
9 ответов
Я использую его так же, как вы хотите!
Nmap доступен для Windows:
Я использовал эту команду
в пакетном файле по той же причине
Бесплатный IP-сканер 1.6
Вот диапазон IP-адресов, который вы можете заметить в:
Вместо того, чтобы вручную пинговать все IP-адреса в локальной сети, вы можете сделать следующее:
Откройте командную строку и введите:
-n 1 означает, что на каждый компьютер будет отправлен только один пакет ping.
Это проверит все IP-адреса в сегменте сети 192.168.0.0 и создаст текстовый файл с именем ipaddresses.txt в C: \, где он будет перечислять только IP-адреса, которые дали ответ.
Введите только три октета IP-адреса.
Это довольно просто запустить, и это должно сэкономить массу времени.
Сердитый IP-сканер замечательный, но я предпочитаю инструменты CLI. Посмотрите, можете ли вы запустить этот скрипт powershell в Vista. https://github.com/webstersprodigy/PowerSploit/blob/Portscan /Recon /Invoke-Portscan.ps1
Я также предлагаю получить доступ к CLI Linux, используя linux live cd /usb, dual boot или vm в VirtualBox. (Установите VirtualBox, добавьте новый vm, установите Debian.) Линукс CLI неоценим.
В командной строке linux выполните следующее:
Сканирование на основе PING
Отрегулируйте для вашего сетевого диапазона (часть 172.10.1), и вы выключены. Это предоставит список всех хостов в сети, которые отвечают на запросы ICMP echo (ping) и разрешают их против вашего DNS-сервера.
Примечание. Это не самый надежный способ тестирования для живых хостов, поскольку они могут заблокировать ICMP.
nmap на основе сканирования
Примечание. Nmap более надежна, так как это сканер портов и основывает свои результаты на активности не только на ответах ICMP. Он широко используется пентестами и заслуживает изучения.
Как я могу пинговать диапазон IP-адресов одновременно [закрыто]
У меня есть несколько машин в диапазоне IP-адресов, которые я хочу пинговать одновременно, чтобы быстро и грязно определить, какие из них включены. Какое (бесплатное) программное обеспечение я могу использовать для этого?
Я использую это так же, как вы хотите!
Nmap доступен для Windows:
Я использовал эту команду
в командном файле по аналогичной причине
Бесплатный IP Scanner 1.6
Вот диапазон IP-адресов, которые вы можете заметить в:
Вместо того, чтобы вручную пропинговать все IP-адреса в вашей локальной сети, вы можете сделать следующее:
Откройте командную строку и введите:
-n 1 означает, что на каждый компьютер будет отправлен только 1 пакет ping.
Изменить 192.168.0 в соответствии с вашим собственным идентификатором сети.
Это пропингует все IP-адреса в сегменте сети 192.168.0.0 и создает текстовый файл с именем ipaddresses.txt в C: \, где будут перечислены только IP-адреса, которые дали ответ.
Вы можете просто написать скрипт Bash, который просматривает диапазон IP-адресов и проверяет их связь. Пример, который проверяет адреса в диапазоне от 10.1.1.1 до 10.1.1.255 (включительно):
Пожалуйста, введите только три октета IP-адреса.
Как только команда будет выполнена, она создаст текстовое имя файла pingnet.log в корне диска C. Этот файл должен дать вам список используемых и неактивных (бесплатных) IP-адресов.
Это довольно просто запустить, и это должно сэкономить вам массу времени.
Я также предлагаю получить доступ к Linux CLI с помощью Linux Live CD / USB, двойной загрузки или виртуальной машины в VirtualBox. (Установите VirtualBox, добавьте новый vm, установите Debian.) Линукс CLI неоценим.
Из linux CLI запустите следующее:
Сканирование на основе PING
Настройте диапазон вашей сети (часть «172.10.1»), и вы отключены. Это предоставит список всех хостов в сети, которые отвечают на эхо-запросы ICMP (ping), и сопоставит их с вашим DNS-сервером.
Примечание. Это не самый надежный способ тестирования живых хостов, поскольку у них может быть заблокирован ICMP.
Сканирование на основе nmap
Примечание: Nmap более надежен, так как является сканером портов и основывает свои результаты на активности не только на ответах ICMP. Он активно используется пентестерами и заслуживает изучения.
Команда ping: подробный обзор
Ping – утилита командной строки, которая нужна для проверки подключения к другому компьютеру на уровне IP. Принцип работы очень простой: команда ping ip отправляет серию небольших пакетов данных на указанное устройство, а затем показывает время ответа.
Ping – основная команда TCP/IP, которая используется для устранения неполадок подключения, доступности и разрешения имени. Она также позволяет узнать имя и IP-адрес компьютера.
Синтаксис команды ping
Команда ping в Windows имеет следующие параметры, которые позволяют решать разные задачи:
Чтобы посмотреть в командной строке (cmd) ping-команды, вызовите справку:
На Linux параметры команды отличаются. Чтобы посмотреть доступные опции, выполните в терминале команду:
Суть команды ping проста, но примеров ее использования очень много. Давайте посмотрим, что можно делать с ее помощью.
Простая проверка доступности
Это то, что делали многие пользователи, – пинговали популярные ресурсы, чтобы убедиться, что интернет на их компьютере работает. Эта же команда используется для проверки доступности.
Чтобы прервать отправку и получить статистику, нажимаем сочетание клавиш Ctrl+C.
По умолчанию команда ping IP-адреса на Linux посылает пакеты, пока вы не прервете их отправку вручную с помощью сочетания клавиш Ctrl+C. Чтобы ограничить количество, укажем нужное число. Например:
Изменение интервала между отправкой пакетов
По умолчанию пакеты отправляются с интервалом в одну секунду. Но можно установить другое время.
Для установки значений меньше 0.2 секунды требуются права суперпользователя (sudo).
Массовая отправка пакетов для нагрузочного тестирования
Эта возможность также доступна только суперпользователям:
Изменение размера пакета
По умолчанию размер пакета – 32 байта. Можно установить другой размер:
Включение звукового сигнала
Если ответа от хоста нет, отправляем эту команду:
Затем начинаем искать причину сбоя. После ее устранения воспроизведется звуковой сигнал. Он говорит о том, что хост теперь отвечает.
Вывод статистики ping
Чтобы не засорять терминал лишней информацией, пропустим ответы хоста и сразу получим статистику:
А можно, наоборот, получать статистику выполнения без прерывания команды. Для этого нужно нажать сочетание клавиш CTRL + |.
Как я могу пинговать несколько IP-адресов одновременно?
Я знаю о методах, где вы можете запустить for цикл Bash и ping несколько серверов, есть ли инструмент CLI для Linux, который я могу использовать, что позволит мне сделать это без необходимости писать сценарий Bash для ping списка серверов один за раз?
ПРИМЕЧАНИЕ: я специально искал CentOS / Fedora, но если он работает и на других дистрибутивах, это тоже хорошо.
Nping имеет очень гибкий и мощный интерфейс командной строки, который предоставляет пользователям полный контроль над сгенерированными пакетами. Особенности Nping включают в себя:
nping находится в стандартном репозитории EPEL для загрузки.
использование
Чтобы пропинговать несколько серверов, вам нужно просто указать nping имена / IP-адреса и какой протокол вы хотите использовать. Здесь, поскольку мы хотим имитировать то, что ping делает традиционный CLI, мы будем использовать ICMP.
fping находится в пакете Fedora с тем же именем и допускает множество хостов или набор IP-адресов.
Опция использует пакеты ICMP (более известные как «пинг-пакеты») для проверки достижимости сетевых узлов. Он поддерживает пинг нескольких хостов параллельно, прозрачно используя IPv4 и / или IPv6.
Я бы предложил использовать GNU Parallel
вывод будет чередоваться
Я знаю, что это конкретно не то, что вы просите, а сценарий bash для этого:
Это примет ваши конечные точки в качестве аргументов командной строки и отправит каждому из них пинг с 5 счетами в качестве фонового процесса, а затем дождется завершения всех перед выходом. Он напечатает последние три строки вывода ping, которые содержат полезную статистику о частоте успеха и задержке.
Я полагаю, это может сделать для вас?
Он использует printf способность «автоматически повторять» свои аргументы, повторно используя строку формата над каждым аргументом. Таким образом, вышеприведенное printf создает последовательность ping & строк для каждого хоста, представленную в качестве аргумента, и передает такую последовательность команд через подстановку eval команд в команду, чтобы они выполнялись немедленно.
printf и eval команды стандарт POSIX, а также подстановка команд.
Заключение всей подобной команды в подоболочку, содержащую и-ed, wait например:
Иначе вы можете управлять каждой ping командой по отдельности через обычное управление заданиями оболочки.
Если ваша оболочка поддерживает также подстановки процессов, вы также можете использовать следующее:
на несколько символов меньше, чтобы напечатать.
Nmap поддерживает пинг-сканирование (ICMP) и несколько хостов:
Другие интересные варианты, если вы хотите пропинговать действительно большое количество целей:
Без создания файла
Ссылки
Используя общую xargs команду для построения нескольких ping запросов:
Где host1 host2 host3 может быть переменное количество хостов (любая комбинация IP или имени хоста).
Пример скрипта: /usr/bin/mping
Пример функции внутри
И использовать как:
Я не знаю, что именно вы хотите, но вы могли бы изменить последние 8 битов в десятичное 255, чтобы ваши хосты получали широковещательную рассылку, фактически она будет передавать пинг-пакеты на все устройства, которые существуют в сети.
ИТ База знаний
Полезно
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
🔥 Популярное
Руководство по команде grep в Linux
Рекурсивно найти слово в файлах и папках Linux
15 примеров CURL в Linux
Установка VirtualBox 6.0 на Linux
👌 Похожее
Bash функции и псевдонимы
Настройка производительности и безопасности Nginx
Как найти и читать логи в Linux
15+ примеров для команды yum update
15 примеров команды PING для диагностики сети
Благодаря Linux, у нас есть очень много инструментов облегчающих администрирование и диагностику сети. В этом плане команда PING является одним из самых полезных инструментов для системных и сетевых администраторов.
Онлайн курс по Linux
Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps
Сама базовая возможность этой утилиты – определить доступен ли тот или иной хост. Тем не менее в этом материале мы приведем примеры расширенных возможностей этой команды в системе Linux.
Про Linux за 5 минут | Что это или как финский студент перевернул мир?
Для чего используется команда PING?
Команда ping один из базовых инструментов для работы с сетью. Наряду с проверкой доступности удаленного хоста, эта команда даёт возможность выполнять и другие диагностические задачи в том числе:
Как видно, эта команда очень необходима для администрирования сети и серверов.
Как работает команда PING?
Принцип работы команды Ping прост: она посылает серию пакетов маленького размера на указанное устройство.
Для тестирования устройства может быть использован либо IP-адрес, либо имя хоста. После отправки пакета, утилита проверяет и измеряет время ответа целевого устройства.
Как вы могли предположить, время ответа зависит от нескольких условий в том числе географическое расположение или устройств, расположенных между источником и целевым устройством.
Например, в локальной проводной сети команда вернет лучший результат по времени, чем в сети с несколькими маршрутизаторами и сетевыми мостами.
Однако, на основе полученной информации утилита будет судить о состоянии целевого устройства.
Синтаксис команды следующий:
Ниже приведены некоторые полезные и часто используемые ключи для этой команды:
Можно ли использовать PING с прокси-сервером?
Прокси – это сервер или приложение играющее роль посредника для соединения двух хостов в сети. Это своего рода «человек посередине», который отправляет запросы прямо к хосту.
Проблема в том, что команда PING требует прямого соединения между устройствами. Таким образом, команда Ping не может функционировать если перед ним стоит прокси-сервер.
Ping IPv6 адресов
По умолчанию, когда запускаем команду PING, мы используем IP версии 4. Однако, с появлением протокола IPv6, все чаще стали встречаться адреса такого формата.
Ядро Linux поддерживает IPv6 начиная с версии 2.2, так что все дистрибутивы Linux поддерживают этот протокол.
Базовый синтаксис таков:
Как и при работе с IPv4, ключом –c можем указать число пакетов, для отправки, а ключ –i – определяет интерфейс для исходящих запросов.
Ping конкретного порта
Чтобы проверить доступность порта просто введите следующую команду:
Ping с выводом времени
Хотя команда ping дает много полезной информации, но этого может быть недостаточно. Тем не менее, есть возможность настроить команду так, чтобы она показала дату и время отправки пакета. Это может сделать вывод приятней и полезней для скриптов и логирования.
Как видно из скриншота, команда показывает дату и время отправки каждого пакета.
Ping всех устройств в указанной подсети
Командой Ping можно посылать сигнал всем хостам в сети или подсети. Для этого нужно запустить ping с ключом –b на широковещательный адрес, который заканчивается на 255. Например:
Итак, если хост назначения недоступен, значит либо там блокируются ICMP пакеты, либо есть проблемы с сетью или таблицей маршрутизации.
Как завершить команду PING?
После этого команда немедленно остановится.
Завершение работы команды по счетчику
Вы можете ограничить число посылаемых пакетов. Например, если поставить число пакетов равным 10, то после отправки указанного числа пакетов выполнение команды прекратится.
Где расположена утилита PING?
В Unix-подобных системах таких, как Linux бинарные файлы обычно располагаются по пути
В этой папке можно найти все множество бинарных файлов, которые мы используем как команды в терминале. В других ОС семейства Linux, они могут быть расположены в:
Проверить это можем командой ls :
На скриншоте видно, что команда ping находится в папке
Другой метод, которым можно найти место расположения команд это which :
На выводе она даст следующую информацию:
Проверка задержки командой PING
Одна из возможностей, предоставляемых командой PING, является возможность измерения времени отклика сети. По-другому это называется задержка или время ожидания.
Чтобы измерить задержку введи указанную команду и обратите внимание на ввыод:
Как вы могли заметить, каждый пакет был отправлен с конкретным временем ответа. В конце же есть строка, которая начинается на:
Второе значение после знака равенства – это время задержки. В нашем случае он равен 6,798.
С помощью этого показателя мы можем определить хосты, связь с которыми хуже и приять соответствующие меры.
Поиск идеального значения MTU
MTU (Maximum Transmission Unit) это максимальный размер пакета, который может быть передан по сети.
Сегодня, в целях безопасности, в сетях создаются препятствия для работы MTU. Но большинство локальных сетей на основе Ethernet использует MTU размером 1500 байт.
Если нужно найти самый подходящий размер MTU с помощью команды Ping, следует определить начальное значение и уменьшать его до тех пор, пока прекратятся ошибки. Если значение большое, мы получим следующую ошибку:
Чтобы сделать это запустите следующую команду:
В нашем случае, значение размера пакета слишком большое. Поэтому уменьшаем его до 1472 байтов.
Если получите другое сообщение, начальное значение должно быть уменьшено по единице до тех пор, пока не получите требуемый результат.
Если значение MTU известно, оно может быть использовано для улучшения сети. Особенное если сеть большая вплоть до городских сетей.
Ping на 2-ом уровне OSI (использование arping)
С помощью команды ping диагностика проводится на основе IP-адреса конкретного узла в сети. Это связано с тем, что команда ping работает на третьем сетевом уровне модели OSI.
Синтаксис команды следующий:
В результате получите что-то подобное:
Вывод команды показывает размер отправленного пакета, затем MAC адрес узла назначения, а также время ответа.
Отметим, что эта команда не предустановлена на системе Debian и производных.
Ping по имени узла
По умолчанию, команда ping посылает пакеты на узел назначения используя IP адрес или имя узла назначения. Также нужно отметить, что большинство реализаций утилиты ping на Linux не разрешают DNS в обратном направлении.
Например, если мы запустим команду ping, указав IP адрес, он вернёт только IP узла. И наоборот, если параметром передадим имя узла, то команда вернет его IP адрес. Посмотрите вывод введя команду ниже:
Ping маршрута (traceroute)
Сама по себе команда ping не показывает пути от источника к узлу назначения. Но это было бы очень кстати в том случае, когда узел назначения не отвечает, чтобы определить где именно теряется связь.
Команда tracert (Windows) или traceroute работают аналогично ping. Преимуществом этой команды является то, что он показывает весь путь следования пакета от источника до узла назначения.
В принципе traceroute посылает тот же ICMP пакет, что и Ping. Но в случае traceroute, в отличии от ping начально значение TTL пакета выставляется равным единице. Пакет доходит до первого узла по пути к узлу назначения. Устройство уменьшает TTL на одну единицу и если получается нуль, то возвращает сообщение об ошибке истечения времени пакета. В сообщение так же содержится IP адрес и имя хоста. Отправитель получает данное сообщение. Если оно не от узла назначения, то посылает второй пакет с TTL на один больше предыдущего. И так до тех пор, пока не получит ответ от узла назначения. Для получения пути нужно ввести команду:
Запустить команду если ping вернул ошибку
Представьте, что вам нужно получить оповещение если узел назначения перестал отвечать на запросы команды ping. Для этого нужно включить команду ping в bash скрипт и прописать нужные команды. Например, скрипт ниже позволяет вам проверить отвечает ли узел на запросы ping:
Установление размера пакета ping
По умолчанию, размер пакетов ICMP равен 56 байтам. Это позволяет не влиять на работу сети во время проверки. Но при необходимости можно изменять это значение. Для этого достаточно запустить команду ping с ключом –s и требуемым размером. Например:
Если нужно установить значение пакета равным 100 байтам, нужно прописать команду ниже:
Отключение команды ping
Если вы обслуживаете сеть, то вам может быть необходимо отключить ответ на ping запросы в любое время. Это можно сделать как временно, так и постоянно, в зависимости от ваших нужд. Для временного отключения команды ping нужно ввести команду ниже от имени root-а:
Она выключить возможно ответа на ICMP запросы до перезагрузки системы. Но если нужно навсегда отключить эту возможность, то придется отредактировать файл
и добавить следующую строку:
Сохраните файл и, для применения изменений введите команду:
Заключение
В этом материале мы рассмотрели, как команда ping работает в системе Linux. Ping одна из самых легких команд. Она позволяет лицам, ответственным в обеспечении нормально работы сети, выявлять проблемы и устранять их.
Онлайн курс по Linux
Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps