SMTPをC++で記述されたアプリケーションの1つと統合しようとしています。私の目標は、認証なしで電子メールアドレスに関連付けられたSMTPサーバーに直接電子メールを送信できるようにすることです。つまり、アプリケーションをSMTPサーバーとして機能させ、他のSMTPサーバーと通信する必要があります。たとえば、yahoo.comからgmail.comに送信されるメール。
2 に答える
1
あなたの質問に答えるには、受信者の電子メール アドレスのドメイン部分 ("user@gmail.com" の場合は "gmail.com") の DNS ルックアップを実行して、その MX レコードを要求する必要があります。これにより、そのドメインの SMTP ホストのリストが表示されます。次に、そのリストを優先順にループし、成功するまで各ホストへの接続を試行します。その後、通常のSMTP 会話HELO
を続行し、 / EHLO
、MAIL FROM
、RCPT TO
などのコマンドを送信しDATA
てメールを配信できます。
于 2012-08-29T00:33:17.320 に答える
0
あなたが話しているのは、オープン メール リレー smtp サーバーのセットアップです。これらはかつてインターネット上での標準でしたが、スパマーの大群がそれらを悪用したため、一般的に眉をひそめています.
プライベート サブネット内にオープン リレーを設定していて、サブネット内のユーザーのみがそれを介して電子メールを送信できる場合でも、これは許容される方法です。ただし、外部からのアクセスを許可すると、インターネット メールのブラックリストに登録される可能性があります。
于 2012-08-28T21:13:43.337 に答える