質問するログイン新規登録
ネットワーク

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

基本情報技術者

基本情報技術者とは、経済産業省が行う国家資格「情報処理技術者試験」の区分の一つです。試験ではプログラマーやシステムエンジニアなどIT業界で働くために必要とされる基礎知識や情報処理において論理的な考え方ができるか等が問われ、企業から高い評価を獲ることができ、IT業界の入門的な資格として人気があります。

意見交換

9回答

884閲覧

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

prament50m

総合スコア0

ネットワーク

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

基本情報技術者

基本情報技術者とは、経済産業省が行う国家資格「情報処理技術者試験」の区分の一つです。試験ではプログラマーやシステムエンジニアなどIT業界で働くために必要とされる基礎知識や情報処理において論理的な考え方ができるか等が問われ、企業から高い評価を獲ることができ、IT業界の入門的な資格として人気があります。

0グッド

3クリップ

投稿2025/09/15 07:12

0

3

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

基本情報技術者試験の過去問を解いていて、ふと疑問に思うことがありましたので、投稿しました。

【平成29年度 秋期 午前問35】
次のIPアドレスとサブネットマスクをもつPCがある。このPCのネットワークアドレスとして、適切なものはどれか。
IPアドレス:10.170.70.19
サブネットマスク:255.255.255.240
ア.10.170.70.0
イ.10.170.70.16
ウ.10.170.70.31
エ.10.170.70.255

回答:イ

以下を計算により導き出せ、回答が「イ」になることは理解できます。

IPアドレス:10.170.70.19
サブネットマスク:255.255.255.240
このとき
ネットワークアドレス:10.170.70.16
ブロードキャストアドレス:10.170.70.31
ネットワークアドレスを割り振れる(?)範囲:10.170.70.17~10.170.70.30

ここで疑問に思ったのですが、上記の情報を設定したPCをAとして、以下の情報を設定したPCをBとします。
AとBを同じLAN内に接続した場合、どのような挙動になるのでしょうか。
そもそも割り振れない?

B
IPアドレス:10.170.70.35
サブネットマスク:255.255.255.240
ネットワークアドレス:10.170.70.32
ブロードキャストアドレス:10.170.70.47
ネットワークアドレスを割り振れる(?)範囲:10.170.70.33~10.170.70.46

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

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

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

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

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

回答9

#1

Ham-tail

総合スコア19

投稿2025/09/15 08:56

AとBは異なるネットワークとして接続されるよ。
AとBは基本直接通信出来ない
だが通信出来るようにルーターなんかで制御もできる。

例えばWi-Fiを開放する時に
社内システムにアクセスされないように
ネットワークを切り分けておくわけ。
部署別に分けたりするね。

家庭で分ける意味はあんまないか。

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

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

#2

otn

総合スコア86444

投稿2025/09/15 18:14

AとBを同じLAN内に接続した場合、

同じHUBに異なるネットワークアドレスの機器を有線LANでつなぐということだと、Ham-tailさんの回答の通りそれぞれ内部同士では通信できます(HUBは中継時にはMACアドレスを使いIPアドレスは関知しないので)。

無線LANだと単に接続しただけでは混在は駄目じゃないかなと思ったので、AIに聞いてみましたが、「802.1X認証とRADIUSサーバーを活用した動的VLAN割り当て」という回答でした。その通りなら家庭用Wifiアクセスポイントだと無理です。
さらに聞いてみると、IEEE802.11ではSSIDごとに1つだけサブネット/VLAN情報を持っていて、このために1つのSSIDの中に複数サブネット混在はできないということのようです(IEEE802.11と適合しない全く独自設計のアクセスポイントと子機を作れば可能なはずだが現実的ではない)。WifiアクセスポイントにIPアドレスを設定するのは管理画面アクセスのためかとぼんやり思っていましたが違ってました。

本来L2レベルであるはずのアクセスポイントがL3のサブネット情報を持つ理由を聞くと、Wifiの802.11はEthernetの802.3を拡張する形で開発されたため、SSIDは仮想のネットワークセグメントとして作ったことが起源らしいです。仮想セグメントなら有線のようにサブネット混在可能でもいいのではと思ったのですが、他にも無線やCSMA/CAのオーバーヘッドとかいろいろあり納得しました。

以下、有線LANの話ですが、ネットAの機器とネットBの機器の間の通信や、それ以外(例えばインターネット)との通信を行うためには、ルーターが必要で、ルーターのそのHUBにつながる口には、この場合IPアドレスが2つ(それぞれのネットワークのIPアドレス、例えば 10.170.70.17 と 10.170.70.33)がついている必要があります。
1つのLANインターフェースに複数のIPアドレスをつけるのは一般的には可能ですが、家庭用ルーターの管理画面だとそういう設定をする画面はないでしょうね。

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

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

#3

winterboum

総合スコア23678

投稿2025/09/15 23:04

#2
Ham-tailさんの回答は「有線LANでつなぐということだとそれぞれ内部同士では通信できます」
とは書いていないと思います。
>HUBは中継時にはMACアドレスを使いIPアドレスは関知しないので
はそのとおりですが、その前提になる「相手のMACアドレスを知る」のにブロードキャストを使うので ブロードキャストアドレスが異なる相手のMACを入手できない。
ですので 「ネットワークアドレスが異なるhost同士」は同じセグメントにつないでいても有線であろうと無線であろうと、(通常の設定では)通信できません。
双方のARPテーブルに固定的に相手のIP と MACのペアを登録しておけばできますが、今のOSで手軽にそれができたかなぁ、、、

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

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

#4

winterboum

総合スコア23678

投稿2025/09/16 00:08

#3
>双方のARPテーブルに固定的に相手のIP と MACのペアを登録しておけばできますが、今のOSで手軽にそれができたかなぁ、、、

手軽かどうかは別として、手は有るようでした

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

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

#5

matukeso

総合スコア1689

投稿2025/09/16 02:28

どちらのPCでもルーティングテーブル的に、ネットワークが違うのでゲートウエイ(ルータ)を経由するパケットしか出せないハズ。HUB的には直結はその通りですが、この設定のIPv4以外で通信できる可能性が残されるだけです(IPv6とか)

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

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

#6

otn

総合スコア86444

投稿2025/09/17 18:16

「ネットワークアドレスが異なるhost同士」は同じセグメントにつないでいても有線であろうと無線であろうと、(通常の設定では)通信できません。

そのままではサブネットをまたがった通信ができないのは当然でしょう。私は「ルーターが必要で」と書いた通りで、相互の通信はルーターが必要だと思って書きましたが、

双方のARPテーブルに固定的に相手のIP と MACのペアを登録しておけばできますが、

なるほど、設定次第ではルーターなしでも可能そうですね。WindowsにもarpコマンドがあるのでARPテーブルへの登録は出来ますが、ARP登録だけだと駄目な気がします。通信相手のネットワークアドレスが自分とは異なるため、ARPテーブルを見る前にルーティングテーブルを見に行くはずで、そこに相手のネットワークへのルーティング情報、もしくはデフォルトゲートウェイが存在しないと駄目じゃないですかね。相手のネットワークが実は同一物理セグメント上にあるという情報をルーティングテーブルに登録する必要がありそうです。
原理的にはarpとrouteで登録すれば直接相互通信ができそうに思いますが、各種プログラムがそういう状態を想定してないとだめかもしれません。

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

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

#7

winterboum

総合スコア23678

投稿2025/09/18 02:08

編集2025/09/18 22:36

#6

私は「ルーターが必要で」と書いた通りで、相互の通信はルーターが必要だと思って書きましたが

失礼しました読み損ないました
>ARPテーブルへの登録は出来ますが、ARP登録だけだと駄目な気がします。

そか、ですね。
静的routeの指定も必要か。それもだめか、、、ルータ必須ですね。
AかBのNICに2つのIP振れば可能になりますが、それは命題から外れますね

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

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

#8

otn

総合スコア86444

投稿2025/09/20 02:27

「実用的にやってみたい」ということではなくて、興味での質問という前提で整理すると、
●有線LANの場合
1つのHUBに、ネットAのIPアドレスを持つ機器(以下ネットAの機器と書く。他も同様)、ネットBの機器を区別せずにそれぞれ複数台接続すると、ネットAの機器同士、ネットBの機器同士は通信可能。
ネットAの機器とネットBの機器の間の通信は、同じHUBにつないだだけではできないが、ルーターを接続してネットAとネットBの間の中継をするように設定すればルーター経由で通信できる。
(ルーターなしで相互通信できないか?というのは質問の趣旨を外れると思うので省略)

●無線LANの場合
1つのSSIDには、1つだけネットワークアドレスが関連付けられているので、そのネットワークの機器しかアクセスポイント経由での通信はできない。
ネットAとネットBで別のSSIDを使えばいいわけだが、それは有線LANでいうと別々のHUBを使うということになるので、質問の趣旨から外れる。
(ネットAと関連づいたSSIDを使って、ネットBの機器がネットBの他の機器へ通信を試みた場合に、どういう状態で通信不可になるのかは未確認)

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

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

#9

HogeAnimalLover

総合スコア4860

投稿2025/09/20 04:39

ここではIPv4として扱います。

この問の本質は「ネットワークアドレスの異なる複数PCを、物理的同一サブネット環境に接続した場合どうなるか」ということですよね。

物理的に結線するだけならば可能です。が、ルータなしでは互いに認識されません。

各PCは自分と同一ネットワークに属する他PCのことまでは直接認識可能です。なぜならば「ブロードキャスト」という通信で、同一ネットワーク内についての全問い合わせが可能だからです。そして、同一ネットワークに属さない相手に対する通信は、「デフォルトゲートウェイ」を窓口とし、これを経由して間接的に相手を認識します。デフォルトゲートウェイは通常ルータを指定します。したがって、(スイッチ経由どころか仮に直接物理的に繋がっていたとしても、)ネットワークアドレスが異なる場合は相手を認識できません。

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

この意見交換はまだ受付中です。

会員登録して回答してみよう

アカウントをお持ちの方は

関連した質問