• 締切済み

IPアドレス範囲(IPアドレス-サブネット)の計算について

お世話になります。 Javaで以下のような、IPアドレス範囲を求めるプログラムを作成しております。 192.168.0.0 - 192.168.255.255 ←→ 192.168.0.0/16 ネットワーク系の知識もないので"サブネットとは?"から調べながらな取り組んでいます。 理論上の求め方が分かってもJavaでプログラムとなるとお手上げの状態となり困っております。 参考になるサイトなどの情報があればご教授下さい。 よろしくお願いします。

  • SORAK
  • お礼率37% (11/29)
  • Java
  • 回答数3
  • ありがとう数5

みんなの回答

  • SUGOIYO
  • ベストアンサー率53% (32/60)
回答No.3

すみません下限のほうはANDをするまえにサブネットマスクを32ビットでビット反転しなければいけませんでした。

  • SUGOIYO
  • ベストアンサー率53% (32/60)
回答No.2

ipアドレスをサブネットマスクでandしたものとorしたものを使えばよさそうですね。 この例でいうと、192.168.0.0をまず結合しC0A80000にします (説明が16進数じゃないとめんどうなので以下16進数をつかいます。) サブネットマスクを求めます。 2^(サブネットマスク数) -1 = 2^10 -1 = 0xFFFF それぞれのANDとORをとったものが下限-上限になります。 C0A80000 - C0A8FFFF が範囲になります。 これをもとの表記にもどせば完成です。

  • SAYKA
  • ベストアンサー率34% (944/2776)
回答No.1

サブネットでそのまま引くしかないね。 ただ、見た目が10進数だから判りにくいけど、これ単に4byteの情報だから、16進数や2進数の演算について考えたら良いんじゃないかな。 プログラム化するにはとりあえず人が考える場合の手順を書き出す事だね。

関連するQ&A

  • IPアドレスの範囲の求め方

    あるネットワークマスクが接続されているルータのポートのアドレスが、190.70.15.1であるとき、そのネットワークにおいて、使用してもよいIPアドレスの範囲を答えろ。 ただ、サブネットマスクは、255.255.255.192とする。 考え方としては、10進数を2進数に直す。 ネットワーク10111110.10001100.00001111.00000001 サブネット11111111.11111111.11111111.11000000 これの式の求め方と詳しい考え方を教えてもらいたいです。

  • グローバルIPアドレスとサブネット

    現在ネットワーク勉強中の者です。ISPがグローバルIPアドレスを振り出すときはネットワーク部(例:192.128.128.0)のみを振り出すのでしょうか。それともホスト部も含め(例:192.128.128.35)振り出すのでしょうか。 参考書にグローバルIPアドレスに255.255.224のサブネットマスクをかけて、サブネットワークを増やす例が載っていたのですが、仮に普通の企業でこれをやるとしたら、192.128.128.0の形でもらわないとできませんよね?それとも192.128.128.35の形でもらって、ISP自身がサブネット化してるのでしょうか?個人的には後者だと思うのですが。

  • IPアドレスのサブネットマスクの設定について教えてください。

    サブネットマスクの設定について教えてください。 【ネットワーク情報】 ・自分のホストがいるネットワーク(A)  10.4.0.0 255.255.0.0 (10.4.0.0/16) ・L3スイッチ  ネットワーク(A)は、VLAN40に属しています。  VLAN40 は、10.4.0.0/16 がIPアドレスの範囲です。  特にVLAN40 内ではアクセスコントロールはしていません。 上記ネットワーク上に、サーバーを立てました。 IPアドレスは、 10.4.255.30 で、MACアドレスにてDHCPサーバの予約で IPを配布しています。 念のため、サーバーにも手動でIPアドレスを振ろうと思っているのですが、 この場合のサブネットマスクは 255.255.255.0 で良いのでしょうか? それとも 255.255.0.0 にした方がよいのでしょうか? 255.255.255.0でサブネットマスクを設定しても、255.255.0.0 からアクセス出来る ような気がするのですが、どうなのでしょうか。 ご教授くださいますようお願い致します。

  • 同じサブネットに属するIPアドレス

    IPアドレスが192.168.1.34のPCと同じサブネットに属するIPアドレスはどこまでかを求めよ.ただしサブネットマスクは255.255.255.240が設定されているものとする. という問題が出たのですが,答えを聞いてもいまいちわかりませんでした. サブネットマスクの240の部分→11110000,よってホスト部が0000で14台. だから192.168.1.34の34+14で192.168.1.48までが同じサブネット,という考えでいいのでしょうか. 説明ではネットワークアドレスを求めていたようなのですが,求める必要があるのかがわかりません.

  • IPアドレスのサブネット化について

    IPアドレスのサブネット化について 参考書をこなしていって選択型の基本情報技術者試験の問題はスラスラとけるようになったのですが 本当に理解しているのかどうか、確かめたいので問題から筆記で答えに導いて理解しようと思い 問題を解いていたのですが、サブネット化の問題で躓いてしまいました。 「ある会社にIPアドレス[150.89.89.0/24]が割り当てられ、社内でこれをサブネット化に分割して使用し、各々40台のPCが接続されるとする IPアドレス順に数えて先頭から2つ目のサブネットのIPアドレスの範囲とそのサブネットに収容される各々のコンピュータに設定すべきNetmask値はいくつになるか。」 問題が16個にサブネット化するなどならば、乗数分0を左にシフトして整数に戻せば値が出るのは理解できるのですが、40台接続されている・・という意味がわからず困っています・・・。

  • PerlでIPアドレスとサブネットマスクから計算

    Perlを使用してIPアドレスとサブネットマスクから範囲内にあるIPアドレスを展開できるようにしたいです。 【例】 192.168.1.0 255.255.255.0の場合 ↓↓ 192.168.1.0 192.168.1.1 192.168.1.2    ・    ・    ・ 192.168.1.253 192.168.1.254 192.168.1.255 のような感じに展開できるようなものを作成したいと考えております。(サブネットマスクは様々です。) 何卒宜しくお願い致します。 なお、展開したいIPアドレス帯は1000個以上あります。ひとつのテキストファイルに一行にひとつのセットで記入されています。 【展開したいテキストファイル】 192.168.1.0 255.255.255.0 10.1.1.128 255.255.255.128 ・ ・ ・ 172.16.10.192 255.255.255.192 のように記入されています。 宜しくお願い致します。

  • IPアドレス、サブネットマスク について

    こんにちは^^ シスアドについてなのですが IPアドレス:192.168.1.18 サブネットマスク:255.255.255.240 の場合、 ネットワークアドレス:192.168.1.16 パソコンに割り当てられないIPアドレス:192.168.1.16と192.168.1.31 であってますでしょうか? よろしくお願いします♪

  • IPアドレスだけでサブネットマスクが無くても何故アクセスできる?

    例えばOKWave『http://okwave.jp』のIPアドレスは210.132.71.10ですが、何故IPアドレスだけでアクセスできるのか疑問を感じました。 理由はサブネットマスクが分からなければ、どこまでがネットワークアドレス部かわからないのに、どのようにルーティングされているかと思いました。どなたか、分かりやすくご教授お願い致します。

  • IPアドレスとネットマスクについて

    表題について勉強中です。 頭の整理をしたいので、ご教授ください。 IPアドレス 192.168.0.1 サブネットマスク 255.255.255.0 上記の設定の時に ネットワークアドレスは、192.168.0.0/24で、アドレスの範囲は1~254になると思います。 もし、 IPアドレス 192.168.0.1 サブネットマスク 255.255.254.0 だったとすると、 ネットワークアドレスは、192.168.0.0 0/23で、アドレスの範囲は1~510になると思いますが、192.168.0.1 ~ 192.168.1.254ということでよろしいですか? また、上記の設定のとき、192.168.2.10はセグメントが違うため、アクセス不可能になるってことですか?

  • サブネットアドレスの計算方法が分かりません

    本日TCP/IPの基礎を習いました。どうしてもサブネットアドレス の計算方法がわかりません。 IPアドレス      192.168.200.108 サブネットマスク   255.255.255.240 サブネットマスク第4オクテットは1111000となるので、左4バイトまで ネットワーク部だとはわかりました。 正解は192.168.200.96 です。何故96が出てくるのか分かりません どなたか分かりやすく教えて頂けると助かります。 よろしくお願い致します。

専門家に質問してみよう