WeSeong ログイン
← 記事一覧に戻る
ネットワーク

1. ネットワークの種類、OSI参照モデルの7層、プロトコル(データリンク層、ネットワーク層、トランスポート層)

ネットワークの種類、OSI参照モデルの7層、プロトコル(データリンク層、ネットワーク層、トランスポート層)

内容が長くなってしまい、ネットワーク層のICMPプロトコルから2番目の投稿を作成中です。次の投稿もご確認ください!


Ⅰ. 概要

ネットワークこれは、通信プロセス全体を包括する概念です。物理的な側面から、そうでない側面まで幅広く、その中でもネットワークの種類は、規模によって異なります。 ローカルエリアネットワーク (LAN)これは、一般的に300m以内の通信回線で接続された、メインフレームとワークステーションのグループです。 都市圏ネットワーク (MAN)これは、LANを高速な主要回線として利用する形態で、LANレベルの高速なデータ転送速度を実現します。 広域ネットワーク (WAN)これは、地理的に分散した通信ネットワークであり、LANよりも広い範囲をカバーできる。ネットワークの種類は、回線方式とパケット交換方式があり、今回はパケット交換方式について詳しく見ていきます。 プロトコルそのような場合 OSI (オープンシステム相互接続) の7層モデルこれらのプロトコルは様々な形式で構成される可能性がありますが、まず基本的なプロトコルの概念、機能、種類について理解し、その後、データリンク層、ネットワーク層、トランスポート層のプロトコルについて詳しく解説します。セッション、表現、アプリケーション層のプロトコルについては、後で詳しく説明します。



Ⅱ. ネットワークの種類と構造

ネットワークネット?「ネット」と「ワーク」を組み合わせた言葉で、「ネット」のように互いに密接に、長く繋がっている状態を表します。一般的にはIT業界で使われる言葉ですが、PCやスマートフォンを通じて、ほとんどの人が知っているほど広く使われています。簡単に言うと、ネットワークとは、2台以上のコンピュータやスマートフォンを互いに繋ぐ通信網のことです。ネットワークの種類は、規模によって分類したり、データ転送の方式によって区別したりすることができます。 LAN(ローカルエリアネットワーク)、MAN(メトロポリタンエリアネットワーク)、WAN(ワイドエリアネットワーク)これらは、以下のように分類することができます。


  1. ローカルエリアネットワーク (LAN)

LAN(ローカルエリアネットワーク)は、一般的には家庭でのインターネット利用を考えると、馴染み深いものです。通常は300Mbps以下の通信回線で接続されることが多いですが、家庭内ではルーターを使用することで、電波や信号が正確に伝わる範囲で利用できます。高速通信ネットワークとして、1980年代初頭にジェロックスの研究室で実用化された「イーサネット」というコンピュータ接続方法がその結果です。


  1. 都市圏ネットワーク (MAN)

LANを高速化する 中心、基盤これにより、LANレベルの高速なデータ転送速度を実現します。ここでいう「バックボーン」とは、複数の小型ネットワークをまとめて、大規模なパイプラインを通じて、他のネットワーク群と高速な通信を行う仕組みのことです。一般的には、都市や大規模なキャンパスを接続するような用途で使用されます。


  1. 広域ネットワーク (WAN)

これは、地理的に分散した通信ネットワークであり、地域や地域、国家や国家、大陸と大陸を繋ぐことができるネットワークです。これにより、GoogleやNetflixなどのサービスにアクセスできるようになります。


ネットワーク通信の方法は 回線交換型ネットワークわあ パケット交換ネットワークしかし、私たちは実際にパケット交換ネットワークを使用しているため、その概念を理解していれば十分です。パケット交換ネットワークは、送信したい情報を パケットまず、要求を小さな単位に分割し、送信元と宛先の情報をパケットに含めて、パケット交換ネットワークに送信します。この際 パケット交換機このパケットには宛先住所が記載されており、最終的な宛先まで確実に届けることができます。ネットワークの状態に応じて、複数の経路を経由して送信される可能性があります。ただし、通信経路が事前に確定されるわけではありません。


※ ここで「送信元」「宛先」の住所は、IPアドレスを意味します。後で詳しく説明しますが、IPアドレスはMACアドレスと組み合わせて送信されます。



Ⅲ. OSI(オープンシステム相互接続)の7層構造

この画像は存在しません。

このイラストは OSI(オープンシステム相互接続)の7層構造これら7つの階層は、ネットワーク通信のプロセスを7つの段階に分割することを意味します。最初の段階は 物理層これは、物理的な機器(ハードウェア)を通じて行われます。次のステップは データリンク層物理層で送受信されるデータを、エラーや輻輳を管理し、情報の伝達を行います。第三段階は ネットワーク層これにより、データを安全かつ迅速に目的地に転送(ルーティング)する機能が実現されます。4番目の段階 トランスポート層これは、2つの拠点間で、ユーザーがデータを信頼できる形でやり取りできるようにする役割を担います。5番目の段階は セッション層これは、4番目の層であるトランスポート層に似ていますが、より上位の論理的な接続を可能にします。6番目の層は 表現レイヤーデータは、標準的な方法でコーディング、暗号化などが行われます。最後に、7番目の段階は アプリケーション層最終的な目的として、アプリケーションプロセスと直接関連し、アプリケーションサービスを実行します。この概念を完全に理解することは重要ですが、この「クラウドベースのモビリティ統合セキュリティプロセス」では、「データリンク層」「ネットワーク層」「トランスポート層」で発生するセキュリティ関連の問題に重点を置いています。そのため、これらの層に焦点を当て、関連するプロトコルについて詳しく見ていきます。


  1. データリンク層

データリンク層は、物理層から受け取った信号を、エラーを検出し修正する役割を担います。具体的には、LANカードから送信される電気信号を検知し、この際に使用されるプロトコルは… イーサネット~について MAC(メディアアクセス制御)このシステムは、住所に基づいて通信を行い、3層構造のネットワーク層に情報を転送する役割を担っています。


  1. ネットワーク層

実際のデータを送受信する送信元と受信元の接続、およびナビゲーション機能を実現するルーティングは、このネットワーク層で行われます。この層で最も重要なプロトコルは IP(インターネットプロトコル)わあ ICMP (インターネット制御メッセージプロトコル)ルーターは、このプロトコルを使用してユーザーからのメッセージを転送し、それに関連する機能を活用します。 ARP(アドレス解決プロトコル)、RARP(逆アドレス解決プロトコル)そのようなものがあります。


  1. 伝送層

この階層は、実際に情報を受け渡し、双方向のコミュニケーションを担っています。この階層で重要なプロトコルは… TCP(トランスポート層制御プロトコル) UDP (ユーザー・データグラム・プロトコル)それぞれのプロトコルには長所と短所があり、最終的には、データリンク層は物理的な機器との接続を担当し、ネットワーク層は物理的な機器からの信号に基づいて、ホスト間の経路指示を担当します。一方、トランスポート層は、実際のプロセス間の通信を担当します。


※ プロセス間通信とは、例えば、2つのコンピュータ間でアプリケーション(ブラウザ)のデータをやり取りする役割を担うことです。開発者の視点で見ると、サーバーとブラウザ間の通信を担うと言えます。



Ⅳ. プロトコル(データリンク層、ネットワーク層を中心に)

各階層のプロトコルについて説明する前に、まずプロトコル自体について説明します。 プロトコルこれは、外交的な場面で、国家間の儀式を行う際の、相互の合意です。コンピュータの世界で例えるなら、互いにメッセージをやり取りするための、メッセージの形式や伝達方法を定めているものと考えることができます。したがって、プロトコルとは 文法(省略) 意味 (意味論)(省略) 順番 (タイミング)これらは、構文、意味、および順序の3つの要素を持ちます。構文は、データ形式や信号、符号化方法を定義し、意味は、エラー訂正、同期、フロー制御などの様々な制御手順について定義します。そして、順序は、送信者と受信者間、またはエンドツーエンドのシステムとネットワーク間の通信速度や順序を定義します。


このように定義されたプロトコルは、講義で説明された資料を参照すると、様々な機能を実現することができます。


Linuxおよびネットワークに関する講義の資料を参照してください。


Linuxおよびネットワークに関する講義の資料を参照してください。

このような構成が可能です。まずは概要を簡単に確認し、関連する機能については、後でプロトコルについて説明する際に、関連する部分が記載されているので、そちらを参照してください。


  1. データリンク層プロトコル

データリンク層の代表的なプロトコルは イーサネットこれは、イーサネットプロトコルです。このプロトコルは、ネットワークのハードウェア(LANカード)間で、MACアドレスに基づいて通信を可能にします。イーサネットパケットの最小サイズは64KB、最大サイズは1518KBであり、パケットの構造は、以下の写真のように構成されます。



これらの内容は、それぞれ個別に説明すると非常に長くなってしまうため、まず最初に理解しておくべき点は… 宛先MACアドレスわあ 送信元MACアドレスこれは、宛先のMACアドレスです。MACアドレスは、パケットを受け取るネットワークインターフェースのMACアドレスであり、LANカードの固有の識別子と考えることができます。最初の写真の括弧内に これはMACアドレスであり、以前はハードウェアメーカーが製造過程で固定されており、変更することができませんでしたが、現在ではドライバーを通じて変更できるようになっています。


MACアドレスは、IPアドレスと対応付けられている IPアドレスは、後で詳しく説明しますが、サービスを提供するサーバーを特定するための固有の識別子として機能します。そのため、IPアドレスのみで識別するのではなく、IPアドレスを変更するハッキング攻撃を防ぐために、 MACアドレスとIPアドレスを一緒に保存そのため、IPアドレスを変更して接続を試みても、MACアドレスによってブロックされる可能性がありました。しかし、MACアドレスが変更可能になったことで、フィッシングサイトがサーバーに繰り返しアクセスし、自身のMACアドレスとサーバーのIPアドレスを交換(または盗み取る)する攻撃が行われることがあります。


※ パケットとは、現代ではあまり一般的ではありませんが、田舎に住むおじいさんやおばあさんに手紙を送る際に使われることがあります。 手紙これは、パケット化された手紙が、郵便局を経由してどのように配送されるのかを説明するものです。 プロトコルこれを利用することです。


もし、すべての宛先MACアドレスがすべて「FF:FF:FF:FF:FF:FF:FF」の場合、次に説明する内容です。 放送パケットこれは、送信側のMACアドレスを指します。これは、パケットを送信するネットワークインターフェースのMACアドレスであり、ご自身のコンピュータのLANカードのMACアドレスと考えることができます。


2. ネットワーク層プロトコル

ネットワーク層のプロトコルとしては、主に IP(インターネットプロトコル)わあ ICMP (インターネット制御メッセージプロトコル)まず、IPおよびICMPプロトコルにアクセスする前に、以前のデータリンク層のプロトコルにおけるMACアドレスに関する情報を確認する必要があります。 ARP(アドレス解決プロトコル)ARPは、通信先のシステムに到達するために、ネットワークインターフェースのMACアドレスを特定するために使用されます。相手のMACアドレスは、ネットワークカードの固有の識別子ですが、どのようにして知ることができるのでしょうか? この質問に対する答えは、イーサネットプロトコルにおいて、パケットが宛先MACアドレスを持つ理由にもなります。ARPは IPアドレスとMACアドレスを対応付けるプロトコル私のコンピュータのIPアドレスとMACアドレスだけでなく、メッセージを送信したい相手(サーバー)のIPアドレスとMACアドレスも特定します。まず ARPリクエスト宛先への通信を開始し、IPアドレスに基づいて宛先のMACアドレスを特定する。 ARPへの返信 このプロセスを通じて、宛先のMACアドレスを受信すると、そのMACアドレスをテーブルに保存し、後で同じ宛先のアドレスを要求する際に、テーブルを参照してデータを送信することができます。ARPリクエストを行う際には、後で扱うブロードキャストを通じて、相手のホストからの応答を促します。


arp -a

※ このコマンドは、Linux-Ubuntu環境でIPアドレスとMACアドレスの両方を表示します。


IPアドレスは、イーサネットプロトコルで記述されたパケットに、追加の情報を含めるために使用されます。ここで最初に理解しておくべき点は、 送信元アドレス、宛先アドレス、サービスの種類、生存時間、プロトコル ある程度の値があります。送信側のIPアドレスと受信側のIPアドレスは、それぞれ送信側のIPアドレスと受信側のIPアドレスを示します。TOS(Type of Service)は、ルーターがパケットを処理する際の優先順位を定義します。優先順位の内容は、 最小遅延、最大処理速度、最大信頼性、最小コスト設定が可能で、デフォルト値は0です。最小遅延とは、データの送受信遅延を最小限に抑えることを意味し、最大転送ユニット(Maximum Transmission Unit)は、送信できるデータサイズを指します。最大信頼性は、エラーを最小限に抑え、通信の信頼性を高めるための内容です。最小コストとは、様々な経路を最小限のコストで利用できることを意味します。この内容は、QoS(Quality of Service)サービスと関連しており、つまり、より多くのお金を払うことで、より高い優先度を保証できることを意味します。優先度を実現するための要素が、TOS(Transport Service)フィールドです。


TTL(Time To Live)は、パケットが複数のルーターを通過するたびに1ずつ減っていく値です。0になると、そのパケットは破棄されます。この値は、後で扱うICMPプロトコルに関連しており、IPプロトコルにおける上位層プロトコル(ICMP、IGMP、TCP、UDP)を指します。また、この値は、後で扱うトランスポート層とも関連しています。



※ Linux-Ubuntu環境での ifconfig (Windows の場合は ipconfig)この情報を入力することで、イーサネットアドレス(MACアドレス)とIPアドレスを確認できます。写真の「inet」がIPアドレス、「ether」がMACアドレスです。ここで、さらに説明したい点は… RX(省略) TX RX パケットは、正常に受信したパケットの数を示し、TX パケットは、正常に送信したパケットの数を示します。errors、dropped、overruns は、エラーの度合い、失われたパケットの数、オーバーフローしたパケットの数を示します。特に、dropped の場合は、DDoS 攻撃を受けた場合に増加する可能性があります。


`ifconfig`コマンドについて、さらに詳しく説明します。 上/下これにより、ネットワークの開始と終了を制御できます。

ifconfig hw ether 바꿀값

MACアドレスを変更することができます。`ifconfig`コマンドを使用して、IPアドレスも変更できますが、再起動すると初期設定に戻ります。 IPアドレス `ifconfig` (または `ip addr`) などのコマンドを使用して、情報を確認したり、MACアドレスやIPアドレスを変更することも可能です。


それでは、IPプロトコルのアドレス体系について、具体的に見ていきましょう。


Linuxおよびネットワークに関する講義の資料を参照してください。

非常に大きい 5つのクラスこれらは、主にIPアドレスとして知られています。IPアドレスは、理論的には32ビットの2進数で、8桁ごとに区別するために点が表示されます。私たちがルーターの設定画面で確認する形式と似ています。 「192.168.0.1」IPアドレスは、このような構成になっています。写真からもわかるように、各クラスは、ネットワークアドレスとしてどの範囲を指定するかによって区切られます。Dクラス、Eクラスは、実用上は使用できないクラスであり、通常はAクラス、Bクラス、Cクラスを使用して、プライベート(個人用)ネットワークを構成します。各クラスに属できるデバイスの数は異なりますが、Aクラスが最も大きく、Cクラスが最も小さいです。よく見られる「192.168.0.1」も、Cクラスに属し、このクラスでは、最初のフィールドが192から223までの範囲で使用できます。



Linuxおよびネットワークに関する講義の資料を参照してください。

この概念に基づくと、ルーターに接続されたデバイスは、クラスごとに同じネットワークフィールドを持ち、ホスト部分のみが異なります。クラスCの場合、最初の3つのフィールドはネットワーク帯域を表すため、家庭や教育機関など、どの場所でルーターに接続されたデバイスでも、同じネットワーク帯域を使用し、自身の割り当てられたネットワークアドレスで結果を共有できます。ただし、最後のフィールドであるホストアドレスには、使用できない値があります。 最初の番号(0)と最後の番号である255これは、ネットワークの範囲を識別するためのもので、255はブロードキャスト用のネットワークアドレスであるためです。ブロードキャストは後で説明しますが、簡単に言うと、同じネットワーク範囲内のすべてのデバイスにパケットを送信する、1対多の関係です。


※ 補足として サブネットマスクそこにあります。下の写真にはサブネットマスクが表示されています。これは、各クラスに割り当てられたネットワーク範囲をさらに細かく区別し、より多くのIPアドレスを識別するのに役立ちます。特に、クラスCの場合、最後のフィールドであるホストIDの2ビットをネットワークIDとして使用することで 「255.255.255.0」例えば、サブネット1は192.168.1.1~192.168.1.254、サブネット2は192.168.2.1~192.168.2.254となります。



サブネットマスクを使用することで、より多様なアドレスを割り当てることができる理由は、 IPv4(インターネットプロトコル バージョン4)わあ IPv6(インターネットプロトコルバージョン6)これを知っていれば理解できますが、これまでの説明してきたアドレス体系はIPv4でした。


※ 実は、IPv5という規格も存在していました。現在は廃止されていると考えられますが、その理由を探してみると面白いかもしれません。


従来のIPv4は、約43億のIPアドレスを持つことが可能でしたが、当初は十分ではないと認識していませんでした。しかし、ネットワークの発展に伴い、スマートフォン、タブレット、ノートパソコン、PC、スマートウォッチといった、日常生活でよく使われるデバイスだけでなく、様々な健康関連の機器や機械が増加するにつれて、IPアドレスが不足するようになりました。そのため、この問題を解決するためにIPv6が登場しました。IPv4とIPv6は、それぞれ独立したアドレス体系を持ち、IPv6は128ビットで表現されます。現在、両方のアドレス体系が共存しています。


※ IPプロトコルに関連して、さらに知っておくと役立つプロトコルがあります。 DNS(ドメイン名サービス)そこにあります。DNSは アプリケーション層プロトコルしかし、IPアドレスと密接に関わるのは、私たちが理解しやすいドメイン名のアドレスをIPアドレスに変換できるからです。この点について ドメインこれは識別子を意味し、ドメイン名の住所は www.naver.com(省略) www.google.comのような 私たちは、一般的に、住所を入力することで、NaverやGoogleにアクセスできるようにする住所のことを指します。 www.naver.comへ しかし、実際には「com」の後に「.」が付くという事実があります。 「。」ルートドメインは、ドメイン名の基礎となる部分です。ドメイン名の住所は、ここから始まります。時々、末尾に「.」が付くことがあります。 「kr」これは国家レベルのドメインです。


上記の画像には、「dig」コマンドが入力されていることがわかります。このコマンドは、名前サーバーに設定された情報を取得します。ここで、名前サーバーのアドレスは127.0.0.53です。 ネームサーバードメイン名(ウェブサイトのアドレス)を、コンピュータが理解できるIPアドレスに変換する役割を果たすサーバーです。 訪問したいウェブサイトのドメイン名を入力すると、ネームサーバーを通じてそのウェブサイトのIPアドレスを特定し、このプロセスは実際には複数のネームサーバーを経由して行われます。


nslookup 도메인이름주소

nslookup の使用方法イランのコマンドがあり、このコマンドは、ドメイン名の住所をネームサーバーに問い合わせ、IPアドレスを特定するものです。

www.naver.com 隣に、これを示すcanonical表記があるはずです。 www.naver.com ニックネームとして捉えてください。


Linuxおよびネットワークに関する講義の資料を参照してください。


DNS 偽装 (DNS スプーフィング) イランによるネットワーク攻撃があり、攻撃者は、ユーザーがネームサーバーにIPアドレスをリクエストする際に、ネームサーバーを利用して、その応答を改ざんし、ユーザーに誤った情報を伝達する。 不正なIPアドレスこれは、偽のウェブサイトに誘導し、ユーザーの重要な情報を盗み出すために使用される攻撃手法です。


※ 特定のIPアドレスの宛先ルーティング経路を特定するためのコマンドがあり、Windowsでは「tracert」、Linuxでは「traceroute」です。Linuxでは、「traceroute」のパッケージをインストールする必要があります。


※ `dig`コマンド以外にも、名前サーバーを確認する方法として、`/etc/resolv.conf`ファイルを確認する方法があります。もし、このファイルに記載されている名前サーバーに対してpingを送信しても正常に動作しない場合は、Googleの名前サーバーである8.8.8.8に変更してみてください。それでも正常に動作しない場合は、インターネット接続の問題である可能性があります。


この写真に表示されているネームサーバーの設定を変更してください。


次に紹介するプロトコルは、IPプロトコルに続くICMP(Internet Control Message Protocol)です。しかし、これまでの説明が長くなってしまったので、続きは次の投稿でご紹介します…。



おまけ

平日は毎日投稿していましたが、最近数日間投稿していませんでした。授業の内容が難しかったこと、理解に集中したいと思ったことが理由です。実際には、まだ書ききれていない部分も多いと思っていますが、それでもできる限り書き込もうと努力しました。また、実習以外の講義の内容をまとめて一度に投稿することに迷ったこともありますが、結局はまとめて投稿することにしました。🥲 今回は、内容が多すぎるので、後ほど2部を投稿する予定です。どうぞご期待ください。