#はじめに
私がエンジニア1年目の時にIPアドレス・GW・ルーティングの関係性をよく理解せずに
ネットワーク切替業務をしていて、作業内容を答えられないなど苦い経験をしました。
というのも覚えることが多く、勉強している間に忘れてしまっていたので、
なかなか理解しきれない方に向けて、ポイントで説明していきたいと思います。
#IPアドレス
まずはIPv4のIPアドレス(以降IP)の最低限の知識から。
〇IPについて
0~255が4つに区切られた機器や仮想マシンの論理番号。
基本的にはIPを設定して各機器同士が通信を行います。
IPにはプライベートアドレスとグローバルアドレスがあり、
プライベートアドレスは家の中や会社の中で使い、グローバルアドレスはインターネット上で使うもので
以下のプライベート側のIPの範囲を覚えれば、それ以外はグローバルと覚えられます。
〇サブネットマスクについて
通信をするのには欠かせずIPに紐づいて、通信ができる範囲を決めるものになります。
IPと同じように0~255が4つに区切られた数字の羅列や/0〜/32で表されます。
以下の例だとサブネットマスクの255に紐付く箇所が決められたネットワークの範囲となり、
通信できる範囲は【192.168.1.0~192.168.1.255】で256個分のIPが持て、
256個の機器や仮想マシンに割り当てて相互の通信が可能になっています。
※正確には最初(192.168.1.0)と最後(192.168.1.255)のIPは他で使われるため、254個になる
通信できる範囲をセグメントや同セグメントと呼んだりします。
以下のサイトでIPとサブネットマスクを入れると通信できる範囲(ホストアドレス)を計算してくれるので
まずはホストアドレスのIP同士が通信できると覚えてみてください。
参照サイト:https://note.cman.jp/network/subnetmask.cgi
少し詳細にお話するとサブネットマスクは前述の通り/0から/32まであり、
区切られ方によって通信できる範囲も細かく変わっていきます。
細かい区切りは計算が必要ですが、4つ区切りごとにサブネットマスクは8の倍数になっているので、
そこを覚えておくとある程度通信できる範囲を押さえることができます。
#GW(ゲートウェイ)
ゲートウェイについて説明します。
同セグメント以外のセグメントに通信をしたいときのご意見番・通信を託す機器などになります。
通常、同セグメント内で割り当てられたIP同士でしか通信はできませんが、
ゲートウェイを指定することによって別のセグメントにも通信ができるようになります。
※ゲートウェイが通信先のセグメントの情報を知っている必要がある。
呼び方はネクストホップやデフォルトゲートウェイ(略してデフォゲ)とも呼ばれたりします。
#ルーティング
主に別セグメントに通信を橋渡しすることを指します。
PC、ゲートウェイ、L3SW、FW…全ての機器や仮想マシンはルーティングのテーブルを持っています。
自身がもっているIPとGW、追加したルーティングの情報が載っています。
※デフォルトで入ってるルーティング情報もある。
通信が始まる際にルーティングテーブルを参照し、宛先のIPが自身のIPのセグメントならそのIPが設定されているポートに通信を流します。
以下の絵でPC-AとPC-BがGWに接続されている構成があるとします。
PC-Aは宛先のIPがルーティングテーブルをあるか確認し、そのIPが自身のIPのセグメントではなく、
追加したルーティング情報もない場合にGWに通信を託します。
通信を受け取ったGWも自身のルーティングテーブルを確認して、
ルーティングテーブルの情報からネットワークの宛先に該当すればそのゲートウェイに通信を流します。
受け取ったPC-Bも通信を返す際に同じ段取りを踏んで、別セグメント同士の通信ができる流れになります。
#さいごに
IPにはIPv6があったり、ルーティングを追加した時の挙動などを書けてないですが
まずは上記を理解して基本的な通信に必要なものを覚えてもらえると嬉しいです。