n.yamamoto
2015年1月31日 21時52分
Yamamotoです。
メール送信を行うためにsmtpサーバのドメイン名をgethostbyname関数でIPアドレスに変換しようとしていますがUnknown hostのエラーが返ってきます。
/etc/hostosにドメイン名とIPアドレスを登録すると正常に送信できます。
以前に行ったことのある者から/etc/config/resolv.confに登録すればDNSサーバー解決で正常に送信できるはずと聞き、resolv.confに登録したのですがUnknown hostエラーになります。
登録内容は以下のようにしました。
domain xxx.ne.jp <--- smtpサーバドメイン名
nameserver xxx.xxx.xxx.xxx <--- smtpサーバドメインIPアドレス
hostsを変更して使用すべきなのか、resolv.confを変更して使用すべきなのか?
resolv.confを変更したほうが良いのであれば、使用方法のどこが悪いのか?
教えていただけませんでしょうか。
よろしくお願いいたします。
コメント
n.yamamoto
n.yamamoto
Yamamotoです。
再度LAN接続でメール送信の必要があり再確認を始めました。
やっていたことをすっかり忘れて、最初からやり直しています。
resolv.confのnameserverは接続してるネットワーク接続のDNSに指定してる社内のIP(通常使われる XXX.XXX.0.1)を指定しています。
hostsにもlocalhostとして割り付けた自IPを登録しています。
上記でgethostbyname呼ぶと”Unknown host”エラーになります。
以前回答したhostosにSMTPサーバ登録でも上手くいかなくなりました。おそらくhostosとresolv.confの内容の組合せによると思うのですが。
この辺りの組合せとか設定をご教授願えませんでしょうか?
n.yamamoto
y.nakamura
2015年2月2日 2時15分
中村です。
> 登録内容は以下のようにしました。
> domain xxx.ne.jp <--- smtpサーバドメイン名
> nameserver xxx.xxx.xxx.xxx <--- smtpサーバドメインIPアドレス
resolv.confのnameserverに書くのは、ネームサーバ(DNSサーバ)のIPアドレスです。
必須なのはnameserverだけで、FQDNで問い合わせるならdomainは不要です。
--
なかむら