Я настраиваю почтовый сервер Postfix, имя хоста "письма", для обработки почты для домена "example.net". Я попытался установить имя домена букв для example.net с помощью nis, но получаю несогласованные выходные данные от имени хоста -f ('letter.stuff.comcast.net') и имени домена ('example.net'). Как мне установить имя домена так, чтобы команда hostname -f сообщала 'example.net'? Насколько это важно для правильной работы Postfix?
Письма хоста работают под управлением Ubuntu и подключаются к Интернету с помощью кабельного модема к Comcast через маршрутизатор openwrt. Сервер имен для домена example.net находится на удаленном компьютере Debian, который еще не был настроен для создания хоста или псевдонима для писем.
Я предполагаю, что имя домена в выходных данных имени хоста отражает имя домена, полученное от сервера comcast клиентом dhcp коробки, и отражает идею, что ящик является клиентом в этой сети. Есть ли решение создать хост с буквами на сервере имен для example.net? Требует ли для этого добавления этого сервера имен к списку в файле resolv.conf букв?
Убедитесь, что ваш /etc/hosts
(или NIS) записи верны.
Я собирался попытаться объяснить это, но справочная страница лучше рассказывает историю:
THE FQDN
You can't change the FQDN (as returned by hostname --fqdn) or the DNS
domain name (as returned by dnsdomainname) with this command. The FQDN
of the system is the name that the resolver(3) returns for the host
name.
[..]
Therefore it depends on the configuration (usually in /etc/host.conf)
how you can change it. Usually (if the hosts file is parsed before DNS
or NIS) you can change it in /etc/hosts.
Я столкнулся с этой проблемой вчера, когда работал над обновлением сервера, запущенным кем-то другим ... В выводе hostname -f никогда не было правильного конечного домена (отсутствует .org).
# hostname foobar.example.org
# hostname -f
foobar.example
#
# cat /etc/hosts
10.20.11.244 foobar.example foobar
Решение:
Доменная часть имени хоста -f, похоже, взята из записи / etc / hosts для этого хоста. После того, как я исправил имя хоста в / etc / hosts, hostname -f возвращал правильный домен:
# hostname foobar
# hostname
foobar
# hostname -f
foobar.example.org
YMMV.
Если ваш IP-адрес не является статическим, тогда /etc/hosts
не будет работать у вас (или будет работать только временно, пока вы не получите новый IP). Я не уверен, что это сработает, но вот что нужно попробовать:
/etc/resolv.conf
letters.example.net
, Я думаю, вам нужно будет использовать какую-то динамическую службу DNS, поскольку это решение предназначено для нестатических IP-адресов.Это может означать, что я просто отвечу на ваш вопрос «да».
Это часто неправильно понимаемая проблема с "доменным именем". Вот верхняя часть страницы руководства в моей системе Mac OS X, но ваша будет похожа:
DOMAINNAME(1) BSD General Commands Manual DOMAINNAME(1)
NAME
domainname -- set or print the name of the current NIS domain
Эта команда не используется для настройки DNS!