初心者がインターネットを完全に理解した！

　
 
（エンジニアの完全に理解したは全く理解していない状態なのですが）

新卒エンジニアのくたびれたピカチュウです。よくTwitterや交流会では「くたびれ」や「くたちゅう」と呼ばれています！

## なぜこの記事を書くことになったのか？

「アウトプットの習慣化」と「発信力の向上」を今年の目的に掲げているからです。

自身の課題というのはたくさんありますが、現状自身にに足りていない要素を挙げると、

- 経験
    - インプット・アウトプットの回数
- メモ化
    - １度学んだことをメモとしてアウトプットしない
- 発信力
    - 市場価値を高めるのに、昨今は「発信力」も重視

この３つは早いうちから対応すると良いと感じていました。

そしてこれらの能力を高めるための手段として、「技術記事の執筆・共有」を行おうと考えています！

---

### 目次

以下のようなトピックを説明します！

- **インターネットの基本概念**:インターネットとは何か、どのような仕組みで動くのかについて説明。
- **IPアドレスとドメイン名**: インターネット上でのリソース識別に使用されるIPアドレスとドメイン名の役割について説明。
- **プロトコル**: インターネット通信におけるプロトコルの重要性と主要なプロトコル（HTTP、TCP、UDPなど）の簡単な説明。

---

### **インターネットの基本概念**

インターネットの説明の前に、まずネットワークの説明を行います。

> 引用：How does the Internet Work? を和訳
> 
> 
> **ネットワークとは、相互に接続されたコンピューターまたはその他のデバイスのグループです。**
> 

このネットワークとネットワークを相互に接続することで、**インターネット**が構築されます。

しかし、この相互に接続する方法はどのように行われるのでしょうか？

物理的に近くにいる場合、コンピューターとデバイスをつなぐためには「ケーブル」や「無線通信」が使用されます。

しかし、遠く離れた場所との通信には、ケーブルや無線通信が道路に敷かれているわけではありません。

ここで登場するのが **インターネットサービスプロバイダ (Internet Service Provider、以下 ISP)** です。

データの送受信は、以下のステップを経て行われます。詳細は、この **[How does the Internet work?](https://www.youtube.com/watch?v=TNQsmPf24go)** という動画を参照するとわかりやすいでしょう。

1. データは「0」と「1」の情報に変換されます。
2. データはラジオのような周波数形式に変換され、ルーターに送信されます。
3. ルーターはデータを光信号（オン・オフ、0・1）に変換します。
4. ルーターはこの変換されたデータをISPに送信します。
5. ルーターはISPにデータを送り、ISPはインターネットハブ（スイッチングハブ）にデータを転送します。
6. インターネットハブは情報を送信先に近いネットワークに転送するよう指示します。
7. その結果、海底ケーブルなどを通じて、相手のネットワークに接続されます。

このようにして、インターネットを介してデータが送受信される仕組みが成り立っています。

---

### 

### **IPアドレスとドメイン名**

IPアドレスとドメイン名は、インターネット上のデータを識別し、通信を可能にするための非常に重要な概念です。

例えば、デジタル庁のサイトのIPアドレスは `13.227.62.49` です。

しかし、この数字だけではどのウェブサイトにアクセスしようとしているのかを明確には理解できません。

そのため、ドメイン名が使用されます。

ドメイン名は、IPアドレスをより親しみやすい名前に関連付けます。

言い換えれば、`13.227.62.49` というIPアドレスは、[www.digital.go.jp](http://www.digital.go.jp/) という名前でもあるのです。

具体的には、ウェブブラウザで `http://www.digital.go.jp/` にアクセスした場合、ブラウザは次のようなプロセスを経てデジタル庁のウェブサイトにアクセスします。

1. 利用者はドメイン名（[www.digital.go.jp](http://www.digital.go.jp/)）にアクセスします。
2. コンピュータはドメイン名をIPアドレスに変換するためにDNSサーバーに問い合わせます。
3. DNSサーバーはドメインに関連付けられたIPアドレス（`13.227.62.49`）をコンピュータに返します。
4. コンピュータは受け取ったIPアドレスが所属するWebサーバーにアクセスします。
5. アクセスを受けたWebサーバーは、コンピュータにウェブページのコンテンツを返します。

IPアドレスとドメイン名の組み合わせにより、ユーザーがウェブサイトにアクセスする際に覚えやすく、便利な方法が提供されています。

ちなみに、多くの大企業やWebサービスは複数のIPアドレスを持っています。これには以下のようなメリットがあります：

> IPアドレスを複数持つことで、負荷分散や冗長化が容易になり、結果的にシステム全体の可用性が向上します。今日のビジネス環境では、システムの高可用性が非常に重要であり、複数のIPアドレスを使用することはその実現に役立つでしょう。
> 
> 
> 引用元：[NTTコミュニケーションズの知識ベース](https://www.ntt.com/business/services/network/internet-connect/ocn-business/bocn/knowledge/archive_88.html)
> 

---

### 

### **プロトコル: インターネットのルールと標準**

**プロトコル**は、デバイスとシステム間で情報がどのように交換されるかを定義する一連のルールと標準を指します。これらのプロトコルは、インターネット上でのデータ通信の基盤を提供し、データの正確な送受信を可能にします。

例えば、**DNS（Domain Name System）** は、ドメイン名とIPアドレスの関連付けと管理のために使用されるプロトコルです。

名前解決（ドメイン名をIPアドレスに変換する）を行います。

さまざまなプロトコルが存在し、それぞれ特定の役割を果たしています。

詳細については、[TCP/IPのプロトコル群について一覧でざっくりまとめてみたのでメモ](https://qiita.com/wildmouse/items/f4eeed2d0c59ad841d24)を参照することをおすすめします。（とてもわかりやすくまとめられています！！）

---

## まとめ

この記事では、インターネットの基本概念について概説しました。以下は主要なポイントのまとめです：

- **インターネット**は、相互に接続されたネットワークをさらに接続したものです。
- 送信されるデータは **ISP（Internet Service Provider）** を通って振り分けられ、最終的に受信者へと届きます。
- ドメインを検索してウェブサイトにアクセスしようとすると、そのドメインに関連づいたIPアドレスを **DNS（Domain Name System）** が提供します。
- そのIPアドレスを利用して、クライアントはウェブサーバーにアクセスし、ウェブコンテンツにアクセスできます。
- インターネット上でのデータの送受信に関するルールと標準を **プロトコル** と呼び、これらがデータの正確な通信を保証します。
- 実際体験してみると、記事を書くのは大変である。いつも記事を書いている方々には感服する。

このまとめを通じて、インターネットの仕組みや基本的な概念について理解を深めました。


 ## 参考

- **[How does the Internet Work?](https://cs.fyi/guide/how-does-internet-work)**
- **[How Does the Internet Work? MDN Docs](https://developer.mozilla.org/en-US/docs/Learn/Common_questions/How_does_the_Internet_work)**
- **[Introduction to Internet](https://roadmap.sh/guides/what-is-internet)**
- **[How does the Internet work?](https://www.youtube.com/watch?v=TNQsmPf24go)**
- **[How the Internet Works in 5 Minutes](https://www.youtube.com/watch?v=7_LPdttKXPc)**
- **[NTTコミュニケーションズの知識ベース](https://www.ntt.com/business/services/network/internet-connect/ocn-business/bocn/knowledge/archive_88.html)**
- **[TCP/IPのプロトコル群について一覧でざっくりまとめてみたのでメモ](https://qiita.com/wildmouse/items/f4eeed2d0c59ad841d24)**