質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
TCP

TCP(Transmission Control Protocol)とは、トランスポート層のプロトコルで、コネクション型のデータサービスです。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

Q&A

解決済

5回答

54998閲覧

サブネットマスク/32について

eve

総合スコア19

TCP

TCP(Transmission Control Protocol)とは、トランスポート層のプロトコルで、コネクション型のデータサービスです。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

2グッド

2クリップ

投稿2020/10/30 11:58

ネットワークに関する質問です。
サブネットマスクについて、ipアドレスのネットワーク部を示すものであり、
ネットワーク部は一つのサブネットを示すもの、ホスト部はそのサブネットの中で個々のホストを区別するものだという理解をしています。
そこで、サブネットマスク/32をしばしば見かけるのですが、これはどういう意味でしょうか?
そのサブネットに一つしかホストが存在しないという意味でしょうか。

take88, manmar-usagi👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答5

0

ベストアンサー

/32 は IPの範囲を表していていますが「個数が1個のIPアドレスの範囲」という意味合いになるかと思います。

ルーターなどのソフトウェアでは、あるIPが その範囲内かどうかをプログラムで判定しますが、そういった際に使用される表現です。

計算方法の例

例えば IPアドレス 192.168.123.253 が、192.168.123.0/24 の範囲内かどうかは次のように求めます。

擬似コード

ip_address = `192.168.123.253` ip_range = `192.168.123.0` subnet_mask = `255.255.255.0` if ( ip_address AND subnet_mask ) == ip_range => この真偽値は TRUE (=範囲内)
  • /24 は IPアドレス表現だと 255.255.255.0 になります。
  • IPアドレス 192.168.123.253255.255.255.0 の論理積を求めると 192.168.123.0 になります。
  • 192.168.123.0/24 のアドレス部分と等しいため範囲内だと判定されます。

同じ計算を 192.168.123.0.255 の IP 全てに対して行っても、すべて 192.168.123.0 という結果になり、これらすべてが 192.168.123.0/24 の範囲内であると判定されます。

** /32 の場合の例**

  • /32255.255.255.255 になります
  • 192.168.123.253255.255.255.255 の論理積は 192.168.123.253 になります。

/32 の場合は、IPアドレスが何であれ必ず同じ値になります。これは、/32 は すべてのビットが 1 なので、論理積と求めると、必ず IPアドレスと同じ値になるためです。

192.168.123.253 -> 11000000 10101000 01111011 11111101 ... (A)
255.255.255.255 -> 11111111 11111111 11111111 11111111 ... (B)
(A) AND (B) = 11000000 10101000 01111011 11111101192.168.123.253 ※(A)と等しい

以上から、192.168.123.253/32 の範囲を満たすIPアドレスは 192.168.123.253 のみであり、/32 は、完全に一致する1個のIPアドレスを意味しています。

投稿2020/10/30 20:34

編集2020/11/02 09:03
take88

総合スコア1351

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

eve

2020/11/02 09:59

詳しくありがとうございます!理解が深まりました。 助かりました。
guest

0

サブネットマスク/32

そもそも論ですが、「/32」のような表記は、それ自体がサブネットマスクというわけではありません。CIDRと呼ばれ、単にアドレス範囲を示すだけの用途で使われることもあります。

投稿2020/10/30 12:01

maisumakun

総合スコア145177

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

eve

2020/11/02 10:00

ご回答ありがとうございます。
guest

0

X.X.X.X/XX という表現は、CIDR(lassless Inter-Domain Routing)と呼ばれる可変長サブネットマスクのプレフィックスを表現するものです。

当然ですが、上記の意味合いなので /31 や /32 といった記述は現実的ではありません。

ただ、/32 に関しては、慣例的にホストを示すことに使用されます。
業界の慣例なので、あまり深く考えず「そういうもの」として覚えてしまうのが良いです。

蛇足
他にも、/24 を「クラス C 一つ」と呼んだり、結構初学者殺しの慣例の多い表現ですw

投稿2020/11/02 10:24

編集2020/11/02 10:25
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

サブネットマスクについて、ipアドレスのネットワーク部を示すものであり、

ネットワーク部は一つのサブネットを示すもの、ホスト部はそのサブネットの中で個々のホストを区別するものだという理解をしています。

その理解はお勧めしません。
例えば、この teratail.com のサイトのIPアドレス(の1つ)が 34.120.225.12 ですが、このサブネットマスクが何か分かるでしょうか? (反語)
少なくとも私は知りませんし、知る必要もありません。
あくまでIPアドレスはそれ自身が「通信相手を識別するためのID」だからです。

ではサブネットは何かと言うと、「自分が通信相手をどの塊で分類するか」のためのものです。
その塊をまとめて識別するのがネットワークアドレスであり、192.168.1.0/24 と言った場合は、「192.168.1.1~192.168.1.254を一塊として扱いますよ」と「自分が」見做しているということです。
※この場合 192.168.1.255 はブロードキャストアドレスという特殊なアドレスになるのでちょっと置いておきます

つまり、相手ではなく「自分」の都合で決まるものであり、同一の通信相手であっても考える人によって異なるサブネットになりうるのです。
※もちろん、とは言え自分の所属するネットワーク上の位置を無視して、勝手にサブネットを考えるわけにもいかず、環境に縛られることにはなりますが。特に、自分の持つIPアドレスについては。

ここまで来れば

そこで、サブネットマスク/32をしばしば見かけるのですが、これはどういう意味でしょうか?

の意味は難しくないかと思います。
その人なり機器が、1アドレス毎バラバラの管理単位として相手を区別している、ということであって、世の中に1つしかホストがないネットワークがある、という意味ではありません。

投稿2020/10/30 13:50

angel_p_57

総合スコア1672

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

eve

2020/11/02 10:00

ご回答ありがとうございます。理解の仕方を変えようと思います。
guest

0

おそらく何らかの設定ファイルの記述ではないでしょうか。

xxx.yyy.zzz.www/20だと「対象のIPアドレスとxxx.yyy.zzz.wwwの上位20ビットが同一なら~~する」というような意味で、/32だと「32ビット全体が一致したら~~~する」という事になります。

サブネットアドレスの表示の場合も、「通信相手のIPアドレスとxxx.yyy.zzz.wwwの上位20ビットが同一なら自分と同一サブネット内と判断する」ということでそれの一般化です。

投稿2020/10/30 12:55

編集2020/10/30 12:56
otn

総合スコア84457

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

eve

2020/11/02 10:00

ご回答ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問