電子メールでSMTPサーバーを指定する必要がないのはなぜですか?

電子メールでSMTPサーバーを指定する必要がないのはなぜですか?

sendmailやsendEmailなどのコマンドラインツールを使用して電子メールを送信するときは、電子メールアドレス、パスワード、およびSMTPサーバーを指定する必要があることに注意してください。 Python SMTPモジュールを使用するなど、他の言語でも同様ですsmtplib

mailなぜこの情報を指定せずにデフォルトのコマンドを使用して電子メールを送信できるのか疑問に思います。

前任者。次のコマンドを実行すると通過します。

ls | mail <email.address> 

答え1

mailメールユーザーエージェント(MUA)。これは、ユーザーに電子メールサブシステムへのインターフェースを提供するのに役立つツールの1つです。たとえば、電子メールを送信するために使用できるだけでなく、従来の方法でシステムに送信されたメッセージを読むこともできます。配送ではなくユーザーに興味があります。システムに複数のMUAをインストールできます

sendmaileximなどpostfixはMTA(メール転送エージェント)です。これらのツールはユーザーフレンドリーとは関係ありませんが、メッセージの送受信を担当します。そのうちの1つだけがシステムに存在します。処理(スパム対策、DKIM、DMARCなど)、転送(たとえば、直接転送、スマートホストなど)、転送(mailfile、maildir、別のプログラムなど)を処理する方法を知るように構成する必要があります。

MUAを使用してメールを送信する場合は、配信のためにMTAにメールが送信されます。

関連情報