メインコンテンツへスキップ
見出し画像

IPとかMACとか。

    ITパスポートに出てくる、IPとかMACアドレスとかなんだかごちゃごちゃしてきたので、一気にまとめてもらったよ。Gemiちゃんに♡
    あたしのノートの中身をみんなにも💕

    あたし:DHCP、ARP、DNS、NAT、MACアドレス、サブネットマスクとかインターネットと家庭のLANを経由して自分のPCに接続したときの通信に関する用語とその意味を教えて。

    インターネットと家庭のLAN(ローカルネットワーク)を経由して、あなたのPCがWebサイトなどと通信する際、これらの技術はすべて「データを正しい宛先へ届けるための役割分担」をしています。

    全体のイメージをつかみやすくするために、それぞれの用語を「住所や郵便の仕組み」に例えて分かりやすく解説します。

    1. 通信の土台となる「住所」の基礎知識
    まずは、通信相手を特定するための2つの住所(アドレス)と、その範囲を決めるマスクの役割です。

    MACアドレス(Media Access Control Address)
    「機器そのものに刻まれた、世界に一つだけのマイナンバー」

    パソコンやスマホ、ルーターなどの通信機器の製造時に割り当てられる物理的な識別番号です。後述するIPアドレスが「変わる住所」なのに対し、MACアドレスは「絶対に変わらない識別子」です。

    IPアドレス(Internet Protocol Address)
    「ネットワーク上の住所」

    インターネットやLAN内で、機器を特定するために使われる変動可能な数字の住所です(例: 192.168.1.10 や 203.0.113.1 )。

    サブネットマスク(Subnet Mask)
    「住所の『〇〇市』と『〇〇番地』の区切り線」

    IPアドレスのどこまでが「同じネットワーク(市)」で、どこからが「個別の機器(番地)」なのかを区別するためのフィルターです。自分のPCと通信相手が「同じLAN内(同じ市の中)」にいるのか、「インターネットの向こう側(外の世界)」にいるのかを判断するために使われます。


    2. つながる・調べるための「仕組み(プロトコル)」
    PCをネットワークにつないだり、相手の住所を調べたりするための自動システムです。

    DHCP(Dynamic Host Configuration Protocol)
    「入居時に部屋番号(IPアドレス)を自動で割り振ってくれる管理人」

    パソコンを家庭のWi-Fi(LAN)につないだ瞬間、ルーターから自動的に「君のIPアドレスはこれね!サブネットマスクはこれ!」と、通信に必要な設定を一括で割り当ててくれる仕組みです。

    ARP(Address Resolution Protocol)
    「LAN内で『〇〇番地(IPアドレス)の人の、マイナンバー(MACアドレス)を教えて!』と叫ぶ案内係」

    同じLAN内でデータを送るとき、PCは相手のIPアドレスは知っていても、物理的なMACアドレスを知りません。そこで「このIPアドレスを持っている人、MACアドレスを教えて!」とLAN全体に問いかけ(ブロードキャスト)、相手のMACアドレスを特定する仕組みです。

    DNS(Domain Name System)
    「『お名前(URL)』から『住所(IPアドレス)』を引く電話帳」

    人間が使う「google.com」や「yahoo.co.jp」といったWebサイトの名前(ドメイン)を、コンピュータが理解できる数字の住所(IPアドレス:例 142.250.196.142)に変換してくれる仕組みです。


    3. 家と外(インターネット)をつなぐ技術
    家庭内だけでしか使えない住所を、世界中で使える住所に変換する、ルーターの心臓部です。

    NAT(Network Address Translation)
    「マンション(家庭内)の私書箱と、一戸建て(外の世界)の表札を変換する受付担当」

    家庭のLAN内では、世界中で使い回されている「プライベートIPアドレス(例: 192.168.〜)」がPCに割り振られます。しかし、これはインターネットの世界では通信に使えません。
    NATは、PCが外の世界と通信するときに、ルーターが持つ世界に一つだけの「グローバルIPアドレス」へ一時的に住所を書き換えて、インターネットへ送り出してくれる技術です。帰ってきたデータは、また元のPCのプライベートIPアドレスに書き戻して届けてくれます。


    💡 PCがWebサイトを開くときの「一連の流れ」パソコンをWi-Fiにつなぐと、DHCPがPCにIPアドレスとサブネットマスクを教えてくれる。
    ブラウザにURL(例: google.com)を入れると、DNSがそのサイトのIPアドレスを調べてくれる。
    宛先IPアドレスが外の世界(インターネット)だとサブネットマスクで判断し、まずは家庭のルーターへデータを送るため、ARPを使ってルーターのMACアドレスを調べる。
    ルーターに届いたデータは、NATによってインターネットで使えるグローバルIPアドレスに変換され、外の世界へ飛び出していく。

    Gemiちゃんによる解説

    いちお、セカンドオピニオンにも聞いてみた。
    以下は覚える必要ないけど、念のために貼っておくね。

    あたし:この解説は妥当か調べてみて。

    結論:試験対策としてはほぼ妥当。ただし2か所、正確には補足した方がよい点があります

    DHCP・ARP・DNS・サブネットマスクの説明と、「Webサイトを開くときの一連の流れ」の順序(DHCP → DNS → サブネットマスクで判定 → ARPでルーターのMAC取得 → NAT)はどれも正しく、よくできたまとめです。気になる点は以下の通りです。

    補足すべき点1:「MACアドレスは絶対に変わらない」は言い過ぎ

    製造時に割り当てられる、という説明自体は正しいですが、「絶対に変わらない」は現在は正確ではありません。最近のiPhone・Android・Windowsはプライバシー保護のため、Wi-FiネットワークごとにランダムなMACアドレスを使い分ける機能を標準で有効にしています(iOS 14以降の「プライベートWi-Fiアドレス」、Android 10以降の「ランダムMAC」)。技術的にMACはソフトで書き換え(偽装)することもできます(Appleサポート、Android公式ドキュメント、NTTBP技術コラム)。[source.android][ntt-bp][support.apple]

    試験対策としては「機器に割り当てられる識別子」で押さえてOKですが、「絶対に変わらないマイナンバー」と暗記すると、ランダム化に関する問題で混乱する可能性があります。

    補足すべき点2:説明しているNATの中身は実は「NAPT(IPマスカレード)」

    ノートのNATの記述「帰ってきたデータは元のPCのプライベートIPに書き戻して届けてくれる」は、複数台のPCが1つのグローバルIPを共有する動作なので、正確にはNAPT(IPマスカレード)です。純粋なNATはIPアドレスの1対1変換で、1つのグローバルIPで同時に通信できるのは1台だけ。複数台が同時につながるのはTCP/UDPのポート番号も一緒に変換して「どのPCの通信か」を区別しているからです(JPNIC、NEC Aterm機能説明)。[aterm][nic.ad]

    家庭のルーターがやっているのはこのNAPTの方なので、ノートの内容は実態に合っていますが、「ルーターはどうやって戻すPCを見分けるのか → ポート番号」の一行があると、ITパスポート〜基本情報レベルのNAPTの問題にも対応できます。

    細かい点(誤りではない)「グローバルIPの例:203.0.113.1」は、実は文書や例示のために予約されたTEST-NET-3という特殊なアドレスで、実際のインターネットでは使われません(RFC 5737)。実在しないアドレスを例に使うのはむしろ正しい作法なので、間違いではありません。[rfc-editor]
    DHCPはIPアドレスとサブネットマスクだけでなく、「デフォルトゲートウェイ(ルーター)のIP」と「DNSサーバーのIP」も一緒に配っています。流れの説明で「ARPでルーターのMACを調べる」とありますが、その前に「PCはDHCPからルーターのIPを教えてもらっている」を一言足すと、話のつながりが完璧になります。


    全体として、初心者向けの直感的なまとめとしては合格点で、上記2点を書き加えれば試験対策ノートとして信頼できる内容になります。

    Perplexityによる検証
     
     

    tomo

     
     
    ある日突然降ってきたイメージとか概念たち。それらを紡いで届けます。 AIに書かせない純度100%の人が紡いだ言葉。 AIとの会話はあり。扉絵はほぼAI生成。 でも、あたしの表現はあたしだけのもの。

    あなたへのおすすめ