● 用語:サブネットマスクとは?01

※間違ってたらすみません。
※メモ書きなので、自分でも意味不明な箇所も多いです

関連記事
用語:サブネットマスクとは?02(こっちも読んでみてください。)
https://euc-access-excel-db.com/tips/ct07_se/ct070901_petit_lan/sub-net-mask02

★ 予備知識(IPアドレスのことを知っていることが前提です。まだの方は→こちら(IPv4とIPv6)

上図のように、「192.168・・・」で始まるIPアドレスを「プライベートアドレス」とよび、家庭内「のみ」で使うアドレスとして推奨されています。そのうち、もっともポピュラーなIPアドレスとしては、前から3つ分の3桁が「ネットワークアドレス(ネットワークアドレス部)」で、最後の3桁が「ホストアドレス(ホストアドレス部)」、という意味合いになっています。

例えばこの例(192.168.100.15)の場合なら、「192.168.100」というネットワーク(グループ)の中の、15番目の端末(パソコンやスマホ等々)という意味になります。

15の部分は、「0番~255番」までの256個の番号を割り当てることができます。
ただ、実際には、0番はネットワークアドレス、1番はルーターなどの出入り口の機器、最後の255番は一斉通信に使われてしまうので、パソコンやスマホ・ネットワークプリンタ等々に対しては実質、256-3=253台分(2番から254番まで)のホストアドレスが割り当てられる(=接続できる)格好となります。

このように「192.168.100」というネットワーク(グループ)の中では、実質253台までのパソコンやスマホなどが接続できるわけですが、でももし、端末の数が253台を超えるような事態が起こってしまったらどうでしょうか?

単純に足りませんよね。

そこで、「ネットワークアドレスを、3桁3つ分、じゃなくて、3桁2つ分にしたら?」というようなことが考えられるようになったそうです。

そうなると、次のようになります。

この場合、ネットワークアドレスは3桁部分が2つになりますが、同時に、ホストアドレスも3桁部分が2つになります。ですので、256×256=65536個のホストアドレスが割り当てることが可能となります。(なぜ256という数字が突然出てくるのかや、なぜ掛け算なのかはここでは深く考えないでください。そういう決まり、とお考え下さい。)
そして、前述の場合と同じで「3個分は他の機器などに割り当てられる」ので、65536-3で、実質、65533台分のパソコンやスマホがこのネットワーク(「192.168」)に接続できることになります。

※参考:ちなみにですが、ネットワークアドレスが違う機器同士は、基本、通信はできないことになっています。たとえば、ファイル共有もできないです。逆に、ウィルス感染もしません。ルータを多段的に数珠繋ぎするなどしてネットワークアドレスの設定値を変えると、おうちの中でも複数の異なるネットワークを簡単に作成できます。そのようにして、暴論ですみませんが理論上は、「ウィルス感染しても構わないテスト用ネットワークと感染をさせない本番用ネットワークに分けることも可能」です。

同様に、ネットワークアドレス部を3桁一つ分にすることもできます。以下のようになります。

この場合、256×256×256=16,777,216個、実質、16,777,216-3=16,777,213個のホストアドレスを利用でき、その台数のパソコンやタブレット、スマホなどをそのネットワーク(「192」)に接続できます。

ここで、「なぜ、1つのネットワークにたくさんのパソコンやタブレットなどをつなげたいか?」というと、同じネットワークアドレスの中でだけは、「ファイルの共有やプリンタの共有」などができるからです。(ファイルがネットワーク経由で共有できれば、「ファイルをいったんUSBメモリにコピーしてから目的のパソコンにコピペする」などの面倒から解放されますし、プリンタの台数も、極論ですが1台で済む、などのメリットがあります。)

逆に、「ネットワークアドレスの値が異なるネットワーク同士」は、基本的には「遮断し合って」通信ができません。つまり、「ファイルの共有やプリンタの共有」ができなくなってしまいます。
「ファイルの共有やプリンタの共有」がしたいから、「1つのネットワークにたくさんのパソコンやタブレットなどをつなげたい」のです。


なお、「見かけ上は」ネットワークアドレスの値が同じでも、サブネットマスクの値が異なるネットワークは、「内部的には」「お互いに異なるネットワーク」となります。この場合もお互いが遮断し合い、ファイル共有やプリンタ共有はできません。そのような特性を利用して、あえてサブネットマスクの値を変えて、ネットワークを分断する、ということも、やることがあるそうです。
このように、サブネットマスクは、基本、「ネットワークの分断」「接続できる端末の増加」あるいはそれらの逆、ということに利用されるそうです。
(※逆に言うと、「ネットワークの分断・お互いに遮断しあう」という特性を活かして、『 最悪ウィルスに感染しても大丈夫な「テスト専用」のネットワークを作成する 』・・・といったことも可能です。)

  
  
★本題:「サブネットマスクとは?」

で、ここからが、「サブネットマスク」に関しての本題ですが、「サブネットマスク」とは、前述のように、「ネットワークアドレスを決める際に、どの3桁の位置で区切るか」、ということを決めるための設定値、ということになります。
(※厳密には違いますが、ここでは話を簡単にしたいので、便宜上あえて断言してしまっています。ごめんなさい!詳しくは専門家に聞いてください。)

例えば、ネットワークアドレスを

のように、前から3つ分の3桁にして、実質253台のパソコンやスマホを接続したい場合なら、
サブネットマスクの値は「255.255.255.0」です。

同様に、ネットワークアドレスを

のように、前から2つ分の3桁にして、実質65533台のパソコンやスマホを接続したい場合なら、
サブネットマスクの値は「255.255.0.0」です。

さらに同様に、ネットワークアドレスを

のように、前から1つ分の3桁だけにして、実質16,777,213台のパソコンやスマホを接続したい場合なら、
サブネットマスクの値は「255.0.0.0」です。

ここで、注目してほしいのは、
(a)ネットワークアドレスの3桁の数字の個数

(b)サブネットマスクの値の「255」の個数
です。

リンクしていませんか?

ネットワークアドレスを3桁3個分にしたいときは、「255の数も3つ」
ネットワークアドレスを3桁2個分にしたいときは、「255の数も2つ」
ネットワークアドレスを3桁1個分にしたいときは、「255の数も1つ」

表にするとこんな感じです。


※厳密には、ネットワークアドレスは上から「192.168.0.0」「192.168.0.0」「192.0.0.0」となりますが、理解しづらいので略して書きました。また、サブネットマスクの値には「255」以外にも値はあるので、さらに細かくネットワークを分断できるのですが、難しい話になってしまうので、ここではあえて簡単な例にするために「255」という値だけを使って説明させていただいています。
少し説明すると、「255」(これは10進数)という値ひとつあたりに対して、8桁分の「1とゼロ(=1ビット)」(つまり2進数)に変換できるのですが、IPアドレスもサブネットマスクも、「255」が4つ分なので、32桁分の「1とゼロ」に変換できます。(つまり32ビット分の1とゼロに。)
で、サブネットマスクのほうの32桁は、上の表でやったような感じの「255の幾つ分をネットワークアドレスに見立てるか」というような話を、今度は「その32桁のうちの、何桁分の1とゼロを ” ネットワークアドレス ” と見立てるか」ということをやります。サブネットマスクとしては、先頭から順番に「1」で表現した部分をネットワークアドレス、残りの「0」で表現された部分をホストアドレスとしています。
具体例参考:『「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典 「サブネットマスク」』
なので例えば、32桁のうちの、先頭から31桁を「1」にして、それを ” ネットワークアドレス ” とみなす、ということも理論的にはできます(結果、最後の1桁だけをゼロにして、ホストアドレスとする、ということになります)。なので、その際は、255と255の間にある「ドット」のことはあまり考えません。
その際の「ドット」については、「” ネットワークアドレス ” として何桁分を ” 1 ” にするか」を決めたのち、サブネットマスクの「8個毎の1とゼロ」の並びを「255」のような3桁表記に戻したときに、また「ドット」も使いなおします。
なお、『32桁のうちの、31桁の「1とゼロ」を ” ネットワークアドレス ” とみなす、ということも理屈上は可能』と書いてしまいましたが、その場合は実際には2つのIPアドレス(ホストアドレスが0と1の2つ)しか作れないらしく、多分ですがその2つのアドレスはネットワークアドレスとブロードキャストアドレスに使われてしまうので、「余ったIPアドレスは存在しない」ということになり、結局、端末自体は何も接続できないことになり、「ネットワークとしては一応作れるけれども、でも、物理的な端末を1台も繋げないので、結局は成り立たない」=「ネットワークにならない」、ということになるそうです。(なので基本 「/31 」「/32 」 という値のサブネットマスクを設定すると「ネットワークにならない」、ということになるそうです。詳しくはこちらのサイトでも計算してみてください→→『サブネットマスク計算(IPv4)』、『IPアドレス計算機(2進数も)(こちらは、1の羅列のサブネットマスクの値が見られます。)』

なお、
「/1」は=「1」1桁分でネットワークアドレスを、残りの「0」31桁でホストアドレスを表現したサブネットマスク、
「/2」は=「1」2桁分でネットワークアドレス、残りの「0」30桁は同上、
「/3」は=「1」3桁分でネットワークアドレス、残りの「0」29桁は同上、
「/30」は=「1」30桁分でネットワークアドレス、残りの「0」2桁は同上、

・・・という形になります。

それぞれを3桁ずつの(ドットで区切った)表記に直すと、
「/1」は「128.0.0.0」
「/2」は「192.0.0.0」
「/3」は「224.0.0.0」
「/30」は「255.255.255.252」
という形のサブネットマスクになります。)

ただ、ぶっちゃけ、255単位でも1/ゼロ単位でも、人間にはわかりにくい・・・、ということは変わりませんね(^^)。

※関連Webサイト
IP・サブネットマスクから手計算でネットワーク情報を求める
IPアドレス計算機(2進数も)
  
  
  
  
サブネットマスクのメインの機能は、こんな感じです。
イメージできますでしょうか?

実際には(もともとは)、「192」のネットワークアドレスだと、端末が1600万台以上も接続できてしまい、管理上とっても大変かつ面倒なことになるので、
「ネットワークアドレス部分を長くしてしまい、逆に接続する端末の数を少なくする」、
とか、
「社内の1つの大きなネットワークを、小さなサブネットワークに細かく分割する・複数のサブネットワークのグループを作る」、
とか、
「Ipv4だと、IPの枯渇問題があるから、外部へのIPアドレスはグローバルIPアドレス1個だけにしておいて、社内のネットワークはプライベートアドレスとサブネットマスクによって、細かく分割=複数のネットワークのグループを作る」、
とか、
「1つの192.168.11.51といったIPアドレスで、”数字は全く同じで変わらないのに”、でも、”複数の異なるネットワークや端末を表現できる” ので、IPv4のIPアドレスの枯渇にも対応しやすいよね・・・」
とか、
そういった目的のために利用されているのが「サブネットマスク」だそうです。
でも、もちろん、逆に、「1つのネットワーク内において、接続可能な端末台数を増やしたい場合」にも使えます。
なので、今ではサブネットマスクは、「IPドレスの値のうち、ネットワークアドレス部をどこまでにするか?」というための設定値・・・というイメージになっている・・・という感じのようです。

また、零細様の場合、ネットワークアドレスは、逆にサブネットマスクを「255.255.255.0」のまま変化させないようにして、「192.168.2」「192.168.145」「192.168.221」と直接3桁の数字のをいじる=変えることでも、ネットワークアドレスを変えることができます。
(3桁の数字の1個めでも3個めでも、どれでもOKです。市販書籍やWeb記事などによっては「192.168」は変えちゃダメと書かれていますが、多分ですけど、例えば外部向けサーバなどがLAN内に繋がってた・とかだとダメなのかもしれませんが・よくわかりませんが、でもそうじゃなければ基本的には、「ブロードバンドルーター」の「LAN側」のIPアドレスなら変えても大丈夫です。ただ、心配なら「192.168」のままとし、3つ目の3桁の値を後述のように変えます。なお、この場合も、それぞれは別々のネットワークになるので、ファイル共有もできなくなります。でも、逆にウィルス感染もしなくなります。ブロードバンドルーターのLAN側設定をそのように別々のネットワークアドレスに設定して、それぞれを数珠つなぎにさせる等々の形で、簡単に、別々の「独立した=データの行き来ができない」それぞれのネットワークを作ることができます。例えば1台目は「LAN側」を「192.168.1.0」というネットワークアドレスにして、2台目は(同じく「LAN側」を)「192.168.80.0」というアドレスにし、2台を数珠つなぎにすればいい、という形です。サブネットマスクなんていじる必要ありません。「255.255.255.0」のままでオッケーです。下手にいじると特に私たちのような素人はドツボにハマります。3桁ごとの10進数のIPアドレスそのもののほうでネットワークの違いが分かる方が私たち素人にはわかりやすいです。
例えばですが、2台目のブロードバンドルーターを 前述のようなIPアドレスの設定に変えて、その2台目の「WAN側」のポートを、1台目の「LAN側」のいくつかあるうちのどれかのポートにつなぎます。それで簡単に異なる2つのネットワークができあがります。
さらには、1台目と2台目の「LAN側」のポートに「たくさんのポートを持つHUB」をつなげば、それぞれ、「異なるネットワークとして そこそこの台数のパソコン等々をつなげる・・・」という形になります。もし足らなければ、今度はHUBを数珠つなぎにして接続口を増やします。HUBはIPアドレスもサブネットマスクも、設定する箇所はありません。買ってきたらすぐに数珠つなぎ用のポートにつなぐだけです。数珠つなぎ用のポートがどこかは説明書に書いてあります。

このような場合、どのネットワークも全て、接続上限台数が実質253台ずつになりますけど、でも、零細様の場合のネットワーク分割ならそれで十分なことがほとんどです。

零細様の場合、たくさんの異なるネットワークなんて要らないので、サブネットマスクは「255.255.255.0」のままで、「192.168.0」の「0」の部分を値を変えてネットワークを分割するケースのほうが圧倒的に多いです。それでも、0~255まで、つまり、256個のネットワークに分割できるわけですので・・・。
「192.168.0」の「168」の部分も変えてしまえば、256×256=65536個のネットワークにも分割できてしまいますし・・・。そんな感じです。

ということは、「例えば、パソコンが10台以下しかない零細様なら、たとえば5台ずつにネットワーク分割したい場合は、そもそもサブネットマスクなんていらない。IPアドレスの変更だけで、ネットワーク分割できてしまうので。」ということも言えます。これは、ほとんどのネットワーク機器の設定では、サブネットマスクが「255.255.255.0」に初期設定されていますが、「そのままで、いじらずとも問題ない・・・・」ということでもあります。

(※ただし(気を遣う必要がないとは言うものの)、下手に「255.255.255.0」を「255.255.254.0」のように変えてしまうと、見かけ上異なるネットワークアドレスであっても、同一ネットワークに含まれてしまうので注意が必要・・・、ということだけは覚えておきます。ぱっと見でネットワークアドレスの部分の数値が違うから「ウィルス感染拡大しない異なるグループ」と、「勘違い=ミス」をしないようにするためです。「いやいや、下手にサブネットマスクいじったら感染拡大しちゃうから」ということです。)

詳しくはこちらも読んでください。

なお、上の表ではわかりやすくするために、サブネットマスクの設定値を「255.255.255.0」「255.255.0.0」「255.0.0.0」の3つしか使いませんでしたが、実際にはもっと複雑で、前述のとおり、「128.0.0.0」「224.0.0.0」といった設定値もあるそうです。

また、「255.255.255.0」のことを「/24」と表記したリ、そういったこともあります。

詳しくは、こちら(「用語:サブネットマスクとは?02」)と、以下のサイトの「サブネットマスク電卓」にて、色々と調べてみてください。

参考URL
サブネットマスク計算(IPv4)/サブネット一覧(早見表:サブネットマスク電卓)
https://note.cman.jp/network/subnetmask.cgi

IP・サブネットマスクから手計算でネットワーク情報を求める
IPアドレス計算機(2進数も)