0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

VLSM備忘録

Last updated at Posted at 2020-08-23

##経緯
VLSMの授業を受けたのですが、VSLMとは何なのか理解したものの、「さぁじゃあ実際にVLSMを使ってIPアドレスを割り当てて行こう!」となった途端に追いつけなくなり、数日かけてやっと何をどうしたら良いのか分かってきたので、忘れないようにメモしておきたいと思います。

##原因
そもそも、何がわからないのかよくわからなかったので、方法論を調べてみてもよくわかりませんでした。で、授業中に取ったノートと写真に撮った黒板を使って、もうとりあえずやってみようと思ったら、何が原因かよくわかったんですけど、10進数と2進数の変換で手こずってたんです。授業で行った所与のIPアドレスとサブネットマスクを表に書き直す方法をしっかりやってなかったんですよね。三桁のかけ算を暗算でしようと思ったら詰まってしまうに決まってるんですよね。

##予備知識

  1. サブネット
  • 分割されたネットワークのこと
  • ネットワーク一つだけでは効率的な運用が出来ないので必要
  • 分割されたネットワークに個別のルールを設定したりするのに便利
  1. サブネットマスク
  • IPアドレスのどこまでがネットワークを指定し、どこまでがホストを指定しているか識別するための指標
  • 例えば255.255.255.0とあれば、192.168.0.0の”192.168.0”の部分がネットワークであり、残りの"0"から"255"までがホストを指定する
  1. ネットワークポーションとは
  • IPアドレスがどのネットワークに所属しているか識別する部分
  • 例えば192.168.0.0の"192.168.0"の部分(サブネットマスク255.255.255.0の場合)
  1. ホストポーション
  • IPアドレスがどのホストを指定しているか識別する部分
  • 例えば192.168.0.0の"0"の部分であり、"255"まで割り当てできる(サブネットマスク255.255.255.0の場合)
  1. 2進数と10進数のテーブル
ポジション 2^n ビット IPアドレス数
1 2^0 1
2 2^1 2
3 2^2 4
4 2^3 8
5 2^4 16
6 2^5 32
7 2^6 64
8 2^7 128

##方法
128.153.0.0/22のネットワークアドレスを、四つのサブネットに分割する課題がありました。

A = 54ホスト
B = 66ホスト
C = 127ホスト
D = 30ホスト

###1. まず始めにホスト数の大きい順に並び替えて、それぞれ必要なビット数を考えていきます。

ネットワーク名 ホスト数 必要ビット
C 127 8
B 66 7
A 54 6
D 30 5

Cのネットワークは127ホストありますが、最初と最後のIPアドレスはホストに使用出来ないので、7ビットをホストに割り当ててしまうと、割り当てられるIPアドレスの数が一つ足りなくなってしまうので、8ビットをホストに割り当てる必要がありました。

####2. 次にビット数やネットワーク部とホスト部の区別をわかりやすくするために、表を作っていきます。
IPアドレスを計算する筆算みたいなものだと考えています。

ネットワーク名 ネットワーク部 ホスト部 IPアドレス サブネットマスク
C 128.153.000000
B 128.153.000000
A 128.153.000000
D 128.153.000000

所与のIPアドレスの22ビットまではネットワーク部とのことで、それ以降の10ビットをホスト部に使用出来ます。ビット数がわかりやすいように、128.153以降のアドレスを2進数表記しています。

###3. IPアドレスの範囲を決めていきます。
最もホスト数の多いCのIPアドレスから考えていきます。

ネットワーク名 ネットワーク部 ホスト部 IPアドレス サブネットマスク
C 128.153.000000 00.00000000 128.153.0.0 /24 255.255.255.0
128.153.000000 00.11111111 128.153.0.255
B 128.153.000000
A 128.153.000000
D 128.153.000000
  • ホスト部とIPアドレス

  • ホスト部を指定する際に必要な8ビットを太文字表記しています。

  • 必要なビット数は8なので、ホスト部ですが"00."をネットワーク部に含めます。

  • "00000000"から"11111111"までがホスト部になり、そこから10進数表記にすると普段見るIPアドレスの形になります。

  • ちなみに、予備知識に記載した表を使うと、2進数から10進数への変換がやりやすいです。

  • サブネットマスク

  • 所与のサブネットマスクは/22なので、本来のホスト部は10ビットですが、8ビットしか必要としていません。

  • 残りの2ビットをサブネットに割り当てるので、Cのサブネットマスクは/24になります。

こんな感じで他三つのIPアドレスの範囲も考えていきます。

ネットワーク名 ネットワーク部 ホスト部 IPアドレス サブネットマスク
C 128.153.000000 00. 00000000 128.153.0.0 /24 - 255.255.255.0
" 00. 11111111 128.153.0.255 "
B 128.153.000000 01.0 0000000 128.153.1.0 /25 - 255.255.255.128
" 01.0 1111111 128.153.1.127 "
A 128.153.000000 01.10 000000 128.153.1.128 /26 - 255.255.255.192
" 01.10 000000 128.153.1.191 "
D 128.153.000000 01.110 00000 128.153.1.192 /27 - 255.255.255.224
" 01.110 11111 128.153.1.223 "
  • ホスト部とIPアドレス

  • Bのホスト部は7ビットのみ必要です。

  • Cのサブネットに"00."が使われたので、"01."に変更して、余ったホスト部を含めたら、"01.0"もネットワーク部になります。

  • サブネットマスク

  • ネットワーク部のビット数が1ビット増えたので、サブネットマスクは/25になります。

ネットワーク部を繰り上げるコツとして、前回決めたネットワーク部の最後の桁が0だった場合、次のネットワークはその部分を1に変更すれば繰り上げることができます。

###終わり
もっと効率が良い方法があったり、間違えがあったりしたら是非、指摘してほしいです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?