NTPおよびSNTPプロトコル:違いとその仕組み

  NTP(ネットワーク 時間プロトコル) & SNTP(簡易ネットワークタイムプロトコル) インターネットが適切に機能するためのXNUMXつの基本的なプロトコルです。 どちらのプロトコルでも、コンピューター、サーバー、スイッチ、ルーター、スマートTV、またはインターネットに接続されているその他のデバイスなど、ネットワーク上のすべてのデバイスで、問題が発生しないようにシステム上で正しい時刻を設定できます。ブラウジングするとき。 オンラインまたは任意のタスクを実行します。 今日、この記事では、両方の時間プロトコル、NTPとSNTPの違い、およびそれらがさまざまなデバイスでどのように構成されているかについて詳しく説明します。

NTPおよびSNTPプロトコル

NTP(Network Time Protocol)とは何ですか?どのように機能しますか?

NTPプロトコルは、 異なるコンピュータシステムの時計を同期させる 、NTPはコンピューターやサーバーで機能するだけでなく、ルーター、スイッチ、 無線LAN アクセスポイントおよびファイアウォールなどのあらゆるタイプのネットワーク機器。 NTPは、1981年に誕生した最初のインターネットプロトコルのXNUMXつであり、現在でもさまざまなコンピュータシステムのクロックを同期するために使用されています。 NTPプロトコルを使用すると、世界中に展開され、インターネット経由でアクセスできるさまざまなNTPサーバーと時刻を同期できます。さらに、NTPプロトコルを使用すると、待ち時間が非常に長い場合や変動する場合でも、時刻を同期できます。 、この遅延によるタイムラグを回避するメカニズムが組み込まれているためです。

NTPプロトコルは、 世界中のさまざまなNTPサーバーと通信するためのポート123のUDPトランスポート層プロトコル 。 非常に重要な詳細は、このNTPプロトコルが送信元ポートと宛先ポートの両方でUDPポート123を使用することです。したがって、背後にデバイスがある場合は、それを考慮する必要があります。 ファイアウォール または、ローカルネットワークのさまざまな管理可能なスイッチにアクセスの制御リストがある場合。 NTPプロトコルを使用するデバイスがあり、さまざまなネットワーク攻撃が有効になっている管理可能なスイッチがある場合は、「」を無効にする必要があります。 ブラットアタック 」NTPプロトコルが正しく機能するための攻撃。 この「Blatattack」は、送信元ポートと宛先ポートが同じTCPまたはUDPパケットをブロックすることで構成されます。これは、UDP123の送信元ポートと宛先ポートを使用するときにNTPが行うこととまったく同じです。 したがって、ネットワークを構成する際には、それを考慮に入れる必要があります。

NTPの現在のバージョンはバージョン4です。これは、時間の経過とともに、この重要なプロトコルが更新および改善されてきたためです。 NTPプロトコルは、うるう秒のサポートを含むUTCタイムスケール(協定世界時)を利用します。さらに、最新バージョンのNTPでは、インターネットを介して最大10ミリ秒の差で同期を維持できます。ローカルネットワークでは、ネットワークの構成方法によって異なりますが、最大200マイクロ秒の精度に近づくことができます。 次のようなさまざまなオペレーティングシステムで Windows, Linux またはmacOSの場合、タイムサーバーと正しく同期するためにNTPプロトコルが常に実行されています。

時間の経過とともに、NTPプロトコルに関連するセキュリティの問題 さまざまなオペレーティングシステムでの実装、さまざまなコンピュータのNTPクライアント、および使用しないプロトコル自体の固有のセキュリティの両方で検出されています。 メッセージ交換のためのあらゆるタイプの認証またはデータ暗号化。 NTPサーバーは、中間者攻撃の影響を受けやすく、パケットが暗号で署名されていない限り、コンピューター自体にも同じことが言えます。MitM攻撃を実行して、エンドコンピューターの時刻を変更する可能性があります。 NTPプロトコルは、すべての情報をプレーンテキストで送信します。暗号化、信頼性、またはデータの整合性がチェックされていません。 これを回避するために、ネットワークタイム セキュリティ (NTS)プロトコルが設計されています。これは、通信を保護するためにTLSとAEADを使用するNTPの安全なバージョンであり、システムの時刻を誤って構成するためにNTPサーバーになりすますことはできません。

システムに正しい時刻がない場合はどうなりますか?

コンピュータシステムで正しい時刻を維持することは非常に重要です。そうしないと、一部のソフトウェアが機能せず、コンピュータ攻撃を実行する可能性さえあります。 オペレーティングシステムで時刻が正しく構成されていない場合、次の問題が発生する可能性があります。

  • 設定された時間によっては、Webブラウザでインターネットを閲覧できない場合、WebのさまざまなSSL / TLS証明書のエラーが継続的に示されます。
  • 動作するのに正しい時間を必要とする一部のソフトウェアの問題。
  • WindowsUpdateで問題が発生する可能性があります。

ルーターやファイアウォールでは、正しい時刻がないということは、確立できないことも意味します VPN デジタル証明書が使用されている場合はトンネルを作成します。これは、証明書の作成または有効期限が切れている可能性があるためです。さらに、すべてのレコードが誤った時刻で表示されるため、これも考慮する必要があります。アカウント。 NTPで管理可能なスイッチの場合、同じものがあり、日付と時刻でレコードを正しく表示できませんでした。また、アクセスポイントのオンとオフを切り替えるようにPoEをプログラムすることもできませんでした。 最後に、被害を受ける可能性のある別のネットワーク機器はWiFiコントローラーです。時間が正しく構成されていないため、トラフィックが何時間あるかを確認できませんでした。

ご覧のとおり、特定のコンピュータシステムで正しい時刻がない場合、多くの問題が発生します。

SNTP(Simple Network Time Protocol)とは何ですか?どのように機能しますか?

  SNTP (Simple Network Time Protocol)プロトコルは NTPプロトコルのそれほど複雑でない実装 、同じプロトコルを使用し、同じ目的を果たします。 このプロトコルは、NTPプロトコルの全機能が必要とされないホームルーターやホームスイッチなどの組み込み機器で広く使用されています。 現在使用されているプロトコルはSNTPv4であり、RFC4330で定義されています。

SNTPv4を使用すると、現在および以前のバージョンのNTPとSNTP自体を使用するサーバーとクライアントに簡単にアクセスできます。アクセスはUDP / TIMEプロトコルと同じであるため、適応は非常に簡単です。 このプロトコルは、統合されたクロックラジオを含む専用サーバー構成で動作するように設計されており、さらに、遅延が改善および制御されており、正確な時刻を数マイクロ秒で問題なく入力できます。

SNTPは時間の経過とともに進化し、パフォーマンスが向上し、基盤となるさまざまなプロトコルとの互換性も向上しています。 たとえば、以前のバージョンと比較したSNTPv4の唯一の重要な変更は、IPv6プロトコルに適応するためのヘッダーです。 いくつかのオプションの拡張機能も基本NTPに追加されました。現在、世界中に存在するさまざまなNTPクライアントでNTPサーバーを構成すると、NTPプロトコルとSNTPプロトコルの両方を使用して操作と情報交換を実行できます。互換性があるので操作は同じです。

NTPとSNTPの違い

NTPとSNTPの主な違いは、後者は非常に長期間にわたっていかなるタイプの状態ストレージも必要としないことです。これは、NTPプロトコルが必要とすることです。 ネットワーク管理者にとって非常に重要な違いは、ファイアウォールでのトラフィックを許可または拒否したり、管理可能なスイッチでアクセス制御リストを作成したりするための通信の操作です。

NTPプロトコルはポート123でUDPプロトコルと連携します。このUDPポート123は、送信元と宛先の両方で通信​​に使用されます。 前に説明したように、スイッチで「Blatattack」をアクティブにしていて、純粋なNTPプロトコルを使用するデバイスを使用している場合、知らないうちにNTPからのトラフィックのみを確実にブロックします。

SNTPプロトコルは、通信であるポート123のUDPプロトコルと連携します。 ソースとしてランダムUDPポートを使用します 、および宛先としてUDPポート123。 SNTP標準によれば、多重化を実行するために送信元ポートは0以外にすることができます。もちろん、サーバーは、NATに問題がないように、最初の通信でクライアントが選択した送信元ポートで正しく応答します。ルーターがあります。 この重要な変更の目的は、NATに問題が発生しないように特定のクライアントを識別できるようにし、BlatAttackがアクティブになっているスイッチが通信をブロックしないようにすることです。

これまで見てきたように、NTPプロトコルとSNTPプロトコルは、コンピューターシステムにとってXNUMXつの基本的で非常に重要なプロトコルであり、デスクトップオペレーティングシステムまたはさまざまなネットワーク機器のいずれかで時間を正しく構成することが不可欠です。