この記事では応用情報で問われるIPアドレス、MACアドレス、ポート番号についてIT初心者にも分かりやすく解説します。
IPアドレス
- IPアドレスはスマホやPCに割り当てられる番号で、ネットワーク上の住所のようなもの。
- IPアドレスはLAN間の通信で使われ、OSI基本参照モデルの第3層、ネットワーク層で使われる。最終的に届けたいPCはIPアドレスで情報を持つ。
MACアドレス
- MACアドレスはLAN内の通信で使われ、OSI基本参照モデルの第2層、データリンク層で使われる。隣接するPCへの通信に使うのはMACアドレス。
- ARPはIPアドレスからMACアドレスに変換するプロトコル。
ポート番号
- ポート番号はデータを届けるプログラムを識別するために使う番号。
- ウェルノウンポート番号はあらかじめ用途が決められているポート番号。
イーサネットフレームの宛先情報の送出順序
- 宛先MACアドレス → 宛先IPアドレス → 宛先ポート番号の順で送出する
応用情報ではIPアドレス、MACアドレス、ポート番号に関する問題が出題されます。是非最後までご覧ください。
IPアドレスとMACアドレスの違い
IPアドレスもMACアドレスも宛先のコンピュータにデータを届けるために使われる番号ですが、実は全然違うものなんです。
誰に届けるための番号?
IPアドレスはネットワーク間の通信で使い、MACアドレスはLAN内の通信で使います。
OSI基本参照モデルで見ると、IPアドレスは第3層のネットワーク層で動き、MACアドレスは第2層のデータリンク層で動きます。
また、IPアドレスは最終的に届けたいPCを、MACアドレスは次に届けるPCを表します。
PC1からPC2にデータを届けるとき、送信元IPアドレスと宛先IPアドレスはずっとPC1とPC2で変わりませんが、送信元MACアドレスと宛先MACアドレスはその都度変わっています。ルータ1からルータ2にデータを送る場合も送信元/宛先MACアドレスが変わりますが、ネットワーク間の通信なので使っているのはIPアドレスです。
ARP
ARPはIPアドレスからMACアドレスに変換するためのプロトコルです。
どういうことか詳しく見てみましょう。
最終的に届けたいPCは宛先IPアドレスを見れば良いんでしたよね。しかし、LAN内の通信ではMACアドレスを使います。つまり、外部ネットワークからデータを受取ったルータは、宛先IPアドレスは知ってますが、LAN内のPCのMACアドレスを知らないのでデータを送れないという状態になります。
ここで出てくるのがARPです。
ルータはLAN内の全てのPCに対して、「宛先IPアドレスのPCはどれだ?」とリクエストを送ります。そのIPアドレスが割り振られているPCは自分自身のMACアドレスと一緒に応答を返します。こうすることで、ルータは宛先MACアドレスを知れるわけですね。
ポート番号
ポート番号はマンションの部屋番号みたいなものです。IPアドレスがマンションの住所、ポート番号は部屋番号になります。
IPアドレス=マンションの住所(建物は特定出来る)
ポート番号=部屋番号
マンションには色々な人が住んでいるので、マンションまで荷物を運んだ後、部屋番号まで荷物を運ぶ必要があります。一方、コンピュータにも色々なプログラムが入っているので、コンピュータにデータが届いた後、さらに正しいプログラムにまでデータが届かないといけません。
この時、データを届けるプログラムを識別するために使われるのがポート番号です。
ウェルノウンポート番号
ポート番号は0番~65535番まで存在します。その中でも0番~1023番まではウェルノウンポート番号と呼ばれ、あらかじめ用途が決められています。
ここでは有名なウェルノウンポート番号だけ紹介します。
SMTP | 25番 |
---|---|
DNS | 53番 |
HTTP | 80番 |
POP | 110番 |
FTP | 制御用 20番 転送用 21番 |
Q.ウェルノウンポート番号を設定する理由は?
A. メールやWebサーバへのアクセス等、よく使われるサービスに対して、あらかじめポート番号を決めておくことで、スムーズに通信することが出来ます。
実際の通信で見るポート番号
実際の通信でどのようにポート番号が活躍するのか見ていきましょう。
パソコンでWebサイトを閲覧するとき、宛先ポート番号を80に指定してWebサーバにWebページを依頼します。Webサーバと通信する時はHTTPを使用し、HTTPのポート番号は80と決められているからですね。
宛先ポート番号を指定すると同時にどこのポート番号にデータを返して欲しいのかを送信元ポート番号として指定します。こうすることで、どのプログラムにデータを返せば良いか判断出来ますね。
イーサネットフレームの宛先情報の送出順序
イーサネットはLAN内の通信で使われる規格で、フレームはパケットのようなものです。
要するに、LAN内でやり取りされるデータがイーサネットフレームですね。
イーサネットフレームには、宛先IPアドレス、宛先MACアドレス、宛先ポート番号の情報が含まれています。この3つが無いと、相手のPCのプログラムにデータが届かないからですね。では、これらの宛先情報はどういう順番で送られるのでしょうか?
先に使う情報から順番に送られるので、宛先MACアドレス → 宛先IPアドレス → 宛先ポート番号の順番になります。
応用情報技術者試験での出題例
令和6年度秋期問36
応用情報技術者
午前試験 令和6年度秋期問36
IPv4のLANに接続されているプリンターのMACアドレスを,同一LAN上のPCから調べるときに使用するコマンドはどれか。ここで,PCはこのプリンターを直前に使用しており,プリンターのIPアドレスは分かっているものとする。
ア arp
ウ netstat
イ ipconfig 又は ifconfig
エ ping
正解は”ア”
LAN内の、IPアドレスが分かっているPCのMACアドレスを調べるのはARPです。
令和5年度春期問33
応用情報技術者
午前試験 令和5年度春期問33
1個のTCPパケットをイーサネットに送出したとき,イーサネットフレームに含まれる宛先情報の,送出順序はどれか。
ア 宛先IPアドレス,宛先MACアドレス,宛先ポート番号
イ 宛先IPアドレス,宛先ポート番号,宛先MACアドレス
ウ 宛先MACアドレス,宛先IPアドレス,宛先ポート番号
エ 宛先MACアドレス,宛先ポート番号,宛先IPアドレス
正解は”ウ”
宛先情報は、先に使う順で送出されます。
まずはLAN内のルータに届けるためのMACアドレス、次はルータ間でやり取りするためのIPアドレス、最後にプログラムに届けるためのポート番号です。
令和4年度秋期問32
応用情報技術者
午前試験 令和4年度秋期問32
TCP/IPネットワークで,データ転送用と制御用とに異なるウェルノウンポート番号が割り当てられているプロトコルはどれか。
ア FTP イ POP3 ウ SMTP エ SNMP
正解は”ア”
プロトコルのうち、データ転送用と制御用でウェルノウンポート番号が違うのはFTPです。
令和3年度秋期問32
応用情報技術者
午前試験 令和3年度秋期問32
TCP/IPネットワークにおけるARPの説明として,適切なものはどれか。
ア IPアドレスからMACアドレスを得るプロトコルである。
イ IPネットワークにおける誤り制御のためのプロトコルである。
ウ ゲートウェイ間のホップ数によって経路を制御するプロトコルである。
エ 端末に対して動的にIPアドレスを割り当てるためのプロトコルである。
正解は”ア”
ARPはIPアドレスからMACアドレスを取得するプロトコルです。