みの雑多ブログ

勉強したことをアウトプットしたり、しなかったり

IPv4サブネットマスクとネットワークアドレスとグローバルキャストアドレス

私が理解した順にかきかき

IPアドレス

ネットワーク部(どこの~)とホスト部(だれ~)から成り立つ
どこからどこまでがネットワーク部か、の考え方に2つあり

クラスフルアドレス
第1オクテットのビット数のパタンでネットワーク部とホスト部を分解したもの
アドレスクラス 第1オクテットの値 ネットワーク部
Aクラス 1~127 8ビット
Bクラス 128~191 16ビット
Cクラス 192~223 24ビット

※224以降はマルチキャスト

アドレスクラスの境界は2進数にするとよくわかるよ

1 0000 0001
127 0111 1111
128 1000 0000
191 1011 1111
192 1100 0000
223 1101 1111
224 1110 0000
クラスレスアドレス
ネットワーク部とホスト部の区切りをサブネットマスクを利用したもの

※よく見る /28 とかの書き方をプレフィックス表記と呼ぶ。そして、以下はそれで書く
100.22.33.1/28 の場合

0110 0100 0001 0110 0010 0001 0000 0001 // 100.22.33.1を2進数に
1111 1111 1111 1111 1111 1111 1111 0000 // /28の正体

1の部分がネットワーク部、0の部分がホスト部
ホスト部がすべて0のものがネットワークアドレスに使用され、ホスト部がすべて1のものがグローバルキャストアドレスに使用される
100.22.33.0がネットワークアドレスで、100.22.33.15がグローバルキャストアドレス
ホストで割り当てられるのは、100.22.33.1~100.22.33.14ということですたい

このアドレスを正規表現で表したいんじゃ

100\.22\.33\.([[1-9]|1[0-4])