postfix
를 사용하여 메일 전송을 시도해도 Gmail로 메일이 전송되지 않았습니다.
무슨 문제가 있을까 싶어 에러 로그(/var/log/maillog
)를 확인해보았습니다.
[root@localhost]# tail -f /var/log/maillog
하나의 메일을 보내면서 다음 로그가 기록되었음을 알 수 있었습니다.
Sep 25 22:47:49 myhost sendmail[20741]: mymessageid: [email protected], size=2728, class=0, nrcpts=1, msgid=<[email protected]>, relay=jyweb@localhost Sep 25 22:47:49 myhost postfix/smtpd[20742]: connect from localhost[127.0.0.1] Sep 25 22:47:49 myhost postfix/smtpd[20742]: Anonymous TLS connection established from localhost[127.0.0.1]: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits) Sep 25 22:47:49 myhost sendmail[20741]: STARTTLS=client, relay=[127.0.0.1], version=TLSv1/SSLv3, verify=FAIL, cipher=ECDHE-RSA-AES256-GCM-SHA384, bits=256/256 Sep 25 22:47:49 myhost postfix/smtpd[20742]: 3AACFD24A9C: client=localhost[127.0.0.1] Sep 25 22:47:49 myhost postfix/cleanup[20748]: 3AACFD24A9C: message-id=<[email protected]> Sep 25 22:47:49 myhost opendkim[831]: 3AACFD24A9C: DKIM-Signature field added (s=mypoint, d=myhost.com) Sep 25 22:47:49 myhost postfix/qmgr[20735]: 3AACFD24A9C: from=<[email protected]>, size=3307, nrcpt=1 (queue active) Sep 25 22:47:49 myhost sendmail[20741]: mymessageid: [email protected], [email protected] (1003/1003), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=32728, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (Ok: queued as 3AACFD24A9C) Sep 25 22:47:49 myhost postfix/smtpd[20742]: disconnect from localhost[127.0.0.1] Sep 25 22:47:49 myhost postfix/smtp[20749]: connect to gmail-smtp-in.l.google.com[2404::3001:::1a]:25: Network is unreachable Sep 25 22:47:50 myhost postfix/smtp[20749]: 3AACFD24A9C: to=<[email protected]>, relay=gmail-smtp-in.l.google.com[108.177.125.27]:25, delay=1.8, delays=0.07/0.02/1.2/0.5, dsn=2.0.0, status=sent (250 2.0.0 OK 1537883270 v16-v6si2351737ply.54 - gsmtp) Sep 25 22:47:50 myhost postfix/qmgr[20735]: 3AACFD24A9C: removed
여기에서 다음 부분으로 인해 메일이 전송되지 않았음을 알 수 있습니다.
Sep 25 22:47:49 myhost postfix/smtp[20749]: connect to gmail-smtp-in.l.google.com[2404::3001:::1a]:25: Network is unreachable
이 문제는 Gmail SMTP 호스트에 접속하지 못하는 현상입니다. postfix가 실행되고 있는 메일 서버에서 IPv6에 대한 구성을 하지 않았지만, 메일 전송 시 IPv6 네트워크로 전송을 시도했기 때문에 문제가 발생한 것으로 보입니다.
postfix 25: Network is unreachable 해결하기
먼저 postfix
의 설정 파일(main.cf
)을 열어보겠습니다.
[root@localhost ~]# vim /etc/postfix/main.cf
inet_protocols
부분에 all 값으로 입력되어 있을 것입니다. 이렇게 되면 IPv6 네트워크를 사용하게 되기 때문에 IPv4 주소만 사용하도록 설정을 바꾸어보도록 하겠습니다.
# Enable IPv4, and IPv6 if supported #inet_protocols = all inet_protocols = all
다음과 같이 값을 변경합니다.
inet_protocols = ipv4
파일을 저장합니다. 이후 postfix
서비스를 다시 시작합니다.
[root@localhost ~]# service postfix restart 또는 [root@localhost ~]# systemctl restart postfix
이제 다시 메일 전송을 시도해봅니다. 위 에러 메세지가 발생하지 않고 전송을 성공하였습니다.