プライベートIPアドレス

Class A: 10.0.0.0 to 10.255.255.255 This range supports a large number of hosts and is often used in very large networks.

Class B: 172.16.0.0 to 172.31.255.255 This range is commonly used in medium-sized networks.

Class C: 192.168.0.0 to 192.168.255.255 This range is typically used for smaller networks, like home or small business networks.

合計いくつあるのでしょうか? class Aは2^24くらいいけね?つまり?

>>> 2**24
16777216

はい、classBは?

>>> 16*2**16
1048576

classCは?

>>> 2**16
65536

グローバルIPアドレス

はい、グローバルIPね。JPNICとか、そのへんによって管理されているやつね。 2^32個ありますね、はい。そこから上のクラスのを抜いていきます

2**32 - 2**24 - 16*2**16 - 2**16
=4277075968

それでも40億箱しているって話ね。しかしだよ。これすごく重要なこと言います。実はまだグローバルに割り当てられていないIPが存在するんです。知ってましたか??(初耳)

Carrier grade NAT

chat GPT君からの回答

the IP range 100.64.0.0 to 100.127.255.255 is reserved for use in carrier-grade NAT

ということですね。これどう言うことなんでしょうかね??

CGNとは何か??

CGNは「Carrier Grade NAT」の略で、 通信事業者レベルで実施する、より大規模なNAT(後述)のことです。 LSN (Large Scale NAT)とも呼ばれます。 NATは、Network Address Translatorの略で、 一般にはグローバルIPアドレス(パブリックIPアドレス)と、 プライベートIPアドレスの相互変換を行います(実際には単純なNATではなく、 IPアドレスに加えてポート番号の変換も行うNAPT (Network Address and Port Translation)が多く用いられています)。

一般家庭向けのインターネット接続サービスでは、各回線ごとに一つのグローバルなIPv4アドレスを割り当て、 家庭内ではプライベートIPアドレスを使うのが一般的です。 これは、IPv4アドレスに約43億アドレスといった上限があるため、グローバルIPアドレスの利用数を節約するためです。 そして、グローバルIPアドレスは自由に相互通信できますが、 プライベートIPアドレスはLANなどで用いるためのものであり、 インターネット上で使うことが禁止されています。 そこで必要になるのがNATであり、家庭用のネットワークなどでは、 いわゆるブロードバンドルーターがその機能を担っています。

原理的には同じものですが、CGNではIPv4アドレス在庫の枯渇を背景に集約をさらに推し進め、 複数の回線で一つのグローバルなIPv4アドレスを共有します。 サービスプロバイダー内部のネットワークにて、 グローバルなIPアドレスに代わりRFC68881で要件が定義され、 RFC68902で定義されたShared Address Space「100.64.0.0/10」を使うことにより、 より一層グローバルIPアドレスを節約できます。

いったいどういうことなんだ??なぜこれが必要なのだ??普通に、プライベートアドレスを使うではだめなのか?? なんなんだマジで!!