2011-12-15 25 views
1

私のIISからSMTPがインストールされているテスト電子メールを送信しようとしていますが、IPアドレスを使用して電子メールを送信する方法が混乱しています。ここで は私のコードはIPアドレスを使用してメールを送信するには?

SmtpClient m = new SmtpClient(); 
m.Host = "xxx.xxx.xxx.xxx"; // my IP address. 
m.Port = 25; 
m.Send("xxx.xxx.xxx.xxx", "[email protected]", "Test", "This is a test email....."); 

でエラー

を与えるこのコードは、指定された文字列は、電子メールアドレス のために必要な形式ではありません。

UPDATE
私はコンセプトを送信する電子メールに新しいです。

+0

あなたのIPアドレスは電子メールヘッダーに自動的に含まれますので、心配はいりません。しかし、あなたの目的が異なるIPアドレスから出現することになっている場合、このテクニックはスプーフィングと呼ばれ、soumeの国/アクティビティでは違法になる可能性があります –

+0

@Mihalis Bagos:いいえいいえ私はなりすましを探していません。しかし、なぜ私のコードはエラーを与えている? – Anderson

答えて

0

あなたはアドレスから必要:

m.Send("FROM EMAIL ADDRESS HERE", "[email protected]", "Test", "This is a test email....."); 

Documentation Send(string, string, string, string)

チャンスは、あなたがこのメールに

を返信しない指示

[email protected]からメールを受け取ってきましたされています

それはtのようですあなたのメールサーバーが認証されたアドレスを望んでいるかどうかによって、彼はあなたの最善の賭けになるでしょう。たとえば、www.domainY.comはdomainY.comのメールアドレスのみを送信します。多くのルールが存在する可能性がありますが、ルールはありませんが、それは別の時間になる可能性があります。

+0

私は自分のIISから送信していますので、どのように 'FROM EMAIL ADDRESS'を取得できますか? – Anderson

+0

'do-not-reply @ domain.com'のように作成します。 – Joe

+0

実際にはドメイン名を持っていません。私はIPアドレスしか持っていません。 – Anderson

2

According to MSDNの場合、Send()の最初の引数は差出人アドレスでなければなりません。電子メールでは、これは別の電子メールアドレスです。あなたはIPではなく、電子メールを与えています。

IPアドレスは、電子メールアドレスのホスト名部分として使用できます。たとえば、次のように

[email protected] 

(私は疑うけれども現代のメールシステムがそれを好きになるでしょうし、スパムとしてまたは他のいくつかの方法で、多くの月フラグそれが迷惑メールとして扱う。)しかし、それは全体のアドレスとして使用することはできません。

+0

'webmaster'はそれがキーワードですか? – Anderson

+0

@Anderson:電子メールアドレスのランダムな例です。あなたはそれを使う必要はありません。 (実際には、実際のメールアドレスを使用することをお勧めします。受信サーバーでエラーが発生した場合、そのアドレスにバウンスメッセージを送信することをお勧めします)。 – David

0

送信元アドレスは、必要なものです。私は通常、送信されている電子メールを表す巧妙でわかりやすい名前を選びます。しかし、この住所に送り返されたメールは決して陸にはならないでしょう。

smtpを使用している場合は、server.domain.comなどのsmtpサーバーが必要です。