"О буднях техподдержки"
Я хочу рассказать историю службы техподдержки, которая может показаться
невероятной далеким от этой работы людям. Но мне хочется изложить ее
широкой аудитории - хотя бы потому, что это прекрасная рассказка под
выпивку в коллективе коллег. Кое-что слегка приукрашено, но это - для
красоты рассказа, все важные детали сохранены.
Несколько лет назад я работал в службе технической поддержки электронной
почты университетского кампуса. Мне позвонил заведующий кафедрой
статистики.
\"У нас проблема с отправкой почты с кафедры\"
Я:\"В чем проблема?\"
\"Мы не можем послать электронную почту больше чем на 500 миль\"
Я роняю чашку с кофе. \"Повторите, пожалуйста?\"
\"Мы не можем отправить письмо адресатам, находящимся далее 500 миль
отсюда\", повторяет завкафедрой. \"Точнее, 520. Но не дальше\".
Я пытаюсь собраться с мыслями. Крыша начинает медленно меня покидать, но
нельзя позволить крыше уйти в разговоре с завкафедрой. Даже завкафедрой
статистики. \"Хммм... Понимаете, принцип доставки электронной почты не
зависит от расстояния. Почему Вы думаете, что не можете отправлять почту
далее 500 миль?\"
\"Я не думаю, я знаю\" - довольно жестким тоном заявляет завкафедрой.
\"Когда мы впервые это заметили, несколько дней назад...\"
\"Вы ждали несколько ДНЕЙ?\" - перебиваю я уже слегка дрожащим голосом -
\"и вы обходились без почты?\"
\"Нет. Мы могли отправлять письма, но...\".
\"Но не далее 500 миль, сэр? Но почему же Вы не позвонили раньше?\"
\"Ну, у нас не было достаточного количества данных до сегодняшнего
дня\".
Ну да. Кафедра статистики, как-никак. О Господи...
\"Ну, так или иначе - я попросил наших геостатистиков разобраться.\"
Так. Геостатистики.
\"... и у них получилась карта, показывающая расстояние, на которое мы
можем отсылать почту. Чуть больше 500 миль. На некоторые адреса,
находящиеся ближе, мы тоже не можем отправить почту с первой попытки -
но дальше 500 миль мы не можем отправить ничего вообще\".
\"Я понял, сэр\". Крыша-таки решила меня оставить. \"Когда это началось?
Вы сказали - несколько дней назад. Вы перенастраивали Ваши сервера в
последнее время?\"
\"Да, приходили ребята от производителя, пропатчили сервер и
перезагрузили его. Но я специально у них спросил - они говорят, что
почты это никоим образом не коснулось\".
\"Хорошо, давайте я посмотрю, что присходит, и перезвоню Вам\" - ответил
я, искренне надеясь, что так не шутят даже на Первое Апреля - а сегодня
далеко не Первое Апреля. Хотелось догадаться, кто из моих знакомых мог
устроить подобное представление. Нууу... Для начала я залогинился на
сервер их кафедры и отправил несколько пробных писем. Все это
происходило в Северной Каролине, и все письма моментально вернулись ко
мне в ящик. Ричмонд, Атланта, Вашингтон - сработало. Принстон (400 миль)
- сработало.
Далее я попробовал послать письмо в Мемфис (600 миль). Отлуп.
Бостон, отлуп.
Детройт, отлуп.
Я открыл адресную книгу и начал пытаться сузить круги. Нью-Йорк (420
миль) - работает, Провиденс (580 миль) - отлуп.
У меня появились сомнения в собственной вменяемости. Я решил попробовать
отправить письмо своему другу, живущему в Северной Каролине, но
работающему с провайдером в Сиэттле.
Благодарю Тебя, Господи. Отлуп. Если бы оказалось, что прохождение писем
зависит от того, где находится человек, их получающий - я бы сам, по
собственной инициативе и с гордо поднятой головой пошел бы сдаваться
санитарам.
Поняв, наконец, что завкафедрой не бредит, я решил посмотреть на
sendmail.cf. Вполне нормальный sendmail.cf. Знакомый даже.
Я сравнил его diff\"ом со стандартным sendmail.cf у меня на диске. Он не
изменялся. Это был ровно тот же sendmail.cf, который я делал
собственноручно.
Но опцию \"FAIL_MAIL_OVER_500_MILES\" я не включал, это точно.
Каюк. Ну что еще попробовать? telnet по 25-му порту на сервер этой
гребаной кафедры.
Сервер радостно отвечает, как ему и положено - blah-blah-blah, я,
говорит, SunOS.
Стоп-стоп-стоп... SunOS sendmail? Sun тогда поставлял со своей
операционкой sendmail 5, хотя все нормальные люди уже работали с
sendmail 8.
Поскольку я - все-таки неплохой администратор, почта у меня ходила под
sendmail 8. Ну и опять-таки - поскольку я - человек, приученный к
порядку, я переписал sendmail.cf с нормальными, понятными именами
переменных и опций. Что с переменными и опциями делал sendmail 5, вы
должны помнить.
Так-так-так... Картинка собиралась. Мне снова захотелось кофе.
Ребятки от Sun пропатчили операционку, но sendmail, в общем-то, тоже ее
часть.
Они удачно закрыли дыры, но sendmail снова стал 5, а не 8. Но в одном
они были правы - sendmail.cf действительно никто не тронул. А какая
разница, для восьмой версии он или для пятой?
Ну, короче говоря. Пятый (по крайней мере, в варианте Sun\"а) -
нормально отрабатывал sendmail.cf от восьмого.
Рулсеты-то не изменились.
Но вот опции настройки, такие неприлично длинные - он считал чуть ли не
комментариями. Клал на них. А откомпилирован он был без настроек по
умолчанию.
И, как честный человек, не найдя чего-то в sendmail.cf, он устанавливал
это в 0.
Одна из успешно установленных в ноль настроек - таймаут для соединения с
удаленным SMTP - сервером. Поигравшись с этим сервером, я понял, что
\"ноль\" по его мнению - это около трех миллисекунд.
Так. Ага...
Сетка наша уже в то время была на коммутаторах, и задержек практически
не имела.
Задержки снаружи - это, в общем. Было понятно.
Ага. Скорость распространения электромагнитной волны.
ОООПС....
Умножаем время на скорость света, и получаем... и получаем...
558.84719 Пятьсот пятьдесят восемь миль.
http://www.seanm.ca:70/0/nerd/500mileemail.txt
Статистика голосований по странам
Статистика голосований пользователей
Чтобы оставить комментарии, необходимо авторизоваться. За оскорбления и спам - бан.