Как стать автором
Обновить

Если команда «ping ya.ru» кажется слишком длинной…

Время на прочтение3 мин
Количество просмотров18K
В этой статье было замечательно подмечено, как проверить связность с Сетью при помощи ping, если у вас поломался DNS и набор привычного
ping ya.ru
уже не помогает. Если же DNS все-таки работает, то, как выяснилось из комментариев, некоторые используют для пинга www.ru или google.com, но большинство всё-таки предпочитает ya.ru просто потому, что меньше букв писать. Оказывается, благодаря солнечным Узбекистану и Туркменистану букв можно писать ещё меньше.

Всякие «умные» решения вроде заведения каких-то алиасов
alias p='ping somehost.com'
или добавления в /etc/hosts хостов с именами из одной буквы автор сразу отвергает. Это неплохо для собственного компьютера, но не годится, если у тебя сотня машин под MS Windows, Linux, MacOS и ты не знаешь, на какой из них придется запускать пинг в следующий раз.
Но ведь можно просто пинговать 2-буквенные TLD тех стран, у которых есть соответствующая A-запись в DNS (команда в синтаксисе tcsh):

% foreach host ( uz tm pn io ac cm pw ai mn bi )
foreach? ping -qc5 $host
foreach? end
PING uz (195.158.1.25): 56 data bytes

--- uz ping statistics ---
5 packets transmitted, 4 packets received, 20% packet loss
round-trip min/avg/max/stddev = 53.388/83.926/160.753/44.644 ms
PING tm (193.223.78.213): 56 data bytes

--- tm ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 67.435/68.101/68.830/0.523 ms
PING pn (80.68.93.100): 56 data bytes

--- pn ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 69.189/70.391/71.634/0.860 ms
PING io (193.223.78.212): 56 data bytes

--- io ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 66.764/67.755/68.713/0.711 ms
PING ac (193.223.78.210): 56 data bytes

--- ac ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 67.331/68.218/68.734/0.523 ms
PING cm (195.24.192.17): 56 data bytes

--- cm ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 188.291/188.460/188.711/0.141 ms
PING pw (203.199.114.33): 56 data bytes

--- pw ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 214.316/215.609/216.963/1.059 ms
PING ai (209.59.119.34): 56 data bytes

--- ai ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 263.953/288.325/320.875/24.148 ms
PING mn (202.131.0.65): 56 data bytes

--- mn ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 430.495/433.266/436.007/2.267 ms
PING bi (196.2.8.205): 56 data bytes

--- bi ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 802.482/815.234/824.431/7.371 ms


В зависимости от ОС и настроек резолвера, имена совсем без точек могут быть интерпретированы неправильно (к ним автоматически добавится «домен по умолчанию»). В этом случае придётся написать аж на целую букву больше и дописать к 2-хбуквенным именам в конце точку. Например, под MS Windows:
for %h in ( uz tm pn io ac cm pw ai mn bi ) do ping -n 2 %h.
(заметьте дополнительную точку в конце после %h ). Под Windows по невыясненным причинам не резолвился хост mn. А под FreeBSD он резолвится без проблем. Что касается хоста uz., то, как видно, узбеки отвечают не на 100% эхо-запросов. Но есть ещё Туркменистан, Иордания и др.
Теги:
Хабы:
+5
Комментарии15

Публикации

Истории

Работа

Ближайшие события

Weekend Offer в AliExpress
Дата20 – 21 апреля
Время10:00 – 20:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн