こんにちは。この件に関して前回まで、回答・アドバイスしてくださった方有難う御座います。
今、既存のネットワーク中(大学・会社など)にメールサーバーを構築しています。(OS:Red Hat Linux6.2J)
Eudoraというメーラーを使用すると、受信はしっかりとできます。しかし、送信ができませんでした。(サーバーマシンからは送信できました。)
この問題に関して、EudoraのSMTPサーバの設定をホスト名からIPアドレスに変更したことにより送信できるようになりました。これにより、どうやら、DNSの設定に問題があるということなのですが・・・
まず、既存のネットワークに構築する場合、キャッシュ(オンリー)サーバーとして設定すればいいと、書籍に書いてあったので、そのように設定したつもりです。
/etc/resolv.conf
domain abc.def.ac.jp 自ホストのドメイン名
nameserver 123.45.678.90 中継サーバーIPアドレス
/etc/named.boot
;
;a caching only nameserver config
;
directory /var/named
cache . named.ca
primary 0.0.127.in-addr.arpa named.local
/etc/named.confはインストール時と設定は変えていません。
どこか、間違えているところがあるとおもうのですが・・・??

あと、/etc/hostsにIPアドレスとホスト名を書いておいても、DNSの設定は必要なのでしょうか?DNSの設定をする以前は、pingをかけるとホスト名でつながっていることが確認できるのですが、nslookupを実行すると、うまくいきませんでした。これは、なぜなのでしょうか・・?pingの時はホストが見つけられているのに・・と思いました。
表現が不適切なところもあるかもしれませんが、アドバイスなどしていただければ助かります。よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (6件)

それでは不具合の整理をしたいと思います。


今回のようなケースはかなり頻発する不具合なので覚えていて損は無いでしょう。

---

 一般的にsendmail.nomxを使用する(MX_sendmail=noに設定する)とDNSの検索を行わなくなるような錯覚に陥りがちですが、たとえDEFAULT_RELAYをIPアドレスで指定したとしても、"[ ]"というDNS検索を回避させる指定で設定しない限り、その情報をDNSサーバーに問い合わせに行ってしまいます。この際に、resolv.confの設定に基づいてsendmailはDNS情報を取得しようとしますので(たとえば、自分自身でDNSが稼動している場合にも、resolv.confには自分自身をネームサーバーとして記述します)、ここに情報がないと、

Name server:xxx:host name lookup failure

 という、ネームサーバーが見つからないエラーを返します。ですから、この場合の対応としては、

1.Default_relayのサーバー名を"[ ]"で囲む
2.resolv.confを作成し、どこからかDNS検索をさせるようにする

 のいずれかという事になり、今回の場合はちょうど「2.」で対応したケースに当たるので正常に稼動するように戻ったわけです。ただ、できればsendmail.nomxを四余売れる場合には出来るだけDNSに依存しない設定にしておいたほうが管理しやすいので(完全にDNSと縁が切れるため)、「1.」の対応方法もあるのだという事も覚えておくとよいと思います。

----

 それから、クライアントのほうですが、なぜsmtpサーバーのほうの設定だけが引っかかり、POPサーバーの設定は引っかからなかったのかが疑問として残りましたが、これも原因はメールサーバーがメールを送信できなかった事と同じで、メールサーバー名からIPアドレスを検索する方法が無かったため、接続する事が出来なかったためです。そのため、クライアント側のhostsにメールサーバーの情報を登録する事で、メールサーバー名からIPアドレスを検索する事を可能にしてあげたわけです。そして、通常、こういった処理をしない限り、クライアントのメーラーではsmtpサーバーやPOPサーバーの指定はIPアドレスで行います。
 また、今回は分かりやすい方で対応方法を説明させていただきましたが、こちらのほうも実際にはメールサーバー名からIPアドレスを知る方法は複数存在するので、列記しておきたいと思います。

1.hostsファイルに直接書き込む
2.TCP/IPの設定で設定し、中継サーバーからDNSを参照する

 つまり、こちらでもDNSを利用することは可能なわけです。
 その場合、Windowsマシンであれば「コントロールパネル」にある「ネットワーク」を開けば設定できます。こちらの方法も、機会があったらぜひ試してみてください。

---

 というわけで、今回の不具合は双方とも共通した原因で、「サーバー名からIPアドレスへの変換(名前解決)が円滑に行われていなかったため」でした。サーバー側では「DNSを利用する解決法」を、クライアント側では「DNSを利用しない解決法」を取ったかたちになっているため、別々の問題のように見えるかもしれませんが、双方ともに、同種の問題だったわけです。そのため、双方ともに名前解決が円滑に行えるように対処を施したという事になります。
 以上、参考になりましたら幸いです。対応、お疲れ様でした。
    • good
    • 0
この回答へのお礼

大変分かりやすく回答して頂き有難う御座います。
自分の中で、こんな事なのかなぁと言うように、曖昧になっていたことが、説明して頂いたことで、しっかりと何が原因でどのように解決していったのかが、分かりました。
とてもためになりました。と、同時に初心者とはいえ、自分の知識の少なさを知りました。少しずつでも、勉強していこうという気持ちになりました。
それでは、多くの回答・アドバイス有難う御座いました。

お礼日時:2001/06/28 16:22

/etc/hostsに中継サーバーが登録してあるとすると状況は少々複雑になります。


まず、resolv.confに中継サーバーを登録していたわけですから、実際にはsendmail.defのどこかの設定でDNSを検索している恐れがあります。ただ、DNSを使用する項目はそれほど数があるわけではないのでそれぞれについて確認は可能です。

mx_sendmail(デフォルトはyes)
CANON(デフォルトはyes,mx_sendmail=noの場合自動的にnoにされる)
ACCEPT_BESTMX(デフォルトはno)
DEFAULT_RELAY(デフォルトでは未定義)
LOWER_MX_OK(デフォルトはno、MAIL_RELAY_RESTRICTIONがyesになっているときのみ有効)

主に送信時にDNSを使用する要因は上記の4つです。このうちmx_sendmailがnoになっているわけですからCANONも確認不要となりますので、

ACCEPT_BESTMX=no/または未定義
LOWER_MX_OK=no/または未定義

である事を確認してください。また、DEFAULT_RELAYを設定する時に、

DEFAULT_RELAY='smtp:[relay.host.name]'

と中継サーバー名を[ ]で囲まないとDNSを検索しようとしてしまうので注意してください。それから、もう一点、

DIRECT_DELIVER_DOMAINS

の設定も確認してください。これがallになっているとすべてのメールドメインに対し、中継サーバーを経由せずに宛先ドメインへ直接メールを送ろうとしてしまいます。sendmail.nomxでは下記の設定にしておいたほうがいいでしょう。

DIRECT_DELIVER_DOMAINS=none

---

それから、namedの停止についてですが、該当のファイルが無い場合、

# chkconfig named off

というコマンドを試してみてください(うまくいかない場合はman chkconfigでマニュアルを参照してみてください)。こちらでも起動しないように設定する事が出来ます。

以上、また試してみてください。
    • good
    • 0
この回答へのお礼

沢山のわがままな質問に答えていただき大変感謝しています。
とりあえず、メールサーバーの方は、メーラーからでも送受信できるように設定することができました。
本当に有難う御座いました。
今回の回答の中で1点だけ
DEFAULT_RELAY='smtp:[relay.host.name]'
この部分なんですが、[]でホスト名をくくっていませんでした。
そのため、DNSを検索しようとしていたのだと思います。さらに、そのDNSの設定ができていないために、ホストを探すことができなかったのかなぁと思いました。
最終的には、
/etc/resolv.confの中身は消さないでとっておいて、クライアントの方のhostsファイルにメールサーバーのホスト名とIPアドレスと書きこんだら、なぜか、しっかりと動作しているようです。
なぜでしょうか?もう少し、締め切らないで置いておくので、お暇がありましたら、教えて頂けないでしょうか?よろしくお願い致します。
本当に助かりました。pointが最高20点しかないのが残念です。有難う御座います。
あとこの場をお借りして、私の3度に渡るメールサーバー構築に関する質問に回答・アドバイスをしてくださった、Sarukanさんをはじめとする方々に本当に有難う御座いました。

お礼日時:2001/06/28 14:47

度々失礼致します。


一点説明が抜けておりました。大変申し訳ありません。

sendmail内のdefoult_relayの指定が、中継サーバーのIPアドレスでなく、中継サーバーのメールサーバー名になっている場合、Linuxのメールサーバーのhostsに中継サーバーの情報を登録する必要がありますので、もしこの場合に当てはまるなら設定してあげてください。
おそらく、この問題だと思います。

---

また、namedを使用しないときの設定ですが、「/etc/rc.d」か、「/etc/rc.init.d」ディレクトリ直下の「rc.inet1」もしくは「rc.inet2」というファイルのうちのどれかにnamedのON/OFF設定の項目があるので、そこでnamedをOFFにして再起動を掛けてあげてください。その後はnamedが起動しなくなります。

---

以上で、おそらく正常に動くと思います。
    • good
    • 0
この回答へのお礼

何度もご丁寧な回答有難う御座います。
メールサーバーの/etc/hostsファイルには中継サーバーのIPアドレスとホスト名は書き込んであるのですが・・・ホストがみつからないと言われてしまいます。
namedを使用しないという設定ですが・・・/etc/rc.dのディレクトリはありました。/etc/rc.init.dはありませんでした。しかし、/etc/rc.dの下に・・・rc.inet1又rc.inet2というファイルがありません・・・
あるのは、
ファイル:rc rc.local rc.news rc.sysinit
ディレクトリ:init.d rc0.d~rc6.d
です。ディレクトリはinit.dの中は関係ありそうなのが、/etc/rc.d/init.d/nemadというファイルぐらいです・・・
どのファイルのどんなところを直したら良いのか検討がつかない状態です・・
namedさえ止めてしまえば送受信できるようになるのでしょうか?
キャッシュサーバーとかに設定しなくてもよいのでしょうか?
度々申し訳ありませんが、御回答よろしくお願い致します。

お礼日時:2001/06/28 09:38

お手数をおかけしました。


まず今回の設定を整理するところから説明させていただくと、

1.メールサーバーのresolv.confの設定は不要
2.メールサーバーのnamed(DNS)は止めてしまって構わない
3.クライアントのhostsにメールサーバーを登録した方が好い

という事が分かりました。
ということで、解決策としてそれぞれの対応を説明させていただきます。

1.メールサーバーのresolv.confの設定は不要

sendmail.mxでなくsendmail.nomxを使用するメールサーバーはそもそもDNS検索を行わず(stutic_route_fileを利用しない限り)、無条件でdefoult_relayへメールを配送するのでDNSを参照させる必要はありません。対応としては、resolv.confファイルは消してしまいましょう(あとから手で作成することも可能ですので削除してからの心配も不要です)。

2.メールサーバーのnamed(DNS)は止めてしまって構わない

前述の通り立ち上げられようとしているメールサーバーは、メール配送をDNSに依存しません。そのためサーバー自身のDNSも動かす必要はないため、named.confの設定は特にいじらず、namedというデーモンを起動しないように設定変更してしまってください。

3.クライアントのhostsにメールサーバーを登録した方が好い

クライアントからメールサーバー名を使用してうまくメールが送信できない原因は、smtpサーバーを見つけられないことが最も濃厚です。これはクライアント側の問題ですので、メールサーバーでの対応は必要ありません。Windows98のマシンの、windwosフォルダの中にhostsというファイルがありますので、そこにメールサーバー名とメールサーバーのIPアドレスを登録してあげてください。おそらくサーバー名でもメール送信が出来るようになると思います。登録方法は、Linuxのhostsファイルに書き込むのと同じフォーマットで行を書き込めばOKです。

以上、試してみてください。

この回答への補足

御回答有難う御座います。
先程、回答して頂いた通りに、設定しようと試みました。
1と3は行いましたが、2のnamedというデーモンを起動しないような設定とはどのような事なのでしょうか?
一応、まずやってみたのが、デーモンを止めてしまおうと思い、
/etc/rc.d/init.d/named stop
のコマンドを実行したのですが、止めることに失敗してしてしまいます・・・
次に、/etc/host.confのファイルの中を
order hosts,bind
multi on
から
order hosts
multi on
としてbindを消しました。
クライアントの方のメーラー(Eudora)で送受信のテストをしたのですが、
受信はできましたが、送信がエラーは出ないのですがやはり、送れませんでした・・・(泣)
そして、メールサーバーの/var/log/maillogファイルを参照してみると、
......stat=Deferred:Name server:ikuta-ns:host name lookup failure
となっています。
なぜ、できないのでしょうか?namedを起動させないと言う方法が間違えているのでしょうか?どの様に設定したら、良いでしょうか?
お手数おかけしますが、御回答よろしくお願い致します。

補足日時:2001/06/27 12:38
    • good
    • 0

BIND4系のネームサーバーの定義だと感じましたが、



>etc/named.confはインストール時と設定は変えていません。

デフォルトのままだということでしょうか?だとしたら、うまく動きません。

例)/etc/named.boot
directory /var/named
cashe . named.root
primary 0.0.127.in-addr.arpa 0.0.127.in-addr.arpa
primary xxxxx.xx.jp xxxxx.xx.jp
primary yyy.zzz.xxx.qqq.in-addr.arpa yyy.zzz.xxx.qqq.in-addr.arpa

今使用している、OSについている運用ガイドはありますでしょうか?
そこに、たぶん定義の例題があると思いますが・・。
    • good
    • 0
この回答へのお礼

BIND4系のネームサーバー?勉強不足で何系とかは良くわかりません。申し訳ありません。
書籍とアドバイスを照らし合わせて参考にさせて頂きます。
もっと、勉強して知識を高めていきたいと思います。
アドバイス有難う御座いました。

お礼日時:2001/06/27 01:32

確認したい事が数点あります。

宜しいでしょうか。

1.Eudoraを使用している端末はメールサーバーとは別のマシンか
2.EudoraのPOPサーバの指定の設定はサーバー名にしているか、IPアドレスか
3.Eudoraを使用しているマシンのhostsにメールサーバーは登録されているか
4.Eudoraを使用しているマシンはDNSサーバーからDNSを参照しているか
5.「中継サーバー」はDNSサーバーとして稼動しているか
6.sendmail.defの設定のsendmail.MXはnoのままか

すこし多いかもしれませんが上記の設定によってさまざまな解決策がありますので教えてください。

この回答への補足

有難う御座います。
要求して頂いた補足事項ですが、
1.Eudoraをを使用している端末はメールサーバーとは別のマシンです。
2.受信用メールサーバー(POP)はサーバー名で登録しています。
3.Eudoraを使用しているマシンのhosts?ですか・・えっと、Eudoraを使用してるのはOSがWindows98なのですが・・・どのような事を言われているのかが、分かりません。すいません。
4.DNSを参照しているか?うーん、すいません、初心者なもので、よくわかりにくいのですが、Eudoraを使用しているマシンはIPアドレスが大学側から与えられていて固定になっています。
5.えっと、中継サーバーと質問の時に書いたのが正しいかわからないのですが、メールをやりとりするときのハブホストのIPアドレスを書き込んでいて、実際にDNSサーバーとして稼動しているかは分かりません。すいません。今度聞いておこうと思います。
6.はいnoのままです、大学側から、そのように設定するようにとのことなので。
(MXは使えないようなことを言われました)

補足の要求に答えきれてないかもしれませんが、よろしくお願い致します。
他にも補足要求がありましたら、要求お願い致します。できる限りのことは調べます。

補足日時:2001/06/26 17:29
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QメールサーバーとDNS設定

ADSLを申し込みしました。固定IPアドレス8個割り当てられるので、WebとMailサーバーを構築することにしました。

プライマリーDNSサーバーを自前で用意しなければいけないので、設定方法を勉強中ですが、良くわからないところがあるので、どなたか教えてください。

Mailサーバー名を"mail.******.com"とするとします。
そして、lovepome@******.com というメールID宛にメールを送信した場合、mail.******.comのサーバーにメールが届くようにしたい場合、どのようにDNSサーバーを設定すれば良いのでしょうか?

ちなみにサーバーはWindows2000 Server、メールサーバーソフトはIMailを使用する予定です。

Aベストアンサー

mail.aaaaa.comがsmtp/pop server で、xxxxx@aaaaa.comのメールをこのサーバーで収容するには、aaaaa.comのdnsのmxレコードに、mail.aaaaa.comを指定すればOKです。

Qヤフー POPメールサーバー 設定

ステップ3: 受信するメールサーバーを設定してください
メールサーバー、アカウント、パスワードを設定してください。[詳しくはこちら]
Yahoo!メールアドレス以外のメールアドレスに届くメールを、Yahoo!メールを利用して読むことができます(ご契約のプロバイダのメールサーバーがPOP3をサポートしている場合に限ります)。
メールサーバー:???
現在サポートしているのはPOPメールサーバーのみです。
アカウント:???
注意: アカウントはメールアドレスとは異なります。
アカウントは通常、メールアドレスの@マークより左側の部分となります。
パスワード:???
???が分かりません

又この設定をすれが相手に届くFROM欄が設定したADに変わるのでしょうか?

Aベストアンサー

 こんにちは。
 質問者様のやりたいことは「yahooメールのシステムを使用して、別の(プロバイダの)メールを読み書きしたい」ということでよろしいでしょうか。

 だとすると、その別の(プロバイダの)メールアドレスを取得した際に、メールソフトの設定が書かれた紙なりURLがあると思いますので、そこに書かれている内容をyahooの「メールアドレスの追加、編集、削除」手続きで入力してあげれば良いことになるかと思います。
 具体的にどこのプロバイダをお使いなのかわからないので一般的なことで書きますが

メールサーバー : プロバイダの「popサーバ」または「受信サーバ」と書いてある部分
アカウント: プロバイダの「アカウント」や「ログインアカウント」の部分
パスワード: プロバイダの「パスワード」の部分

こんな感じだと思います。
 試してないのでちょっとわかりませんが、ヘルプを見る限りではFrom:欄もここで設定したメールアドレスになるような気がしますね。

 もしそうではなくて、「yahooの別のメールアドレスを取得したい」ということであれば、yahooのトップページから「メールアドレスを取得」で新規に作成することになるのだと思います。
 あるいは「いまyahooでメール使っているけど、自分から発信したことを悟られないためにFrom:を別の物に書き換えたい」ということでしたら話が変わってくるので、その旨書いていただければと思います。

 以上、参考までに。。

 こんにちは。
 質問者様のやりたいことは「yahooメールのシステムを使用して、別の(プロバイダの)メールを読み書きしたい」ということでよろしいでしょうか。

 だとすると、その別の(プロバイダの)メールアドレスを取得した際に、メールソフトの設定が書かれた紙なりURLがあると思いますので、そこに書かれている内容をyahooの「メールアドレスの追加、編集、削除」手続きで入力してあげれば良いことになるかと思います。
 具体的にどこのプロバイダをお使いなのかわからないので一般的なことで書きます...続きを読む

Q受信、送信サーバーの設定

新たにPCを購入し、その中にWindows メールが入っていたので、設定しようと思い、設定したのですが、うまくできていないようです。

ホスト 'pop.microsoft.com’ が見つかりません。 サーバー名が正しいことを確認してください。
アカウント: ’pop.microsoft.com’, サーバー: ’pop.microsoft.com’, プロトコル: POP3, ポート: 110, セキュリティ (SSL): なし, ソケット エラー: 11001, エラー番号: 0x800CCC0Dというエラーメッセージがでました。どうすれば正常に使用できるようになるのでしょうか?

ちなみに、設定は以下のとおりです。
受信:pop.microsoft.com
送信:smtp.microsoft.com

Aベストアンサー

>すいません。プロバイダがよくわからないのですが、Microsoft Windowsメールチームからメールが届いていました。

これはウエルカムメッセージといって、本当にMicrosoftからアナタのところにメールが届いたわけではなく、Windows メールを初めて起動すると、自動的に生成されて送られたように見えるメール(のようなもの)あり、宛先に記載されているアドレスは、あなたのメールアドレスではありません。

プロバイダー=接続業者(有名なところはOCNやSo-Netなど)の入会したときに届いた書類またはインターネットで入会した場合、初回のメールに必ずアドレスやサーバー名・パスワードなどの情報が届いているはずです。

そちらを探して、設定しないと送受信はできません。
もう一度確認してみてください。

(次のメールアドレスは要注意です。
1.ExciteBBは有料オプションですので、申し込まなければWEBメールのみになり、メールソフトでの送受信はできません。
2.YAHOOなどはいくつかの設定をしないと、メールソフトでの送受信はできません。
3.Hotmailは新規のアカウントを申し込んだ場合は、有料オプションですので、申し込まなければWEBメールのみになり、メールソフトでの送受信はできません。
そのほか、メールソフトでの送受信を制限しているメールサービスもあります。)

ご自分が設定しようとしているアドレスの@以下(xxxx@zzzzz.zzz.zzzの「@zzzzz.zzz.zzz」の部分を入れていただければ、プロバイダが解りますので、ホームページからも調べられると思いますが?)

>すいません。プロバイダがよくわからないのですが、Microsoft Windowsメールチームからメールが届いていました。

これはウエルカムメッセージといって、本当にMicrosoftからアナタのところにメールが届いたわけではなく、Windows メールを初めて起動すると、自動的に生成されて送られたように見えるメール(のようなもの)あり、宛先に記載されているアドレスは、あなたのメールアドレスではありません。

プロバイダー=接続業者(有名なところはOCNやSo-Netなど)の入会したときに届いた書類また...続きを読む

Qメールをサーバーに残す設定

Windows7を購入しました。メールをサーバーに残すを5日に設定してるのに、半年前のメールを受信してしまします。どうしたら受信しなくできるでしょうか?

Aベストアンサー

#1です。

>ブロダイダーのメールはNTTサプライ(MASTーBB)フリーメールはヤフーメールです。

両方とも、Webメールに対応していますから、ブラウザでログインして不要なメールは削除し、または、受信箱以外に移動しておけばよいのではないですか?
http://www.mast-bb.com/member/mail.html#ac08

MAST-BBはメールソフトで扱えるのですか?そんなことは案内に書いてないようですが・・。
なお、サーバーに残す設定は、メールソフトでの設定のことを言われていると思います。
何を使われているのか知りませんが、受信しなくするには、サーバーから削除するのが一番ですが、新しいメールソフトで受信した以後は、不具合がなければ、5日経過した以後に、同メールソフトでアクセスした段階で、サーバーから自動削除されると思います。

Qメールをサーバーに残す設定

OutlookExpress6を利用しています。ISPはB社です。
詳細設定で、「サーバーにメッセージのコピーを置く」設定をしています(無期限)。
ところで、一旦PCに取り込んだ受信メールは、いくらサーバーに残っているとはいえ、後日再度PCに取り込まれることはないと思うのですが、それはどういうカラクリになっているんでしょうか。つまり、一旦取り込んだPCのIPアドレスをサーバーは記憶(記録)していて、同じIPアドレスのPCには流さないようにしているのでしょうか。メーラーを立ち上げる都度、同じ受信メールがダウンロードされたりすると大迷惑ですもんね。

Aベストアンサー

Outlook Expressの場合は、POPアカウントの場合、pop3uidl.dbxというファイルが既未受信の判断をするようになっています。

受信(ダウンロード)時に、サーバーにある個々のメールに符丁をつけて判断できるようにしているようです。
ちなみに、このpop3uidl.dbxを削除したり、または、このファイルが不調になった場合は、既に受信したメールを再度受信しますよ。

同じメールを2通受信するようになった場合は不具合になっています。

また、他のメールソフトでも、それぞれ受信しますし、それぞれ符丁を付けると思います。

なお、サーバーに残しっぱなしだと、サーバーの容量には限界がありますから、そのうちパンクして、新着メールをサーバー自体が受信できなくなり、送信者にはエラーを返しますから、サーバーの容量との兼ねないやメールの受信頻度など考慮して、一定期間で自動削除の設定が望ましいと思います。


人気Q&Aランキング

おすすめ情報