더 짧은 대답.
"호스트를 찾을 수 없습니다."로 서버에 DNS 확인 문제가 있거나 Postfix 자체에 DNS 확인 문제가 있음을 의미 할 수 있습니다. 그러나 이것이 정리되어야 할 핵심입니다.
그것을 정리하는 방법에 관해서는, 당신의 질문은 간결한 대답을 줄 수있는 기본 OS 또는 설정에 대한 충분한 세부 사항을 제공하지 않습니다. 실행중인 경우 Ubuntu / Debian을 실행하는 것 같지만 sudo service postfix restart
다른 세부 정보를 제공 할 수 있습니까?
더 긴 대답.
resolv.conf
불가사의하게 사라지는 것과 관련이있을 수 있습니다.
오류를 기반으로 :
호스트 또는 도메인 이름을 찾을 수 없습니다. name = smtp.gmail.com의 이름 서비스 오류 type = A : 호스트를 찾을 수 없습니다. 다시 시도하십시오.
보내는 메일에 Gmail의 SMTP 서버를 사용하고있는 것 같습니다. 기본 OS가 무엇인지 모르지만 Ubuntu 포럼 의이 답변을 기반으로 하면resolv.conf
재부팅시 누락 문제가있는 것 같습니다 . 대담한 강조는 내 것이다 :
Ubuntu 14.04 LTS에서 동일한 문제가 있습니다. postfix가 설치되면에 복사 /etc/resolv.conf
됩니다 /var/spool/postfix/etc/resolve.conf
. 그러나 재부팅 / 재시작 후 어떤 이유로 파일이 복사되지 않고 헤더 만있는 빈 파일을 얻습니다.
제안 된 임시 해결책은 기본 OS resolv.conf
를 Postfix의 디렉토리 에 복사하는 것입니다 .
sudo cp /etc/resolv.conf /var/spool/postfix/etc/resolv.conf
이것은 영구적 인 수정은 아니지만 적어도 체크 아웃해야 할 문제입니다.
inet_protocols
설정에 연결되었을 수 있습니다.
또한 서버 결함에 대한이 답변 은 IPv6 지원에 중점을 둔 유사한 상황을 설명합니다. 오류는 IPv4 인“type = A”레코드에 관한 것이며 IPv6의 경우“type = AAAA”일 것이므로 문제가 IPv6과 관련이 없는지 확인하십시오. 그러나, inet_protocols
설정 을 조정하여 실험 해 볼 가치가 있습니다. 접미사 구성 파일. 다음은 공식 Postfix 설명서에 설명되어 있습니다.
inet_protocols 매개 변수를 통해 IPv4 지원을 활성화하면 Postfix는 DNS 유형 A 레코드를 조회하고 IPv4-in-IPv6 클라이언트 IP 주소 (:: ffff : 1.2.3.4)를 원래 IPv4 형식 (1.2.3.4)으로 변환합니다. 후자는 IPV6_V6ONLY 지원 (RFC 3493) 이전의 호스트에서 필요합니다.
inet_protocols 매개 변수를 통해 IPv6 지원이 활성화되면 Postfix는 DNS 유형 AAAA 레코드 조회를 수행합니다.
IPv4 및 IPv6 지원이 모두 활성화되면 Postfix SMTP 클라이언트는 smtp_address_preference 매개 변수로 지정된 프로토콜을 선택합니다. 2.8 이전의 Postfix 버전은 IPv4를 사용하기 전에 IPv6을 통해 연결을 시도합니다.
예 :
- inet_protocols = ipv4
- inet_protocols = 모두 (DEFAULT)
- inet_protocols = ipv6
- inet_protocols = ipv4, ipv6
Ubuntu / Debian 설정에 있다고 가정하면 여기에서 구성을 엽니 다.
sudo nano /etc/postfix/main.cf
그리고 다음과 같이 inet_protocols
줄을 찾거나 값을 설정하십시오 .
inet_protocols = ipv4
아니면 이렇게 :
inet_protocols = all
그런 다음 Postfix 서비스 또는 전체 서버를 다시 시작하여 문제가 해결되는지 확인하십시오.
sudo service postfix restart