Есть ли способ быстрее пинговать в Busy Box или Tiny Core Linux?

Решение в конце этого поста.

По умолчанию время установлено на одну секунду, а в обычной версии ping для iputils есть опция для уменьшения этого числа с помощью ключа -i. Мне нужно пинговать быстрее, так как у меня есть 120 пингов в определенном тесте, который нужно запускать много раз.

Я попытался изменить источник ping.c из источника busybox, но я мало что знаю о компиляции, и я получаю сообщение об ошибке "не удалось найти libbb.h", и я не смог найти никого другого с похожей ошибкой на busybox,

Кто-нибудь знает способ для меня пинговать быстрее, чем 1 в секунду, я надеюсь, что понизится до 0,1 или 0,05 секунд, если это вообще возможно.

заранее спасибо

Решение

Если кто-то ищет ответ, решение, которое я придумал, было намного лучше. Если вы напишете скрипт для проверки связи с флагом -c 1 и сами подсчитаете количество ошибок, вы сможете выполнить проверку намного быстрее.

Пример:

fails=0
for i in `seq 1 20`
do
  x=`ping -c 1 192.168.1.1 | grep received | cut -d' ' -f4`
  if [ x -eq 0 ]
  then
    fails=$(($fails+1))
  fi
done
echo $fails fails

сделанный

1 ответ

Вы правы в том, что вам нужно изменить файл ping.c. Как вы определили, BusyBox ping не поддерживает ключ -i.

Для какой платформы вы это строите? ПК, встроенная система?

Вариант 1: измените ping.c из BusyBox и перекомпилируйте BusyBox. Для этого вы должны использовать make в корне проекта BusyBox.

user @ linux: ~ / busybox-1.19.2 $ make

Вариант 2: может быть проще и проще оставить BusyBox в покое и получить ping.c из другого архива, такого как iputils. Это поддерживает ключ -i и снижается до 0,2 секунды. Чтобы скомпилировать ping.c:

user @ linux: ~ / iputils-s20101006 $ make ping

Другие вопросы по тегам