復習がてらに雑メモ。
インターネットとは何か?
- インターネットは、世界中のコンピューターネットワークを相互に接続した巨大なネットワークシステム
- TCP/IPプロトコルを使用して、異なるネットワーク間でデータを交換する
- 分散型のアーキテクチャを持ち、中央管理者は存在しない
インターネット上で情報はどのように動いているのか?
- 情報は主に以下の媒体を通じて伝送される:
- 有線:光ファイバーケーブル、銅線(イーサネットケーブル)
- 無線:Wi-Fi、携帯電話ネットワーク(3G、4G、5G)、衛星通信
- データはパケットに分割され、最適な経路を通じて送信先に届けられる
- ルーターやスイッチなどのネットワーク機器がパケットの経路を制御する
ネットワーク同士はどのように会話し、どのようなプロトコルが関係するのか?
TCP/IPモデルの4つの層とそれぞれの主要プロトコル:
- アプリケーション層:HTTP、SMTP、FTP、DNS
- ユーザーが直接利用するアプリケーションのデータ形式を定義
- トランスポート層:TCP、UDP
- データの分割、再構築、エラー検出、フロー制御を担当
- ex:配信サイトのようなビデオストリーミングではこの層に該当するUDPが使用されることが多い
- インターネット層:IP、ICMP
- パケットの経路選択(ルーティング)を行う
- ネットワークインターフェース層:Ethernet、Wi-Fi
- 物理的なネットワークメディア(イーサネットケーブルやWi-Fi)を介してデータを送受信する役割を担う
TCP/IPの機能階層 | 主なプロトコル |
---|---|
アプリケーション層 | HTTP,DNS,SMTP,FTP |
トランスポート層 | TCP , UDP |
インターネット層 | IP |
ネットワークインターフェイス層 | Ethernet , Wi-Fi |
パケット、ルーター、信頼性の関係は?
- パケット:データを小さな単位に分割したもの。ヘッダー(送信元、宛先情報など)とペイロード(実際のデータ)で構成。
- ルーター:パケットの宛先情報を読み取り、最適な経路を選択して次のネットワークに転送する装置。
- 信頼性:主にTCPプロトコルによって保証される。
- パケットの順序制御、再送制御、フロー制御を行い、データの完全性を確保。
- ルーターはパケットの経路選択を最適化し、ネットワークの信頼性向上に寄与。
HTTPとHTML - ブラウザでこのウェブページをどのように見ているのか?
- ユーザーがURLを入力すると、ブラウザはDNSサーバーに問い合わせてIPアドレスを取得。
- ブラウザはHTTPリクエストをWebサーバーに送信。
- サーバーはリクエストを処理し、HTMLファイルをHTTPレスポンスとして返送。
- ブラウザはHTMLを解析し、必要に応じてCSS、JavaScript、画像などの追加リソースをリクエスト。
- すべてのリソースを取得後、ブラウザはHTMLをレンダリングしてページを表示。
インターネット上の情報伝達はどのように安全に行われているのか?
- HTTPS(HTTP over SSL/TLS)を使用して、データの暗号化と認証を行う。
- SSL/TLSの主な機能:
- 公開鍵暗号方式による鍵交換
- 共通鍵暗号方式によるデータの暗号化
- デジタル証明書による通信相手の認証
- エンドツーエンド暗号化:メッセージアプリなどで、送信者と受信者のみがメッセージを読めるよう暗号化。
サイバーセキュリティとは何ですか?
サイバーセキュリティは、コンピューターシステムやネットワークを不正アクセスや攻撃から守るための対策や技術のことです。
主な脅威と対策:
- マルウェア(ウイルス、ランサムウェアなど)
- 対策:アンチウイルスソフト、定期的なアップデート
- フィッシング詐欺
- 対策:従業員教育、メール認証技術(SPF、DKIM、DMARC)
- DDoS攻撃
- 対策:トラフィック分析、CDNの利用、ファイアウォール
- ゼロデイ攻撃
- 対策:脆弱性管理、パッチ適用の迅速化
- 内部脅威
- 対策:アクセス制御、監査ログの分析
総合的なセキュリティ対策:
- 多層防御(Defense in Depth)戦略の採用
- 定期的なセキュリティ監査とペネトレーションテスト
- インシデント対応計画の策定と訓練
- 従業員のセキュリティ意識向上プログラム
IPアドレスとドメインネーム
- ドメインネーム
google.com
のような一般にWebサイトにアクセスする際に名称づけられているサイドドメイン。
- IPアドレス
- ドメインネームをコンピューターが理解できるように変換された数字からなる文字列
- DNS(ドメインネームシステム)
- ドメインネームをIPアドレスに変換する仕組み。ブラウザにドメイン名を入力するとコンピューターがDNSサーバにDNSクエリを送信し、対応するIPアドレスを返す。コンピューターは返されたIPアドレスを用いて、表示するWebサイトを表示する。
HTTP
- HTTP
- TCP/IPベースのアプリケーション層通信プロトコルで、クライアントとサーバーが互いに通信する方法を標準化したもの
- サーバークライアント間でコンテンツがどのように要求されどのように伝送されるかを定義する。
- データ伝送の変遷
- HTTP/0.9ではhtmlファイルのやり取りしかできなかったが、HTTP/1.0では画像、動画、HTML、プレーンテキストなどのファイル形式のやり取りが可能になった。
- HTTP/1.1 では 新しいHTTPメソッド(PUT、PATCH、OPTIONS、DELETE)が追加された。
HTTP/2(2015)
- コンテンツの低遅延転送のために設計されたHTTP/1.1に取って代わるプロトコル
参考文献