IPアドレスの計算、簡易版

ネットワークアドレス計算方法を書いていてわれながら効率悪すぎるだろうと思って検索したら、
簡単な計算法が見つかった。

http://www.infraexpert.com/study/ip7.html

ネットワークのことについて調べるとたいてい行き着くサイトである。


サブネットマスク終端がオクテットの途中にある場合、

サブネットマスクを10進数値にして、255でない部分は 256-マスクのオクテット値を計算すると、
そのマスクで分割されるアドレスの最小値が計算できる、というのだ。


172.16.64.110/26 であれば、

/26のマスクは 255.255.255.192

256-192 = 64

/26のサブネットは 64の倍数


110が含まれる最小の64の倍数は64


なるほど。




でも、これだと/29とかで後ろのほうにあるやつが面倒じゃないかな?


172.16.64.221/29 でやってみる。

/29のマスクは 255.255.255.248


256 - 248 = 8


221 / 8 = 27 余り 5

27 * 8 = 216

だから、 172.16.64.216/29 か。

たいしたことないな。2進数に変換するのにくらべれば。