本記事では、ネットワークに関する初歩的な知識をまとめます。
目次
初歩的な知識
ネットワークトポロジー
- ネットワーク内のデバイス(コンピューター、ルーター、スイッチなど)の物理的な接続方法を表す
- スター、バス、リングなどがある
スター
- スター・トポロジーは、中央にハブまたはスイッチがあり、すべてのデバイスがそれに接続される形態を指す
- デバイスは直接ハブ/スイッチに接続され、ハブ/スイッチを介して他のデバイスと通信する
- 一つのデバイスの障害が他のデバイスへの影響を限定するが、ハブ/スイッチの障害は全体の通信に影響を及ぼす可能性がある
パス
- パス・トポロジーは、デバイス間の直線的な接続を指す
- データは一方向にのみ流れ、隣接するデバイス間で直接通信する
- 物理的な障害があると、その区間全体の通信が妨げられる可能性がある
リンク
- リンクは、ネットワーク内の2つのデバイス間の物理的な接続を指す
- リンクは、直接接続されたデバイス同士の通信を可能にする
- スター・トポロジーやパス・トポロジー内でも、デバイス間のリンクが存在する
IPアドレス
- インターネットプロトコル(IP)によって割り当てられたデバイスの一意の識別子
- 種類として、IPv4とIPv6がある
- 通常4つのオクテット(8ビット)から成り、例えば「192.168.1.1」といった形式
- サブネットマスクも同じ形式で表現され、各オクテットは2進数で表される
IPv4
- インターネット通信における主要なプロトコル
- IPアドレスを使用してデバイスを識別するための標準的な方法を提供する
- 32ビットのIPアドレスを使用し、おおよそ42億個のユニークなアドレスを割り当て可能
- アドレス不足が問題となり、NATなどの手法を使用してアドレスを再利用する必要がある
- IPv4アドレスは4つの8ビットのオクテット(ドットで区切られた4つの数字)で表される(例: 192.168.1.1)
IPv6
- IPv4のアドレス不足とその他の制約に対処するために開発された次世代のインターネットプロトコル
- 128ビットのIPアドレスを使用し、膨大な数のユニークなアドレスを提供することで、アドレス不足問題を解決
- IPv6アドレスは8つの16ビットのブロック(コロンで区切られた8つの16進数)で表される
(例: 2001:0db8:85a3:0000:0000:8a2e:0370:7334) - IPv6はセキュリティ、品質、自動構成などの面でも改善がされており、新しい機能が追加されている
- IPv6導入は進行中であり、徐々にIPv4に取って代わる役割を果たしている
NAT (Network Address Translation)
- プライベートネットワーク内のデバイスが公共のインターネットにアクセスする際に使用されるネットワーク技術
- プライベートIPアドレスを公開IPアドレスに変換する役割を持つ
プライベートIPアドレス | プライベートネットワーク内のデバイスに割り当てられるIPアドレス 一般的には、内部ネットワーク内での通信に使用されるが、インターネット上で一意のアドレスとしては使用されない |
公開IPアドレス | インターネット上で一意で、ルーティング可能なIPアドレス ISP(Internet Service Provider)から提供され、インターネット上でデバイスを識別するために使用される |
内部プライベートアドレス空間 | プライベートネットワーク内で使用されるIPアドレスの範囲 代表的な範囲には、10.0.0.0/8、172.16.0.0/12、192.168.0.0/16がある |
外部グローバルアドレス空間 | インターネット上で使用される公開IPアドレスの範囲 |
ポートフォワーディング | 特定ポートへの外部からのリクエストを内部の特定のデバイスに転送する機能 NATを使用して内部デバイスを外部に公開するためによく利用される |
PAT (Port Address Translation) | 一つの公開IPアドレスを複数の内部デバイスに対して使用し、ポート番号を使用して通信を識別するNATの拡張 |
NAPT (Network Address and Port Translation) | PATとも呼ばれ、内部プライベートIPアドレスとポート番号を組み合わせて外部と通信する際の公開IPアドレスとポート番号を変換する |
IPv4アドレス不足の対策 | NATはIPv4アドレス不足の問題を一時的に緩和するために広く使用されてきた |
セキュリティの一層の提供 | NATを使用することで、内部ネットワークのデバイスが直接インターネットに露出することを減少させ、セキュリティ上の利点を提供する |
サブネットマスク
- IPアドレスをネットワーク部とホスト部に分割し、ネットワーク内でのアドレス範囲を定義するための値
- これにより、ネットワーク内の異なるサブネット(サブネットワーク)を作成して、ネットワークを効果的に管理することができる
- ネットワークのサイズを定義する役割も果たす
ネットワーク部とホスト部
- サブネットマスクはIPアドレスをネットワーク部とホスト部に分割する
- ネットワーク部は、特定のネットワークを識別するための部分
- ホスト部はそのネットワーク内の特定のデバイスやホストを識別するための部分
IPアドレス「192.168.1.1」をネットワーク部とホスト部に分ける場合、どの部分をネットワーク部とするかは使用されるサブネットマスクに依存する(以下例)
サブネットマスク | 内容 |
---|---|
255.255.255.0 (/24) | プレフィックス長: 24 ネットワーク部: 192.168.1(最後のオクテットがホスト部) ホスト部: 1(最後のオクテット) |
255.255.255.128 (/25) | プレフィックス長: 25 ネットワーク部: 192.168.1.0(最後のオクテットのビット7までがネットワーク部) ホスト部: 1(最後のオクテットのビット0) |
255.255.255.192 (/26) | プレフィックス長: 26 ネットワーク部: 192.168.1.0(最後のオクテットのビット6までがネットワーク部) ホスト部: 1(最後のオクテットのビット1) |
プレフィックス長
- IPアドレスをサブネットマスクとともに表現する際に使用される値
- IPアドレスは通常32ビット(IPv4の場合)で構成されており、そのうちネットワーク部とホスト部が分かれている
- プレフィックス長は、この32ビットの中でネットワーク部がいくつのビットで表現されるかを示すもの
サブネット化
- サブネットマスクを調整することで、ネットワーク内で複数のサブネットを作成することができる
- これにより、ネットワーク内のトラフィックを分割し、セキュリティやパフォーマンスの向上を図ることができる
CIDR (Classless Inter-Domain Routing)
- IPアドレスとサブネットマスクを「IPアドレス/プレフィックス長」という形式で表現する
- 例えば、192.168.1.0/24は、プレフィックス長が24ビット(ネットワーク部が24ビット)であることを示す
- プレフィックス長が短いほどネットワーク部が大きくなり、ホスト部が小さくなる
- 逆に、プレフィックス長が長いほどネットワーク部が小さくなり、ホスト部が大きくなる
一般的なプレフィックス長は、0から32の範囲で表現されるが、例として最大のプレフィックス長である32を考えると、ネットワーク部は存在せず、すべてのビットがホスト部に割り当てられることになる
255.255.255.255(/32) | IPアドレス: 192.168.1.1 プレフィックス長: 32 サブネットマスク: 255.255.255.255 |
ゲートウェイ
- ネットワーク内のデバイスが他のネットワークに接続するための出入り口
- ルーターなどが機能する
ゲートウェイの種類 | 機能と説明 |
---|---|
ルーターゲートウェイ | 異なるネットワーク間で通信を中継し、データを転送 |
デフォルトゲートウェイ | デバイスが宛先不明の通信をルーティングするゲートウェイ |
アプリケーションゲートウェイ | 特定のアプリケーションやプロトコルをサポートし、制御や保護を提供 |
VPNゲートウェイ | 安全なリモートアクセスを提供するための仮想プライベートネットワーク(VPN)接続を処理 |
トランスレーションゲートウェイ | 異なるプロトコルや通信方式の間で通信を変換 IPアドレス変換(NAT)、ポート変換などを実行 |
ハードウェアゲートウェイ | 物理的なデバイスとしてネットワークトラフィックを制御・ルーティング |
ソフトウェアゲートウェイ | ソフトウェアベースで構築され、仮想化環境やクラウドネットワーク内でネットワーク通信を制御・管理 |
ルーティングプロトコル
- ネットワークデバイス間で経路を決定するためのルールやプロトコル
- OSPF、BGPなどが存在する
OSPF(Open Shortest Path First)
- リンクステート型のルーティングプロトコルで、内部ゲートウェイプロトコル(IGP)の一種
- ルーティングテーブルを構築するための情報交換を行い、最短経路を計算する
- ネットワークの変更があった際に、変更箇所のみが更新されるため、効率的な情報交換が可能
リンクステート型 | 各ルータは自身の周辺状況やリンク(通信経路)の状態を知るための情報を集め、収集した情報をもとに、最短経路の計算を行う Dijkstraアルゴリズムなどが使われ、ネットワーク内の変更があった場合、各ルータがそれに対応して情報を更新し、最新の経路情報を保持する |
内部ゲートウェイプロトコル(IGP) | ネットワーク内のルータが通信経路を決定する方式 同じネットワーク内の通信を制御 |
ルーティングテーブル | ルータが持つ経路情報の表、データの送信先を指示 目的地ネットワークに関連する情報が含まれる |
パスベクター型外部ゲートウェイプロトコル(EGP) | 異なるネットワーク間でのデータ送信経路を決定する方式 インターネット全体の通信を制御 |
BGP(Border Gateway Protocol)
- パスベクター型の外部ゲートウェイプロトコル(EGP)で、インターネット内での経路制御に使用される
- 異なる自治システム(AS)間で経路情報を交換し、最適な経路を決定する
- ルーティングポリシーや経路選択の柔軟性が高く、大規模なネットワーク環境に適している
パスベクター型(Path Vector) | 異なるネットワーク間での経路情報を交換し、最適な経路を計算する手法 特定のネットワークから目的地までの経路に関する情報をパス(経路)として伝えることによって動作 |
異なる自治システム(AS) | 独立したネットワークの集まり、各ASは自身の通信規則を持つ インターネット内での区切り |
ルーティングポリシー | データ送信の際の優先ルートや回避ルートを指定するガイドラインやルール |
OSI参照モデル
- ネットワークプロトコルを7つの階層に分けて理解するためのモデル
- 物理層からアプリケーション層までが存在する
階層 | 概要 | 主な機能 |
---|---|---|
アプリケーション層 | ユーザーとコンピュータ間の通信を支援 ユーザーインタフェースやデータ転送を扱う | メール、ファイル転送、リモートアクセスなどのアプリケーション間の通信を提供 |
プレゼンテーション層 | データの形式や暗号化を管理 データの変換や暗号化、圧縮を行い、異なるシステム間の互換性を確保 | データの圧縮、暗号化、データ形式の変換などを行い、通信相手とのデータの適切なやり取りを支援 |
セッション層 | 通信の開始、維持、終了を管理 データのセッション制御や同期を行い、データ転送の正確性を確保 | データの送信開始、同期、終了などを管理して、通信の信頼性や順序性を確保 |
トランスポート層 | データのエンドツーエンド通信を管理 データの分割や再結合、エラー検出と修正を行い、信頼性を確保 | データのセグメンテーション、エラーチェック、再送制御などを通じて、データの信頼性と正確性を確保 |
ネットワーク層 | ネットワーク間のルーティングとデータ転送を管理 異なるネットワーク間でのデータ転送を可能にする | ルーティング、転送、パケットの選択と中継を行い、異なるネットワーク間でのデータの正確な転送を担当 |
データリンク層 | 隣接するノード間のフレーム同期とエラー検出を管理 物理層のエラーを検出し、再送や修正を行う | フレームの作成、エラーチェック、再送制御などを通じて、隣接するノード間での信頼性のあるデータリンクを確保 |
物理層 | デバイス間の物理的な接続を管理データの電気信号や光信号などの物理的な変換を行い、通信を可能にする | デバイス間の物理的な接続とデータの変換を担当し、データのビット単位の送信と受信を実現 |
LAN(ローカルエリアネットワーク)
- 比較的小規模な地理的範囲内のコンピューターやデバイスが相互に接続されたネットワーク
WAN(広域ネットワーク)
- 地理的に広範な範囲をカバーするネットワーク
- 複数のLANを接続する
VLAN(仮想LAN)
- 物理的な接続に関係なく、論理的にグループ化されたデバイスを分離・統合する技術
ネットワークセキュリティ
- 不正アクセスや攻撃からネットワークを保護するための手段や技術、ファイアウォール、VPNなどがあります
まとめ
ネットワーク関連の初歩的な知識をまとめました。
これからも初歩的な内容はこちらにまとめ、より進んだ内容・実践的な内容については別記事にまとめたいと思います。
コメント