戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

ネットワークスペシャリスト 2022年 午前208


問題文

SMTP(ESMTPを含む)のセッション開始を表すコマンドはどれか。

選択肢

DATA
EHLO(正解)
MAIL
RCPT

🔒 解説は解答すると表示されます

SMTPセッション開始【午前2解説】

正解の理由

SMTP(ESMTP含む)では、通信の最初にクライアントがサーバへ挨拶と機能問い合わせを行います。これを行うコマンドが (EHLO)です。EHLOはクライアントが自分の識別名を送ると同時に、サーバがサポートする拡張機能(例: STARTTLS, AUTH, SIZE, 8BITMIME など)を応答で通知するために使われます。なお、EHLOは拡張機能を利用する際に用いるのが通常で、サーバがEHLOを認識しない場合はHELOにフォールバックしてセッションを開始できます。MAIL、RCPT、DATAはEHLO/HELOによるセッション成立後のメッセージ送信の手順(トランザクション)で使われるため、セッション開始を表すコマンドではありません。

解法ステップ

  1. SMTPの基本シーケンスを思い出す(挨拶 → 差出人指定 → 宛先指定 → データ送信)。
  2. 「挨拶と機能問い合わせ」に該当するコマンドを選ぶ(EHLO/HELO)。
  3. 選択肢を順に確認して、挨拶でないもの(MAIL, RCPT, DATA)を除外する。
  4. 拡張機能の問い合わせであるEHLOがセッション開始に当たると判断する。

選択肢別の誤答解説

  • ア: DATA
    DATAはメール本文を送信するフェーズを開始するコマンドで、セッション開始(挨拶)ではありません。通常はMAIL/RCPTで宛先指定が済んだ後に用います。
  • イ: EHLO
    EHLOは正解です。クライアントがサーバに対して挨拶を行い、ESMTP拡張機能を問い合わせるためのコマンドです。サーバは250応答行でサポート機能を列挙します。サーバがEHLOを受け付けない場合はHELOへフォールバックして挨拶します。
  • ウ: MAIL
    MAIL(MAIL FROM:)はトランザクションの開始であり、差出人アドレスを指定するコマンドです。セッション全体の最初の「挨拶」ではありません。
  • エ: RCPT
    RCPT(RCPT TO:)は個々の受信者を指定するためのコマンドで、セッション開始の役割はありません。

よくある誤解

  • 「ESMTPでは必ずEHLOを使うべきだ」→ 誤り。クライアントは通常EHLOを送って拡張機能を確認しますが、サーバがEHLOを受け付けない場合はHELOでフォールバックできます。EHLOが使えない=接続不能、ではありません。
  • 「DATAがセッション開始だ」→ 誤り。DATAはメッセージ本文の送信開始であり、挨拶や差出人/宛先指定より後に使います。
  • コマンド順序を無視するミス(例:RCPTの前にDATAを送る)→ サーバがエラー応答(503 Bad sequence)を返します。順序を覚えておきましょう。

補足コラム

典型的なEHLOのやり取り(簡略化例):
C: EHLO client.example.com
S: 250-mail.example.com Hello client.example.com
S: 250-STARTTLS
S: 250-AUTH PLAIN LOGIN
S: 250-SIZE 10485760
S: 250 8BITMIME
上のようにサーバが250で複数行を返し、どの拡張を使えるかが分かります。もしサーバがEHLOに対して500系の応答を返す(未対応)場合、クライアントは次に HELO client.example.com を送って基本的なSMTPセッションを確立できます(HELOは拡張機能問い合わせを行わない挨拶コマンド)。参考RFC: RFC 5321 と ESMTP 拡張に関する RFC(例: RFC 1869)。

FAQ

Q1: EHLOを送らずにHELOだけで済ませても良いですか?
A1: はい。HELOは基本的なSMTPの挨拶であり、拡張機能を使わない限りHELOだけで通信可能です。ただし、STARTTLSやAUTHなどの拡張を使うにはEHLOでサーバのサポートを確認する必要があります。
Q2: サーバがEHLOを受け付けないとメールは送れない?
A2: いいえ。サーバがEHLOを拒否してもHELOでフォールバックすれば、拡張機能を使わない範囲で送信できます。ただし機能制限により送信できない場合もあります。
Q3: EHLOとHELOの応答コードはどう違う?
A3: 応答コード自体(例: 250, 500)は同じプロトコル上の意味を持ちますが、EHLOに対してはサーバが250で複数行にわたりサポート機能を一覧表示するのが一般的です。HELOは単一の挨拶応答となります。

関連キーワード: SMTP, ESMTP, EHLO, HELO, MAIL FROM, RCPT TO, DATA, STARTTLS, AUTH, RFC5321, RFC1869
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

ネットワークスペシャリスト
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について