호스트 이름 -f 및 도메인 이름의 도메인 이름이 일치하지 않습니다.

호스트 이름 -f 및 도메인 이름의 도메인 이름이 일치하지 않습니다.

나는 'example.net' 도메인의 메일을 처리하기 위해 Postfix 메일 서버, 호스트 이름 'letters'를 설정하고 있습니다. nis를 사용하여 글자의 도메인 이름을 example.net으로 설정하려고 했지만 호스트 이름 -f('letters.stuff.comcast.net') 및 도메인 이름('example.net')에서 일관성 없는 출력이 나타납니다. 어떻게 해야 합니까? 'example.net'을 보고하도록 도메인 이름을 설정하여 호스트 이름 -f 명령을 사용하시겠습니까? 이것이 적절한 Postfix 기능에 얼마나 중요합니까?

호스트 문자는 Ubuntu를 실행하고 있으며 openwrt 라우터를 통해 케이블 모뎀을 통해 Comcast에 인터넷에 연결됩니다. 도메인 example.net의 이름 서버는 원격 Debian 컴퓨터에 있는데, 아직 문자에 대한 호스트나 별칭을 생성하도록 구성되지 않았습니다.

호스트 이름 출력의 도메인 이름은 상자의 dhcp 클라이언트가 comcast 서버에서 얻은 도메인 이름을 반영하고 상자가 해당 네트워크의 클라이언트라는 아이디어를 반영한다고 가정합니다. example.net의 이름 서버에 '문자' 호스트를 생성하는 솔루션이 있습니까? Letters의 resolv.conf 파일에 나열된 이름 서버에 해당 이름 서버를 추가해야 합니까?

답변1

/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.

답변2

어제 다른 사람이 시작한 서버 새로 고침 작업을 하는 동안 이 문제가 발생했습니다. 호스트 이름 -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에서 호스트 이름을 수정한 후, 호스트 이름 -f가 올바른 도메인을 반환했습니다.

# hostname foobar
# hostname
foobar
# hostname -f
foobar.example.org

YMMV.

답변3

IP가 고정적이지 않으면 /etc/hosts작동하지 않습니다(또는 새 IP를 얻을 때까지 일시적으로만 작동합니다). 이것이 효과가 있을지 확신할 수 없지만, 시도해 볼 만한 것이 있습니다.

  1. dhcp 서버에서 도메인 이름을 요청하지 않도록 dhcp 클라이언트를 구성하십시오. 아니면 resolv.conf를 전혀 건드리지 말라고 지시하세요. 사용자 정의 이름 서버가 있다면 이미 그렇게 했을 수도 있습니다.
  2. 도메인 이름을 example.net으로 설정하세요./etc/resolv.conf
  3. 네임서버가 를 확인할 수 있는지 확인하세요 letters.example.net. 이 솔루션은 비정적 IP를 위한 것이므로 일종의 동적 DNS 서비스를 사용해야 할 것 같습니다.

이는 귀하의 질문에 대한 나의 대답이 단순히 "예"라는 것을 의미할 수 있습니다.

답변4

이것은 "domainname"에 대해 흔히 오해되는 문제입니다. 내 Mac OS X 시스템의 매뉴얼 페이지 상단은 다음과 같습니다. 하지만 여러분의 시스템도 비슷할 것입니다.

DOMAINNAME(1)             BSD General Commands Manual            DOMAINNAME(1)

NAME
     domainname -- set or print the name of the current NIS domain

이 명령은 DNS 구성에 사용되지 않습니다!

관련 정보