바운스에는 일반적으로 두 가지 유형이 있습니다.
- 접미사가 전자 메일을 배달 할 때 원격 메일 서버 를 직접 거부 하여 반송됩니다 .
- 원격 서버 (후위 수정 후 다음 홉 서버)로 인해 반송 메일이 최종 수신자에게 메시지를 전달하지 못합니다.
첫 번째 사례는 이미 Esa Jokinen의 훌륭한 답변 으로 이미 다루어졌습니다 . 가장 좋은 방법은 메일 로그를 파싱하는 것입니다.
두 번째 경우는 바운스의 특별한 경우였습니다. 예제 시나리오 :
- 수신자 fakemail@example.com 이있는 이메일 을 mail.example.com 서버로 보냅니다.
- mail.example.com에서 fakemail@example.com 별칭 된 realmail@example.net 과에 전달해야 mail.example.net .
- 언젠가 mail.example.net 은 메시지를 거부하므로 mail.example.com 은 서버에 반송 메일을 보내야합니다.
- mail.example.com이 이미 메시지를 수락했지만 mail.example.net 으로 전달하지 못했기 때문에 서버의 maillog에 "dsn = 2" 가 있습니다 .
두 번째 유형의 예는 이메일을 반송합니다. 전달 규칙 Yahoo 메일 서버 myuser@yahoo.com-> myuser@example.net이 있습니다. 불행히도 example.net의 메일 서버는 메시지를 거부합니다 :(
From MAILER-DAEMON Thu Mar 5 05:07:26 2015
Return-Path: <>
X-Original-To: noreply-myuser=yahoo.com@example.org
Delivered-To: noreply-263462085117-1425506829-myuser=yahoo.com@example.org
Received: from nm21-vm7.bullet.mail.gq1.yahoo.com (nm21-vm7.bullet.mail.gq1.yahoo.com [98.136.217.54])
(using TLSv1 with cipher ECDHE-RSA-AES128-SHA (128/128 bits))
(No client certificate requested)
by mx.example.org (Postfix) with ESMTPS id D6365565FC
for <noreply-263462085117-1425506829-myuser=yahoo.com@example.org>; Thu, 5 Mar 2015 05:07:25 +0700 (WIT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=bounce; t=1425506842; bh=zk/tWZNl6c36dmlPDmakM9ekK8cHVJANXMmSdsbkcWc=; h=From:To:Date:Subject:From:Subject; b=Im95h1qTg6qN3yUI7vF1fXtJ0SbUnzv8rUPwLbpNwxGPN2p8wfosXJzQgJ3nzr4L4ZQ50P2d9E9U4jEUNtnyi7nlFd5kKbtiVuda4H56h1PFnt+7wSpgHcd5Irs/lLODumb6ZZSEpCOWttcB9+JLaDfEUUPjGcbR+xww4XeH5Eo=
From: MAILER-DAEMON@yahoo.com
To: noreply-263462085117-1425506829-myuser=yahoo.com@example.org
Date: Wed, 04 Mar 2015 22:07:22 -0000
Subject: Failure Notice
X-Yahoo-Newman-Property: bmbounce
Sorry, we were unable to deliver your message to the following address.
<myuser@example.net>:
Remote host said:
550 5.1.1 User unknown
[RCPT_TO]
이 경우 유일한 방법은 바운스 메시지를 파싱하는 것입니다. 불행히도 표준 바운스 형식이 없으므로 본문을 파싱하고 거부를 결정해야합니다.
접미사 바운스 구문 분석의 기능 점검 목록 :
- VERP 주소가 유효한지 확인하십시오. 잘못된 메시지를 파싱하고 싶지 않습니다.
- 몸을 구문 분석하고 연질 또는 경질 거부인지 확인하십시오.
두 번째 기능의 경우 일반적인 거부 메시지를 Google에 표시 할 수 있습니다. 예는 이쪽 반송 정규식-list.xml 의해 야쿱리스 카 .
Esa Jokinen은이 두 가지 바운스 유형에 대해 아래 의견에서 좋은 지적을했습니다 . 목표가 서버 평판을 유지하는 경우 첫 번째 바운스 유형을 처리하는 것으로 충분합니다. 두 번째 바운스는 목록 정리에 관한 것입니다. 따라서 죽은 전자 메일을 지워 서버의 일부 리소스 를 비워야 합니다.
PHPlist 및 Mailman과 같은 일부 메일 목록 관리자는 메일 로그를 구문 분석 할 리소스가 없기 때문에 이메일 본문을 구문 분석 할 때이 반송 문제를 처리합니다.