Postfix 未检测主机名或域

Postfix 未检测主机名或域

我在使用 Postfix(在 Centos 6.5 上)时遇到问题,因此我必须在 main.cf 中明确设置 myhostname,否则本地邮件将通过中继主机进行中继。

根据 Postfix main.cf:“默认使用来自 gethostname() 的完全限定域名。”

我的 /etc/hosts 文件是:

127.0.0.1       localhost
10.0.0.3        server123.company.org server123

hostname 和 hostname -f 正确返回。

我该如何排除其故障?

答案1

已解决... 问题是 /etc/sysconfig/network 中 HOSTNAME 的输入不正确。它被设置为短名称而不是 FQDN。修复该文件中的条目并重新启动网络服务。

能够通过以下测试程序检查 gethostname() 是否检索完整主机名:

#include <stdio.h>
#include <unistd.h>
#include <limits.h>

int main(int argc, char *argv[])
{
    char hostname[HOST_NAME_MAX];

    if (gethostname(hostname, sizeof hostname) == 0)
        puts(hostname);
    else
        perror("gethostname");

    return 0;
}

相关内容