Comments 122
Сколько денег в общей сложности потеряно на штрафы от валютного контроля? Как вообще для валютного контроля оформляется ситуация «платежей больше не будет в связи с банкротством контрагента»?
А не надо было имя переводить.
Меня этот Андрей смутил, после открытия оригинала выяснилось, что это все же Эндрю.
Но история хорошая, указания адресов лучше даже в своих сетях избегать по возможности.
11 лет я читаю Хабр и, кажется, все 11 лет в каждом посте-переводе найдётся хотя бы один человек, который не понял, что это перевод.
Я и сам в текущем интерфейсе это не всегда сразу понимаю.
Я на хабр прихожу из rss-подписки — там сразу в заголовке статьи есть слово «перевод».
это если руки переводчика были достаточно прямыми для оформления поста как «перевод». по моему мнению 10%-20% статей идут без этой пометки.
Ну здесь-то оформлено. Просто на сайте «перевод» не так ярко светится, можно и промотать.
Все эти переводы сразу видны по стилистике. Переводчики не сильно себя утруждают, и потому прекрасно видно иностранный текст, написанный русскими буквами.
Понял, что это перевод, ещё на четвёртом абзаце, сразу же возмутился этим «дядей Андреем». Вдобавок ещё и сам Андрей, так что тем обиднее, когда имена подменяют. Уж не говоря о том, что это в принципе признак непрофессионализма.
Не согласен. Адаптировать имена, расстояния, валюты и прочие культурно-зависимые вещи, — это хорошо и правильно и упрощает чтение.
По поводу расстояний, весов и прочего — согласен, потому что это переводится однозначно и непосредственно. И то, в ряде случаев имеет смысл оставить условную имперскую систему мер для атмосферы. По поводу валют: серьёзно? По какому курсу? На какую дату? Удачи перевести в тексте 17 века золотые английские фунты в российские червонцы. Имена имеет смысл адаптировать только в художественных текстах, где это способно передать авторский замысел (фанатам Жоры Гончара Гарри Поттера есть много, что сказать по этому поводу), в остальном адаптировать имена ну совсем бред же. У меня вот наоборот о такие вещи взгляд постоянно спотыкается.
А не надо им показывать инвойс заранее)
P.S. я про гипотетическую ситуацию — оригинал я читал еще на HN.
Да уж… рука-лицо… х@@к-х##к и в продакшн.
Аппаратные часы стоят копейки. Экономить на промышленном, блджад, контроллере целых полбакса?
Найти денег, чтобы заплатить инженеру, чтобы тот почитал про NTP, и сэкономить на чтении главы про DNS?
Вопрос точности. Аппаратные часы все же не супер точные и имеют какоую-то ошибку.
Для контроллера освещения (и для нагревателя тоже), КМК, достаточно точности в единицы минут. Даже не буду считать, за сколько десятилетий самый дешевый кварц убежит на 10 минут.
То есть в самом-самом плохом случае самого-самого дешевого RTC хватит на гарантийный срок. Но это плохое решение.
Никто не обратил внимание, что эти ихние контроллеры работают по GPRS? А я слышал, что в GSM сетях тоже используется синхронизация времени… И NTP тут лишнее…
В этой ситуации всё гармонирует: и 4 директора на 1 технаря, и максимально странная реализация синхронизации времени, и невозможность в роуминге обновить прошивку, и что деньги внезапно кончились.
А я слышал, что в GSM сетях тоже используется синхронизация времени… И NTP тут лишнее…

NITZ has been an optional part of the official GSM standard since phase 2+ release 96.

United Kingdom EE (telecommunications company) NITZ available since — (прочерк)


В этой ситуации все гармонирует: и 4 комментатора на 1 специалиста, и максимально странные советы о синхронизации времени.
А у двух других провайдеров из того же списка (Telefónica O2 и Vodafone) — есть. Более того, список очевидно не точный и не полный.
Но в целом да, я с вами согласен — это не универсальное решение.
В Москве несколько раз попадал, что с базовой станции телефону прилетало то неправильное время, то неправильная временная зона. Формально, оператор не предоставляет услугу точного времени… Поэтому на синхронизацию по GSM я бы не закладывался…

Особенно плохо было в моменты приключений с таймзонной в РФ. Приходилось на месяц — два эту фичу в телефоне рубить.

У Мегафона сейчас выяснилось что во многих местах несколько телефонов разных производителей(т.е. не в телефоне дело) просто не смогли синхронизировать время, а часовой пояс вообще странный. Умеет удивлять.
У меня в розетке с таймером и в ваттметре отстают на 10 минут меньше, нежели за год. В ваттметре — сильно меньше, чем за год. Ежели кварц хороший (скажем, секунда в сутки) — получается, что два года. Ежели, конечно, температура комнатная.
В среднем за полгода из тысячи устройств найдется хоть одно (а скорее десятки) с неожиданно сдохшей батареей. И именно у него потеряется внешнее питание. Мы по этой причине вместо батарей ставим ионисторы. Даже если совсем сдохнут, все равно пару часов продержатся (вместо исходных 3 суток).
За столько десятилетий там просто тупо сядет батарейка поддержки времени.
Софтовая реализация через NTP Pool намного дешевле. Тем более, что есть связь.

А по поводу дешёвого кварца — мне часто попадались часы, которые убегали в сторону минимум на минуту в месяц. Это на коммерческих серверах.

Да много лет не хватит.
Вот что интересно, гипотеза вида "а получится ли получить характеристики ХХХ от технологии УУУ доказывается или опровергается моментально, нужно всего лишь глянуть в документацию.

Для генератора Пирса (который на одном ЛЭ) емкость нагрузки в явном виде задает частоту.
Так что, в реале — как минимум в два раза хуже из-за нестабильности емкостей CMOS микросхемы от температуры и напряжения питания.

В общем, нормально идущих дешевых часов я видел ровно одни — видимо звезды случайно сошлись в разводке, типе кристалла и типе шунтирующих конденсаторов.
А так — минут 5 в месяц точно набегает.
У меня дешевый наручный Timex, купленный в 2001 году (правда, в Штатах) не убегает за год даже на минуту. Даже не могу вспомнить, когда последний раз подводил — года 3 назад наверное.
распределенные системы должны иметь не просто точное время, а единое точное время.
Так они там есть. Синхронизация по NTP решает вопрос с точностью в интервалах между синхронизацией.

где изначально установлены RTC.
странные акценты у автора статьи: использовали мои ntp серверы и обанкротились.
перепрошить 1k устройств та еще задача…
Ну не знаю. Для меня акценты такие:

1) Не поняли, что такое NTP

2) Нарушили общепринятые правила коммерческой эксплуатации и здравого смысла (все девайсы ломятся на синхронизацию в один день и час)

3) Настолько не смогли сделать свой продукт конкурентоспособным, что разорились. И NTP здесь вообще ни при чем.

А вообще, я тоже посмеялся в стиле «ну парни дают, ну дают… да я б также сделал!». Но я-то просто ничего не понимаю и вне коммерции, а они вон какие-то штуковины продавали.
Предполагаю, что разработчик использовал ntp с vps, которую ему фирма автора предоставила. Зашил этот ntp в свои устройства, чтобы время было везде одинаковое.
Какое-то время это работало, а потом автор решил не давать ntp никому, кроме своих vps и устройства отвалились.
При проектировании разработчик «устройства управления освещением через GSM», решил что это достаточно тривиальная/дешевая вещь, чтобы обновлять в нем прошивку по воздуху. Или времени было немного, или еще что, а инфраструктура в лице vps уже была арендована и ничто не предвещало…
Тут просто звезды не сошлись, пмсм. Так вот проектируешь, проектируешь, а потом приходит монтажник с кусачками — и твоему «интернету вещей» все.
А в равной (а может даже и более вероятной) степени этот IP мог случайно выпасть по
nslookup pool.ntp.org

и разработчик просто жестко его зашил, чтобы не париться с DNS.
Что такого особенного в адресе 85.119.80.232? Это IP-адрес одного из NTP-серверов для обслуживания наших клиентов

проще добавить свой сервер в ntp.conf, чем настраивать dns для ip на pool.ntp.org?
да и не к pool.ntp.org ntpd обращается, а к списку в своих настройках.

Просто автор ожидал, что разработчик установит собственный ntpd сервер на арендованном vps и обновит прошивку. И вот обновить прошивку оказалось непросто…

Автор вывел адреса ntp из пула. Т.е. обращение к ним м.б. только при явном обращении. Он бы вообще не заметил этот трафик по вечерам воскресений, если бы его до этого не заспамили «багом Snapchat», после чего автор решил «перебздеть» и вообще отрубить внешний трафик на свои ntp серверы
Генерация случайных чисел — слишком важная штука, чтобы полагаться на волю случая.
RANDOM_SEED_DEFAULT — это как раз нормально, все так делают. Откуда-то же нужно взять начальное значение для внутреннего состояния ГПСЧ…
Если в серии из 100500 устройств random инициализируется одинаково — значит у всех он будет выдавать одинаковую последовательность. |А потом на этом устройстве запустят что-то криптографическое…
А надо разделять криптостойкий рандом и обычный. В приведенном куске кода инициализируется обычный, что видно хотя бы по типу переменной seed. Там тупо мало бит для инициализации криптостойкого ГПСЧ.
Ну вообще часто есть мак-адрес и прочие там imei… они хотя бы в теории разные, если не совсем китайские клоны покупать.
Ну я думал, что возможность удаленной перепрошивки, ну как минимум изменения конфигурации — обязательная часть любого проекта где используется много удаленных устройств. Иначе — Прекращение деятельности.
Как мне кажется, если это не твоя система, продаешь штуки отдельным клиентам — необязательно. Нужна перепрошивка — добро пожаловать в сервис или зовите нашего сервисмена в гости.
Нет конечно. Я покупаю гребаный датчик, я не хочу, чтобы производитель в будущем мог удалённо его перепрошить без моего ведома! И изменить конфигурацию тоже.
А вы, я извиняюсь, кто — завод, кинотеатр или торговый центр?

Подходы у частных лиц и организаций ко всему этому отличаются. Настолько, что если вы внимательно вчитаетесь во флагманскую лицензию FSF, то обнаружите, что как раз специально для датчиков, подобных обсуждаемым в статье — там сделано исключение.

Потому что компания не покупает «просто датчик». Она покупает работающий датчик. И заключает договор на обслуживание.

Как производитель может этот датчик обслуживать, не имея возможности сменить на нём прошивку — для меня загадка.

"Как производитель может этот датчик обслуживать, не имея возможности сменить на нём прошивку — для меня загадка."
Приезжает сервис-мен и в личном присутствии все обновляет и проверяет. А то будет — ой, мы там прошивку поменяли, но в ней глюк, недельку работать не будет

И как приезд специалиста спасет от глюка в прошивке? По вашей схеме к «недельке» просто добавится еще то время, что сервисмен будет туда-сюда кататься. А на объектах еще и пропуска могут быть, тогда еще и пролететь с приездом можно случайно.
Он запустит прошивку, проверит её работоспособность. Если что — откатит назад. В случае чего — головой будет отвечать
А, ну это если прошивка совсем не рабочая, такого в принципе быть не должно. А если там небольшой баг всплывает, что гораздо проще пропустить в продакшн (да хоть тот же, что и в статье), тогда опять спеца гонять?
В случае чего — головой будет отвечать

люблю такое — сразу видно старую школу руководителей.
ок, представим, что «всё плохо» и один специалист вам «ответил головой».
Как думаете — быстро ли приедет ему на смену второй? Во-вторых — как быстро после этого заработает неработающее устройство (датчик и т.д.)?
Стиви Джобс находил быстро, хотя считается что в отношениях с подчиненными он был тем еще мудаком.
Балмера вообще все ненавидели, а поди ж ты, за окном в Редмонде очереди стояли.
Что-то я тренд пропустил.
"-2"
Джобс уже не икона?
Ок, кто еще из живых мудаков остался?
На кого держать равнение?
Что-то я тренд пропустил.

В районе чтения правил этого ресурса по-видимому.
Ну так например, что приехавший специалист всё-таки разберётся с местным конфигом и особенностями до того, как что-то делать.
А не так что хренак-хренак и в продакшн сразу для всех.
Это надо нехилую (читай, платную) техподдержку иметь, чтобы специалист еще и разбирался, а не просто «коробки вешал».
И в случае, если вас допускают «вовнутрь железки» чиселко в графе цена получает справа нолик… а то и два.
Цена на подобное техобслуживание отличается на порядок… а то и не на один.

Потому подавляющее большинство предприятий на это не закладывается.
Кинотеатр (а тем более завод) не очень захочет пускать в свою сеть. Заключается договор, по которому происходит ремонт, смазка, чистка, поверка оборудования. Или силами предприятия, или обслуживающей организации (одна на холдинг — для завода объёмы маленькие, а несколько уже имеет смысл себе забрать) или производителем.
Всё зависит от цены. Во многих случаях за желание «никого не пускать в свою сеть» приходится доплачивать столько, что службу безопасности (которая, конечно, тремя руками «за») на время переговоров просят выйти в коридор.
Отличная история, прочитал на одном дыхании.
Спасибо за перевод!
Однако, прайс он им зарядил неслабый. Нажился на чужой беде как таксист на катаклизме.
На самом деле их 500 девайсов никогда не отличались от фонового шума
Кроме того, я предложил оплачивать один час консультаций в месяц в течение 12 месяцев для покрытия расходов на продолжение работы сервера NTP


То есть 12 часов консультации в год, это много? Или ему стоило бесплатно давать использовать свои ресурсы и время?

Нет, он поступил правильно. Потому что сделай он бесплатно, никто бы и не почесался, чтобы исправить. Ну вот реально, никто.

Люди планомерно загоняли себя в жопу и получили закономерный результат. Где тут катаклизм?
Они явно почесались, но не в том месте. Ведь устройств стало в два раза больше.
Если не ошибаюсь, в какой-то серии мультика Утиные истории (Duck Tales) фигурировал некий убер-девайс, делающий копии всего подряд :)
Мне сейчас лень разбираться с НДС в ЮК, но это вряд ли сотни процентов. Давайте посчитаем без него. Итак, предпосылки.

1) У тебя бизнес с как минимум 500 клиентами (или, так как суть неясна, с 500 девайсами)

2) Каждому клиенту-девайсу нужна синхронизация.

Ценник — 840 фунтов в год. Считаем 840/12 = 70, примерно 6100 в рублях. Делим на 500 устройств и получаем добавку в абонентской плате на 12 рублей в месяц. Ну или увеличение текущих расходов на эту сумму.

Или по-другому. Данная услуга преподносилась как «консультация». Не знаю, мне видится, что в той же Москве за 6000 местный консультант уровня того владельца NTP-пула даже попу от стула не поднимет — не окупится.

Плюс, коммерсант схитрил. Сначала говорил про 500 устройств, а потом песня сменилась на 1000 — значит всех все очень-очень устраивало.
Так работа заключалась лишь в настройке файрволла для предоставления доступа к NTP серверу, а в дальнейшем — это были ежеквартальные халявные ~18000 (в рублях) без каких-либо затрат рабочего времени.
Если я правильно понял, то человек владеет сетью и администрирует NTP-серверы. То есть, он оплачивает их эксплуатацию, занимается (при необходимости) настройкой, обновлением, оптимизацией, отвечает на глупые, но вежливые вопросы «ведущих инженеров» и прочая.

Вот такая халява, сэр.
Человек владеет (или работает) в хостинге, который предоставляет клиентам VPS.
В армии нет слова украли беда, в армии есть слово про.... косяк.
Кто-то немножко обложался, кто-то должен заплатить. все более чем честно.

840 фунтов в год — это всё равно намного меньше, чем месячная зарплата программиста и архитектора, которые допустили такой маразм.

Ни QA, ни архитектора, ни CTO / VPoE. Зато 4 человека в совете директоров.

На шесть человек разработчиков, да. Я понимаю, что продажники и прочие менеджеры в такой сфере важны, но уж сколько было юмора на счёт экономии на техническом персонале.
Архитектор им очень нужен.
С архитектором бы точно взлетело — они бы завоевали все рынки мира.
на самом деле нет
У них бы еще быстрее бюджет закончился и еще быстрее слились бы.


ПС. Там уровень стартапа — один электронщик и 5 разрабов, большая часть которых пилила апликуху с нескучными обоями под смартфоны.
Два года (первая запись в блоге — 2017) подергались — не взлетело.
— Официант, сколько стоит капля водки?
— Нисколько!
— Отлично! накапайте мне 2 стакана!
Или они как профессиональные нищие — давить на жалость, получая профит, но не менять своего поведения.
«Попробуйте купить или собрать сами сервер точного времени с синхронизацией от СНС.» — посоветовал бы я, если бы это был не перевод статьи.
Я далек от прошивок, там днс еще не изобрели что-ли? Ну и сурово у них, почти 1к евро за ntp сервер.
На самом деле знаю парней, которые именно что не парятся днс в прошивках. Для них поднимать целую подсистему dns resolver, которая потом ещё и будет глючить (а на gprs она будет глючить, в смысле тормозить), и вешать за собой всё сетевое i/o, а с ним и всю микропрограмму (т.к. никакой асинхронности или многопоточности нет, тупо примитивный поллинг цикл)… В общем, очень небесплатное мягко скажем решение.
Но эти парни, конечно, выкупают себе диапазон ip адресов и ставят свои сервера, плюс имеют возможность смены конфигурации целевых айпишников через SMS, а не шлют пакеты на деревню дедушке.
Есть такая фирма медицинского оборудования Mindray, у нее есть серия прикроватных мониторов для пациентов, которые измеряют медицинские параметры пульс, давление, и тд. Они рисуют красивые графики и пикают, все как в фильмах показывают.
вот такой
image

Эти приборы могут отправлять показания датчиков с пациентов на так называемую Центральную станцию мониторинга, она же ЦСМ. Сама ЦСМ — это обычный комп с windows, на котором запущена программа, которая выводит на монитор графики с каждого прибора. Обычно такой монитор вешается в ординаторской.
Примерно вот так
image

Так вот адрес этой станции должен быть строго 202.114.4.119 или 196.76.0.1 для другой серии модели мониторов. Те адрес локальной сети мониторов всегда будет 202.114.4.0/24
WHOIS для данного адреса сразу выдает авторов сего программного творения. Возможно в этом и есть какая-то логика, чтобы любой прибор, приехавший с пациентом в реанимацию, всегда мог подключиться к серверу, но вопрос, почему был выбран публичный адрес, остается загадкой.
Хм… как это не странно, но, если действительно идея в том, чтобы приборы подключались сами, то наличие публичного адреса вполне обоснованно — он точно не будет конфликтовать с любым другим адресом внутренней сети. Если бы взяли серый адрес, то есть ненулевая вероятность, что по этому адресу внезапно оказался бы какой-то внутренний сервер, что усложнило бы развертывание системы, или вообще создало проблему с прибором, внезапно нашедшем по знакомому адресу что-то не то.
Резервирование публичного адреса практически устраняет эти риски.
Те адрес локальной сети мониторов всегда будет 202.114.4.0/24

Кстати, а что, кроме лени, заставляет это делать? Почему на роутере не прописать для монитора в ординаторской маршруты на 202.114.4.119/32?
Не спорю, что это может быть еще тот геморрой ради одного компьютера заниматься подобным сексом с таблицами маршрутизации (возможно, во многих местах сложной инфраструктуры). Но не то, чтобы прям таки что-то выходящее за рамки…
А что тут не так?
Это получается обыкновенный anycast, точно так же как, например, DNS-сервер гугла — в какой сети бы он ни стоял, имеет публичный адрес 8.8.8.8.
Эм, ну то есть по-вашему всё равно, на какой монитор придёт кардиограмма — в Москве или Урюпинске?
Нет, по-нашему должно быть всё равно, в какую больницу приедет пациент — в Москве или Урюпинске, а кардиограмма должна попасть на монитор именно в этой больнице. Anycast-адресация позволяет решить такую задачу.
Это КРАЙНЕ странно, не похоже чтобы в этом устройстве была большая проблема с ресурсами, как привели выше в комментариях для микроконтроллера, а поэтому, возникает вопрос, почему не использовать стандартную возможность DNS — SRV-запись. Стандартно, легко настраивается, не накладывает каких-то особых ограничений.
А вы уверены, что настроить DNS будет проще, чем маршрутизацию для конкретного адреса? Маршруты как бы можно даже в домашних роутерах прописывать, а вот отдельного DNS-сервера в сети может и не быть вовсе.
А мне всегда было интересно, сколько всего навернётся, если гугл уберёт 8.8.8.8 из общего доступа
Да даже если пинги отключит, уже думаю будет изрядно головняков
Даже когда несчастный www.ru перестал на пинги отвечать служба техподдержки у многих провайдеров взмокла. Через несколько дней вернули.

ya.ru появился публично много позже, чем www.ru — поэтому у многих за годы привычка выработалась.

Ты, судя по фотке, из ИТ тусовки, а whois пользоваться так и не научился.
1998 vs 1999.

Вы слово «публично» пропустили. Кстати, домен www.ru старше. Я к нему обращался сразу, как начал активно пользоваться Интернетом. А было это в 1997 году.

На фоне прочего сетевого апокалипсиса облом в синхронизации времени на паре тысяч датчиков никто не заметит.

Правильно ли я понимаю что оплата за услуги ntp должна была пойти собственникам хостинг-провайдера, а попала в карман инженера?

TLDR. Понимаю, что это авторская статья, но столько лирики ненужной. Достаточно вкратце изложить что произошло, как произошло, какой вред нанесло, что делать чтобы это не происходило с нами. Тчк.
что делать чтобы это не происходило с нами

Помнить, что "В интернете есть всё. Но не всегда." ©

Вообще, странно, что те индустриальные девайсы не были зашиты на DNS-имена глобальных ntp-серваков, например такого 0.pool.ntp.org. Также интересно знать — как часто меняются IP-шники у глобальных серваков? Я так понимаю, что не стОит рассчитывать на долгосрочную работу от первого прорезолвленного IP-шника 0.pool.ntp.org.
Ну вот а теперь представьте что правительство россии сделало
$CHEBURNET_MODE=true
и мы сразу увидим сколько всего навернётся, в самых, казалось-бы, неожиданных областях.
Отвалившиеся заграничные сайты будут только цветочками :)
Они замаются файрвол настраивать, чтобы не отвалились системы обслуживания мерседесов в их гаражах, климат на правительственных дачах, оборудование в кремлёвской больнице.
Они этим заниматься не будут. Будем заниматься мы за наш же счёт.
А разве им поставляет интернеты не отдельная от Ростелекома организация? Ну, Спецсвязь там какая-то (извините, не в курсе подобных тонкостей)? С правительственных резиденций через провода Ростелекома могут быть прокинуты VPN-тоннели, работающие по собственному секретному проприетарному протоколу.

Но вобщем-то Вы правы: в случае $CHEBURNET_MODE=true навернутся сразу средние и крупные бизнесы, которые принадлежат сами знаете кому — их ближайшим родственникам. А родня непоймёт-с.
Only those users with full accounts are able to leave comments. Log in, please.