给孩子们打电话! 现在,安德烈叔叔将讲有关NTP(网络时间协议)的圣诞节恐怖故事。
大约两年前,即2017年1月16日,星期一,来自局外人的一张有趣的票来到了我们的漏洞报告
BitFolk系统。 Sender介绍自己担任NetThings UK Ltd.的首席软件工程师。
主题:IP 85.119.80.232
上的NTP请求
你好
这似乎很奇怪,但是我需要通过IP地址85.119.80.232
配置NTP服务器。
85.119.80.232
什么
85.119.80.232
? 这是用于为我们的客户提供服务的NTP服务器之一的IP地址。 出票前几周,该服务器也是
NTP Pool项目的一部分。
这是重要的词“是”。 2016年12月,我将BitFolk NTP服务器从公共池中移出,并阻止了它们供外部人员使用。
我这样做是因为由于
Snapchat NTP错误,导致大量流量流向了他们。 实际上,这并不会造成任何大问题,只是这么大的流量从固定大小的
Jump网络存储库中推送了有用的信息,我不想在假期期间处理它,因此我只是关闭了对该服务的公共访问。
NTP?
本文
发表在Hacker News上 ,他们在一些评论中要求我简要解释什么是NTP,因此我在此非技术部分中添加了内容。 如果您知道该技术,则可以跳过它。
网络时间协议是一种计算机可以使用几台其他计算机(通常在不同管理员的控制下,从完全不同的Internet上的Internet)准确确定当前时间的方法。 当使用多台不同的计算机时,其中一些会给出不正确的结果,某些可能会损坏或表现为恶意,但是协议可以识别“错误的”时钟并仅考虑更准确的多数的结果。
假设NTP是按层次结构使用的:用于确定确切时间的硬件直接连接到多个服务器:原子钟,GPS等,它们被称为Stratum 1服务器。第二级服务器将时间设置在Stratum 1服务器上,它们可以提供更多服务客户等。
过去,很难找到负担得起的NTP服务器。 在您自己的公司中,可以安装其中一台或两台服务器,但实际上,您必须至少参考3–7台服务器,而来自不同组织的服务器更好。 在大学环境中更容易:您可以与同事交谈并交换对NTP的访问。 但是随着Internet的发展,包括商业公司和个人在内的查询数量也在增加。
NTP池项目得以解救。 通过一个简单的Web界面,那些愿意的人可以将自己的NTP服务器添加到池中:它们通过公用的DNS区域共同提供服务,并提供了一些基本的负载平衡方法。 允许一个人从池中指定三个名称,并且他免费获得了三个不同的(不断变化的)NTP服务器。
假定商业公司将申请一个单独的“供应商区域”。 他们为项目分配了少量资金-并为其产品分配了DNS区域,因此池管理员可以更轻松地引导流量。
不幸的是,许多公司没有费心去研究这些细微之处,而只是使用公共池区域。 NetThings UK Ltd. 进一步走错了方向-并从池中获取IP地址,直接使用它并假定它始终可用。 实际上,这项免费服务是由BitFolk捐赠给共享池的,由于暂时的不便,该服务被禁用了。
回到我们的故事...
他们想要...什么?
领先的软件工程师继续:
最近,NTP服务已关闭,我想知道是否有任何方法可以在指定的IP地址上再次启动它。 通过IP地址的当前所有者,或者通过将当前计算机迁移到另一个地址,以便我们可以租用85.119.80.232
。
嗯...
我知道这是一个奇怪的要求,但是我可以向您保证这是真诚的。
那行不通
显然,我们所有的客户端都将
85.119.80.232
用作解析器和NTP服务器。 要求他们重新配置以将地址租给NetThings UKLtd。 -这不是一个选择。 因此,我只是删除了防火墙,所以
85.119.80.232
开始为NetThings UK Ltd.工作,直到我们确定可以做什么为止。
然后,我提出了一些相关的问题来确定必须提供的服务范围:
- 您使用多少台服务器?
- 您知道他们的IP地址吗?
- 他们什么时候需要NTP服务器?需要多长时间?
- 是否可以强迫他们(通过供应商区域)正确使用池?
深入森林
对某些问题的回答非常令人失望。
该服务器部分由最初安装RTC的生产系统使用。 不幸的是,GPRS SIM漫游上有相当多的设备(约有500个设备,每周有NTP呼叫)。 我不知道在这种情况下是否有可能依靠APN的原始IP地址来配置防火墙(我将检查)。 我们也无法远程更新这些设备上的固件,因为它们的流量配额为每月5 MB。 我们可以在本地更新它们,但这将花费数月而不是数周。
显然,NetThings UK Ltd生产了远程控制的恒温器,大型零售区域的照明控制器等。似乎他们将BitFolk IP地址之一写入了固件,这些设备无法识别或远程更新。
是的,在任何情况下,如果没有外部时间源,这些设备的时钟将在两周内开始明显偏移。
顺便说一句,他们通过
在工厂中本地提升其BitFolk IP地址来设置开始日期/时间 ,从而解决了使用硬编码IP地址的问题
。我承认,当时有些诱惑力来识别这些设备,为它们提供完全不正确的数据-并查看是否有些商店在一天中的某个奇怪时刻开始开灯和关灯。
每周??
我们发来的NTP呼叫每周开始,而客户端没有负载平衡。 这导致在每个星期日的同一时间大约19:45发出请求流。
是的,他们让每个身份不明的设备在每个星期日晚上以两分钟为间隔敲一个硬编码的IP地址。
首席软件工程师非常担心它们导致了我前面提到的过多流,但是我确信这绝对是Snapchat错误。 实际上,他们的500台设备与背景噪音从未有过不同。 事实证明,半千个SNTP请求是相当轻的负载。 在问题出现之前,他们做了两年多的时间。
当然,我注意到他们的运气是,我们很快注意到了这个问题,否则一切都将以
威斯康星大学针对Netgear的案例结束(当Netgear设备向大学NTP服务器发送大量请求时-大约是200万美元)。 跨]。
因此,我感到非常非常糟糕。 如果造成您的问题,我非常非常抱歉。
原谅 我必须指出,在这段时间里,与首席工程师一起工作是一件很愉快的事情。
我们达成协议
实际上,BitFolk出于礼貌向客户提供NTP服务,这不是一项付费服务。 毕竟,如果有公共游泳池,谁来付钱呢? 商业公司通过订阅供应商区域来维护池是正确的。
但是NetThings UK Ltd. 处于困境中,禁止访问NTP服务器将给他们造成严重的财务损失。 那时,我可能会要求很多钱,但是我(毫无疑问,这损害了我的口袋)这完全是错误的。
首先,我提供了两个小时的咨询服务,以支付已经完成的更改防火墙的工作。
此外,我建议每月支付一小时的咨询费用,为期12个月,以支付继续操作NTP服务器的费用。 当然,我每月不会花费一个小时来烦恼NTP,但是这种与我的日常工作的非标准偏差需要一定的费用。
我真的想指出,这不会永远存在:
最后,这很好。 您现在似乎处在困境中,有一种向您收取最高金额(无论如何都超过840英镑+增值税)的诱惑,但对我来说似乎不公平。 但是,向第三方提供NTP服务不是我们的业务,因此我们希望合同在12个月内终止。 如果您最终不得不扩展此服务,则意味着我们尚未为您收取足够的费用,我们将提高价格。
看起来合理吗?
NetThings UK Ltd. 很高兴地同意这样的提议。
再次感谢您提供的信息和帮助。 您从大量的愚蠢和无用的工作中救了我。 我们有足够的时间来修复所有问题。
路上的颠簸
将来,我只与一位领先的软件工程师进行过一次交谈。 其余函件与财务人员联系,主要是因为NetThings UK Ltd.。 我不想按时付款。
NetThings UK Ltd.全年 付了四张账单中的三张。 在每种情况下,我都试图向他们收取法定的滞纳金。
令人失望的年度业绩
2017年即将结束时,我问了一位领先的软件工程师,他们设备固件中IP地址的情况如何,他们如何成功解决了问题?
简而言之,我们的大多数产品都设法摆脱了使用固定IP地址的麻烦。 仍然需要更新另一个项目,此后将完全停止使用这种固件的新单元的生产。 但是,我们仍然有大约1,000个不易更新的产品:它们将继续每周发送NTP请求到一个固定IP地址。 因此,回答您的问题:是的,我们将在2018年1月仍需要此服务。
有点可悲,因为一年前有“大约500个”设备。 尽管全年都在努力,但这个数字似乎已经翻了一番。
仅此一项就足以增加费用,由于付款方面的定期拖延,我仍然要这样做。 两个月前,我已经通知他们价格会翻倍。
你想吵架吗?
报告价格翻倍后约15周,NetThings UK Ltd. CFO 问为什么发生这种情况,同时报告了一笔逾期付款的汇款情况:
日期:2018年2月21日星期三14:59:42 +0000
已经付款了,但是您能解释一下价格翻倍的原因吗?
我很高兴再次详细解释她为什么加倍。 作为回应,首席财务官试图就我同意的年度固定价格达成一致,但要提前支付年度费用。
我的理由是,价格上涨主要是由于他们延迟付款:它们花费了太多时间,因此,如果我节省了季度付款,则需要在必要时能够收取更多费用。 我认为,如果他们想要担保,则必须每年支付一次。
没有回应,因此按季度继续付款。
故事到此结束
2018年11月20日,我们收到了
德勤的来信:
Netthings Limited-管理中(“公司”)
公司编号:SC313913
[...]
活动终止
该公司于2018年11月15日停止运营。
调查中
作为资产经理职责的一部分,我们正在调查哪些资产属于公司,哪些资金可以归还债权人,以及公司的经营方式。
然后12月21日:
根据1986年《破产与破产法》第51(1)(b)款,资产管理人无需召开债权人会议,除非公司有足够的资金分配给无抵押债权人,或者如果SADM_127要求无抵押债权人召开会议债务成本的10%或更多。 无担保债权人之间没有分配资金,因此将不召开会议。
幸运的是,他们唯一的未付帐单是从11月开始提供服务,因此已付清所有款项。
这就是NetThings UK Ltd(物联网的勇敢征服者)的故事,他认为公共NTP池只是Internet的组成部分,每个人都可以免费使用它,只需随机选择一个IP地址并在遍布其的数千个设备中对其进行保护国家/地区,无法进行远程更新。
不幸的是,这种信念加上不断创新的不愿按时支付任何费用的方式,不足以维持偿付能力。