- ベストアンサー
最上位から24bitが全部1
こんにちは、いつもお世話になっております。 >例えばサブネットマスクの255.255.255.0という値は、32bitの2進数で考えると最上位から24bitが全部1、それ以外が0という値である。 この文章の最上位から24bitが全部1というのは 何を指しているのでしょうか? ご教示お願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
サブネットをよく見るとドット(.)で区切られていますよね? 8ビットの項目が4つあるという意味です。 8ビットは上位4ビット、下位4ビットで区切られて説明されることが多いから255というのは「111 111」となります。 上位と下位を4ビットで区切る理由は16進数で表示すると二文字になることに起因しているのかも。つまり「111 111」は「F F」になる。 御質問にあるサブネットを16進数で表記すると「FF.FF.FF.00」になる。 IPv4のサブネットマスクは全部で32ビットだが別の言い方をすれば4バイト。1微意とは8ビットだから「8ビット*4バイト=32ビット」となる。 通信用語としてはオクテットと呼ばれており、ビットのように16になったり24になったりすることはない。オクテットは必ず8ビット。 だからIPv4のサブネットマスクは4オクテット。 質問中のサブネットはIPv4では「1の部分をネットワークアドレスとし、0の部分をホストアドレスとする」という意味となります。 記述方法としては「192.168.1.1/24」とか「192.168.1.1/255.255.255.0」と言うような記述となります。
その他の回答 (1)
- asuncion
- ベストアンサー率33% (2127/6289)
サブネットマスク(32ビット)を a.b.c.d という並びで考えると、 a, b, c, dはいずれも8ビット符号なしの数で 0~255のどれかの値をとります。 おっしゃっている255という値を2進数で 表記すると11111111となり、8ビットがすべて1です。 255.255.255.0を 2進で表記すると、 11111111111111111111111100000000 となり、最上位から24ビットがすべて1、それ以外の8ビットが すべて0となります。
補足
回答ありがとうございます。 これはネットワークアドレスの複数表記に関してなのですが、 >なお、先頭172なので、クラスBですよね? 172.16.0.0~172.31.255.255 (172.16.0.0/12) フルならこのように記載されるでしょう。末尾に12とあるので 12は8+4ですので、 1111 1111 | 1111 0000 | 0000 0000 | 0000 0000 でマスクすればいいんですよ。だからサブネットマスクなので^^ 16は0001 0000ですよね? 31は0001 1111ですよね?(16+16から1を引いた数=31) だから、172.16.any~172.31.anyになるんです。 32になったら、上位が"0001"ではなくなるため、クラスBでは なくなる。 これの12は8+4ですので、 1111 1111 | 1111 0000 | 0000 0000 | 0000 0000 でマスクすればいいというのと、 16は0001 0000ですよね? 31は0001 1111ですよね? という回答文の意味が解らないのですが これも 最上位から24bitが全部1で残りが0という事なんでしょうか? ここの所がイマイチよく解りません。
お礼
回答ありがとうございます。