nixp.ru v3.0

20 января 2017,
пятница,
00:35:56 MSK

DevOps с компанией «Флант»
Аватар пользователя Curu3MyHg
Curu3MyHg написал 30 октября 2005 года в 00:55 (736 просмотров) Ведет себя как мужчина; открыл 41 тему в форуме, оставил 896 комментариев на сайте.

Я, вероятно, оочень сильно туплю.. Но, блин, подскажите мне, как заставить этот долбаный ping работать похожим на виндовый пинг образом? Мне всего-то надо выставить timeout для пакетов. Чтобы, если он превышен, в консоль выводилось что-то типа request timed out. Нашел, вроде, в мане опцию -W, но что-то она как-то не так работает.. Или я не понимаю, как она должна работать.

Мне надо поставить таймаут в одну секунду. Подскажите, как это сделать?

Genie

виндовый пинг эквивалентен ping -c4w4

Curu3MyHg
Genie
виндовый пинг эквивалентен ping -c4

Нет. И виндовый

ping x.x.x.x -t


не эквивалентен никсовому ping. Виндовый пинг, при паузе в секунду, говорит «request timed out», а никсовый просто притормаживает. По крайней мере у меня.

Проверено на ASP и Mandrake, другого сейчас под рукой просто нет.

Мне надо вывести вот этот самый «timed out» в том, или ином виде.

Genie

шустрик какой.

я в это время тему поправил, когда вспомнил и -w

Curu3MyHg
Genie
шустрик какой.

я в это время тему поправил, когда вспомнил и -w

)))

Genie
виндовый пинг эквивалентен ping -c4w4

Таак.. Ну, хорошо, допустим я забыл английский. А буква w — она прописная должна быть, или заглавная?

Слушай, если не сложно, напиши, плиз, как оно должно выглядеть в окончательном варианте. Мне надо будет пустить бесконечный пинг, с выводом в текстовый файл, чтобы если пакет идет дольше, допустим, секунды, в файл выводилось что-то типа «request timed out». А с опцией -w что-то у меня ни черта не получается.. Кстати, а четверка после -w что означает? У меня не меняется ничего, если я вместо четырех ставлю что 200000, что 0.0000002..

P.S. На ман я уже забил.. В смысле, он мне не помог.

Genie

ну, строго говоря, -w — это сколько вообще должно выполняться в секундах пингование…

тебе же, тогда, как оно понятно сейчас, надо что-то типа

$ ping -i2 -W2 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
From 192.168.0.2 icmp_seq=1 Destination Host Unreachable
From 192.168.0.2 icmp_seq=2 Destination Host Unreachable
From 192.168.0.2 icmp_seq=3 Destination Host Unreachable
From 192.168.0.2 icmp_seq=4 Destination Host Unreachable
From 192.168.0.2 icmp_seq=5 Destination Host Unreachable
From 192.168.0.2 icmp_seq=6 Destination Host Unreachable
From 192.168.0.2 icmp_seq=7 Destination Host Unreachable
From 192.168.0.2 icmp_seq=8 Destination Host Unreachable
From 192.168.0.2 icmp_seq=9 Destination Host Unreachable
From 192.168.0.2 icmp_seq=10 Destination Host Unreachable
From 192.168.0.2 icmp_seq=11 Destination Host Unreachable
From 192.168.0.2 icmp_seq=12 Destination Host Unreachable
--- 192.168.0.1 ping statistics ---
13 packets transmitted, 0 received, +12 errors, 100% packet loss, time 24058ms

уж как объединить STDOUT и STDERR — знать должен.. ;)

Curu3MyHg
Genie
ну, строго говоря, -w — это сколько вообще должно выполняться в секундах пингование…

тебе же, тогда, как оно понятно сейчас, надо что-то типа

$ ping -i2 -W2 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
From 192.168.0.2 icmp_seq=1 Destination Host Unreachable
From 192.168.0.2 icmp_seq=2 Destination Host Unreachable
From 192.168.0.2 icmp_seq=3 Destination Host Unreachable
From 192.168.0.2 icmp_seq=4 Destination Host Unreachable
From 192.168.0.2 icmp_seq=5 Destination Host Unreachable
From 192.168.0.2 icmp_seq=6 Destination Host Unreachable
From 192.168.0.2 icmp_seq=7 Destination Host Unreachable
From 192.168.0.2 icmp_seq=8 Destination Host Unreachable
From 192.168.0.2 icmp_seq=9 Destination Host Unreachable
From 192.168.0.2 icmp_seq=10 Destination Host Unreachable
From 192.168.0.2 icmp_seq=11 Destination Host Unreachable
From 192.168.0.2 icmp_seq=12 Destination Host Unreachable
--- 192.168.0.1 ping statistics ---
13 packets transmitted, 0 received, +12 errors, 100% packet loss, time 24058ms

Как бы вот..

$  ping -i2 -W2 192.168.254.1
PING 192.168.254.1 (192.168.254.1) 56(84) bytes of data.


Эта картинка висит у меня уже минут пять.. Я взял несуществующий в локалке хост. Ы?

Genie
уж как объединить STDOUT и STDERR — знать должен.. ;)

А, кстати, новость для меня.. Я думал, что вывод пинга — он весь на STDOUT идет.. Ну, тот, который меня в данном случае интересовать должен, который к сети относится.

Genie
Эта картинка висит у меня уже минут пять.. Я взял несуществующий в локалке хост. Ы?

ммм.. я как бы тоже несуществующий брал…

в общем, посмотри на несколько другие ping-и.

у меня стоит не ping, а iputils-ping может это и влияет

Curu3MyHg
Genie
ммм.. я как бы тоже несуществующий брал…

в общем, посмотри на несколько другие ping-и.

у меня стоит не ping, а iputils-ping может это и влияет

Видимо, это особенности Debian. Дошел вчера до дома — действительно, все работает..

Curu3MyHg

Во, блин. Нифига не работает. Но есть мысля одна — скажите, может я прав..?

Destination host unreachable — значит мы получили откуда-то ответ, о том, что хост недоступен. Хорошо, когда дело происходит в своей подсети, до первого роутера. Тогда отвечает своя же сетевушка. А если пингуем хост из другой подсетки — ответить некому. Роутер молчит. Вот. Поэтому и вывода нет никакого.

Request timed out — это ж не ответ от хоста или от своего интерфейса. Это просто констатация факта. Причем, насколько я понимаю, самой программой ping в виндовом её варианте.

Вопрос: как заставить никсовый пинг вести себя также? Не переписывать же его..

Any_Key

опции -WХ где Х это время в секундах думаю достаточно, только вот не ругается оно просто говорит что пакеты пропали.

Проверено на сайте с очень долгим ответом играясь с циферкой.

а впринципе если-бы TTL работала как задумано(?) то она бы помогла, а пока фигушки :-(

Кстати может в IPv6 этот фокус (указать сколько времени пакету жить в секундах, не прыжках) проходит, у кого нибудь есть опыт?

Curu3MyHg
Any_Key
а впринципе если-бы TTL работала как задумано(?) то она бы помогла, а пока фигушки :-(

Грустно.. Очень грустно.. Может есть ещё идеи?

Curu3MyHg

Народ, неужто всё правда…?

Longobard
Curu3MyHg
Вопрос: как заставить никсовый пинг вести себя также? Не переписывать же его..

Why not? Он прост как полено.

Если совсем лень переписывать -в книге Стивенса «UNIX: разработка сетевых приложений» был пример пинга. Качаешь с сайта piter.com сырцы к этой книге, ставишь там задержку 1 секунда и нужное сообщение, собираешь — и готово :)

Curu3MyHg
LONGOBARD
Why not? Он прост как полено.

Если совсем лень переписывать -в книге Стивенса «UNIX: разработка сетевых приложений» был пример пинга. Качаешь с сайта piter.com сырцы к этой книге, ставишь там задержку 1 секунда и нужное сообщение, собираешь — и готово :)

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

Но, в принципе, можно заморочиться.. И книжка у меня где-то валяется, и исходники я уже слил (сразу, как книжку купил). Осталось только C вспомнить, точнее даже освоить, так как на сях я написал дай Бог две-три тысячи строк за всю жизнь.. Ну, не было у меня C ни в институте, ни в школе.. Да и ваще, ну, не программер я! =)

Longobard
Ну, не было у меня C ни в институте, ни в школе..

не поверишь, у меня тоже не было. Да и какой такой С/С++ в шестом классе? :)

Да и ваще, ну, не программер я! =)

А вот это ты зря так :)

Curu3MyHg
LONGOBARD
не поверишь, у меня тоже не было. Да и какой такой С/С++ в шестом классе? :)

Ну, у меня, например, в шестом классе был gw-basic и logo ;))

LONGOBARD
А вот это ты зря так :)

Может быть.. Пожалуй, ты прав..

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.