Bounce là gì, và hai thời điểm nó xảy ra
Từ này được mượn từ thư giấy, và đó là hình ảnh sai. Không có gì thực sự đi ngược trở lại. Một thư được chuyển từ máy chủ này sang máy chủ khác, và máy chủ cuối cùng còn giữ nó mà không thể tống khứ nó đi sẽ viết ra một thư mới — gửi cho bạn, nói về thư cũ — và gửi thư đó thay vào đó. Mọi thứ bạn có thể biết đều nằm trong báo cáo ấy, và báo cáo đó chỉ tốt bằng đúng cái máy đã viết ra nó.
Nó có thể được tạo ra ở hai thời điểm rất khác nhau, và phân biệt được hai thời điểm ấy chính là phần lớn công việc chẩn đoán. Hai kết quả khác trông giống thất bại từ chỗ đứng của bạn nhưng thực ra không phải:
| Điều gì đã xảy ra | Bạn thấy gì, và khi nào | Nó cho bạn biết điều gì |
|---|---|---|
| Bị từ chối trong phiên trao đổi. Máy chủ nhận nói không trong khi máy chủ của bạn vẫn còn đang kết nối với nó. | Một lỗi ngay trong ứng dụng thư của chính bạn, trong cùng một giây. Không có thư bounce nào được tạo ra cả. | Loại đáng tin cậy nhất. Lời từ chối đến thẳng từ cái máy chịu trách nhiệm cho địa chỉ đó, không có gì ở giữa làm mềm nó đi. |
Được chấp nhận, rồi mới thất bại. Ai đó đã trả lời 250, nhận trách nhiệm về thư, rồi không thể hoàn thành việc đó. | Một thư mới từ MAILER-DAEMON, vài phút hoặc vài ngày sau đó. Đây là một bounce theo đúng nghĩa thông thường. | Hãy đọc Reporting-MTA: trước bất cứ điều gì khác: bên nào viết ra báo cáo chính là nơi thư dừng lại, và đó không phải lúc nào cũng là đầu bên kia. |
| Được chấp nhận và xếp vào mục spam. Việc gửi đã thành công. | Không có gì cả — không có báo cáo nào, vì không có gì thất bại. | Im lặng không phải là một thất bại. Thư không bao giờ đến nơi là một vấn đề khác, với bước kiểm tra đầu tiên khác. |
| Được chấp nhận rồi âm thầm loại bỏ. Nhận vào rồi vứt đi mà không nói một lời. | Không bao giờ có gì cả. | Đây là hành vi tệ nhất mà một máy chủ thư có thể có, và cũng là lý do một máy chủ được vận hành tốt sẽ từ chối ngay tại cổng thay vì làm vậy. Từ phía bạn, nó không thể phân biệt được với hàng phía trên. |
Vậy nên cụm “nó bị bounce” đang gọi tên cho hai thứ khác nhau. Một là lỗi do chính phần mềm của bạn hiển thị cho bạn, còn một là một lá thư do máy của người lạ viết cho bạn — và chỉ thứ hai mới có một báo cáo bên trong để đọc. Phần còn lại của hướng dẫn này nói về báo cáo đó.
Lý do thực sự nằm ở đâu
Một báo cáo giao nhận là một thư gồm ba phần, và hình dạng đó đã được cố định kể từ RFC 3464. Phần đầu tiên là lời xin lỗi, được cái máy gần bạn nhất viết ra cho một con người đọc. Phần thứ hai là khối mà máy có thể đọc được, và đây là phần duy nhất chứa sự thật. Phần thứ ba là thư gốc của bạn, hoặc chỉ tiêu đề của nó, để bạn biết được thư nào đã thất bại.
From: Mail Delivery System <MAILER-DAEMON@mail.example.org>
To: <you@example.org>
Subject: Undelivered Mail Returned to Sender
Content-Type: multipart/report; report-type=delivery-status;
boundary="B7F21C4"
--B7F21C4
Content-Type: text/plain; charset=us-ascii
I'm sorry to have to inform you that your message could not
be delivered to one or more recipients.
--B7F21C4
Content-Type: message/delivery-status
Reporting-MTA: dns; mail.example.org
Arrival-Date: Tue, 8 Sep 2026 10:14:02 +0000
Final-Recipient: rfc822; sales@example.com
Action: failed
Status: 5.1.1
Remote-MTA: dns; mx.example.com
Diagnostic-Code: smtp; 550 5.1.1 <sales@example.com>: Recipient
address rejected: User unknown in virtual mailbox table
--B7F21C4
Content-Type: text/rfc822-headersHãy đọc phần giữa theo thứ tự sau:
Final-Recipient:- Địa chỉ nào đã thất bại. Một báo cáo có thể mang một khối cho mỗi người nhận, nên với một thư gửi cho nhiều người, đây là cách để biết báo cáo đang nói về ai — và những người còn lại rất có thể đã nhận được thư.
Action:failedlà một bounce.delayedlà một cảnh báo rằng máy chủ vẫn đang thử lại và chưa từ bỏ điều gì cả; bạn vẫn có thể nhận được một báo cáo thứ hai nói rằng nó đã thành công.relayedvàdeliveredhoàn toàn không phải thất bại, và rất dễ bị đọc nhầm thành một thất bại.Status:- Mã trạng thái mở rộng — ba con số, vốn dùng để phần mềm đọc chứ không phải để bạn đọc. Đây là phần có thể so sánh được giữa nhà cung cấp này với nhà cung cấp khác, điều mà các câu văn thì không bao giờ làm được.
Diagnostic-Code:- Dòng thực sự quan trọng. Đây là câu trả lời của chính máy chủ ở đầu bên kia, được trích dẫn nguyên văn, mang theo mã phản hồi của nó và bất kỳ câu nào người quản trị của nó đã viết. Mọi thứ phía trên nó chỉ là một cách kể lại; còn đây mới là bản gốc.
Remote-MTA:- Máy chủ nào đã nói điều đó. Đáng để liếc qua bất cứ khi nào thất bại liên quan đến định tuyến: một tên máy chủ bạn không nhận ra thường có nghĩa là thư của tên miền đó đang đi đến một nơi bạn không ngờ tới, hoặc một nơi mà trước đây nó từng đi đến nhưng giờ không còn nữa.
Câu văn ở ngay đầu báo cáo không phải là bằng chứng. Máy chủ gửi đi của chính bạn viết ra nó, bằng bất cứ cách diễn đạt nào phần mềm của nó vốn có sẵn, nói về một lỗi mà nó chỉ đang chuyển tiếp lại. Hai lời xin lỗi giống hệt nhau hoàn toàn có thể nằm phía trên hai dòng Diagnostic-Code: chẳng liên quan gì đến nhau, đó là lý do vì sao đọc một bounce từ trên xuống lại thường bị hiểu sai.
Hai con số, và chữ số quyết định tất cả
Một lời từ chối được viết như thế này, và đó là ba thứ tách biệt được nối với nhau bằng dấu cách:
550 5.1.1 <sales@example.com>: Recipient address rejected: User unknown550 là mã phản hồi: ba chữ số, được chính SMTP định nghĩa trong RFC 5321, và là phần mà giao thức cần để quyết định bước tiếp theo. 5.1.1 là mã trạng thái mở rộng từ RFC 3463, được thêm vào vì ba chữ số không diễn đạt đủ. Mọi thứ sau đó là văn bản tự do, do bất kỳ ai vận hành máy chủ đó viết ra, và không được chuẩn hóa bởi bất cứ điều gì cả.
Cả hai con số đều bắt đầu bằng cùng một chữ số, và chữ số đó chính là phán quyết:
| Phán quyết | Điều gì xảy ra tiếp theo |
|---|---|
2 — đã chấp nhận. Hoàn toàn không phải một thất bại; nó xuất hiện trong báo cáo dành cho những người nhận mà việc gửi đã thành công. | Không có gì cả. Thư đã được gửi thành công, và báo cáo đang nói cho bạn biết điều đó. |
4 — một thất bại tạm thời. Máy chủ đang nói “chưa phải lúc này”, điều đó không giống với “không”. | Máy chủ của bạn xếp thư vào hàng đợi và tự thử lại, trong vài ngày. Phần lớn các thất bại tạm thời không bao giờ được một con người nhìn thấy cả. |
5 — một thất bại vĩnh viễn. Câu trả lời vào ngày mai sẽ vẫn y hệt như vậy. | Không có gì được thử lại. Đây chính là loại khiến một báo cáo xuất hiện trong hộp thư đến của bạn. |
Con số thứ hai là chủ đề — loại chuyện gì đã sai. Đây là cách nhanh nhất để xác định một mã bạn chưa từng thấy trước đây:
| Chủ đề | Nhóm thất bại đó nói về điều gì |
|---|---|
.0. — khác | Không xác định. Một máy chủ không thể phân loại được lỗi của chính nó, hoặc không thèm phân loại. Văn bản tự do là tất cả những gì bạn có. |
.1. — địa chỉ | Chính bản thân địa chỉ: không có hộp thư đó, không có tên miền đó, hoặc một tên miền đã tuyên bố rằng nó không nhận thư. Đây là nhóm lớn nhất, bỏ xa các nhóm khác. |
.2. — hộp thư | Hộp thư tồn tại nhưng không thể nhận thư này: nó đã đầy, nó đã bị vô hiệu hóa, hoặc thư vượt quá giới hạn đặt ra trên tài khoản đó. |
.3. — hệ thống thư | Toàn bộ hệ thống nhận thư: hết dung lượng, hết khả năng xử lý, hoặc hoàn toàn không thể xử lý một thư có kích thước như vậy. |
.4. — mạng và định tuyến | Việc đi đến nơi: không có đường đi, không có phản hồi, một vòng lặp giữa hai máy chủ, hoặc một thư nằm quá lâu trong hàng đợi và bị bỏ cuộc. |
.5. — giao thức | Chính phiên trao đổi SMTP đã có trục trặc. Hiếm gặp, và gần như luôn luôn là lỗi phần mềm của ai đó chứ không phải điều gì bạn đã làm. |
.6. — nội dung | Nội dung thư hoặc cách mã hóa của nó không được chấp nhận — một bảng mã ký tự mà bên nhận không thể chuyển đổi, một phép chuyển đổi mà nó từ chối thực hiện. Cũng hiếm gặp. |
.7. — chính sách và bảo mật | Một quy tắc đã từ chối nó: xác thực, uy tín gửi thư, một danh sách chặn, hoặc quyết định của người quản trị. Trong thực tế đây là nhóm lớn thứ hai, và là nhóm mà câu văn quan trọng hơn con số. |
- Bounce vĩnh viễn (hard bounce)
- Một
5. Địa chỉ sai, không còn tồn tại, hoặc bị từ chối theo chính sách, và gửi lại đúng thư đó chẳng thay đổi được gì. Những người gửi thư hàng loạt loại bỏ một địa chỉ khỏi danh sách ngay từ lần đầu tiên, vì cứ tiếp tục gửi chính là điều khiến một tên miền gửi thư bị hạn chế ở khắp mọi nơi cùng một lúc. - Bounce tạm thời (soft bounce)
- Một
4. Một hộp thư đầy, một máy chủ đang bận, một lần từ chối tạm thời theo chính sách. Nó được thử lại mà không cần ai can thiệp và thường sẽ đến nơi; bạn chỉ biết về nó nếu các lần thử lại hết hạn trước.
Không thuật ngữ nào trong hai thuật ngữ đó nằm trong bất kỳ đặc tả kỹ thuật nào. Chúng là cách nói tắt của ngành gửi thư cho chữ số đầu tiên đó, thứ thực sự quyết định tất cả — và cách nói tắt này đáng để biết, vì mọi công cụ đo khả năng gửi thư mà bạn từng được trao đều báo cáo bằng thuật ngữ đó.
Những mã bạn thực sự sẽ gặp
Có hàng chục mã trong sổ đăng ký mà IANA duy trì, và khoảng một chục mã trong đời sống thường ngày. Những mã dưới đây bao trùm gần như mọi bounce mà bất kỳ ai từng đọc:
| Mã, và tên chuẩn của nó | Điều gì thực sự đã xảy ra | Nên làm gì với nó |
|---|---|---|
5.1.1 — địa chỉ hộp thư đích không hợp lệ | Tên miền tồn tại và có nhận thư, nhưng không có cái tên đó ở đó. Đây là loại bounce phổ biến nhất, bỏ xa mọi loại khác. | Hãy kiểm tra chính tả, rồi kiểm tra xem đó có đúng là địa chỉ bạn thực sự được cho hay không. Không có gì ở phía bạn có thể sửa được một cái tên vốn không tồn tại ở phía họ. |
5.1.2 — địa chỉ hệ thống đích không hợp lệ | Tên miền mới là vấn đề: nó không tồn tại, hoặc nó không công bố bất cứ thứ gì có thể nhận thư. | Hãy nhìn vào phần sau dấu @ xem có lỗi chính tả không. Nếu nó đúng, tên miền đó không nhận thư, và thử lại bao nhiêu lần cũng không thay đổi được điều đó. |
5.1.10 — địa chỉ người nhận có null MX | Tên miền đã cố tình công bố “tôi gửi thư nhưng không bao giờ nhận thư”, điều mà RFC 7505 định nghĩa là một bản ghi MX duy nhất trỏ vào hư không. Thường gặp trên các tên miền trần của các công ty lớn. | Không làm gì cả. Hãy tìm một địa chỉ khác: địa chỉ này không phải là một hộp thư và chưa bao giờ có ý định trở thành một hộp thư. |
5.2.1 — hộp thư đã bị vô hiệu hóa | Cái tên tồn tại nhưng tài khoản đã bị đình chỉ, đã đóng, hoặc được cấu hình để không nhận thư từ bên ngoài. | Hãy liên lạc với người đó bằng cách khác. Tình trạng này thỉnh thoảng tự đảo ngược sau vài tuần, và thỉnh thoảng không bao giờ đảo ngược. |
4.2.2 hoặc 5.2.2 — hộp thư đầy | Vượt quá hạn ngạch. Là 4 thì nó được thử lại trong vài ngày; là 5 thì máy chủ nhận đã quyết định không chờ ai dọn dẹp cả. | Hãy chờ, nếu đó là 4. Nếu đó là 5, hãy báo cho người nhận bằng cách khác rằng hộp thư của họ đã đầy — vì sẽ không ai khác làm việc đó. |
5.3.4 — thư quá lớn so với hệ thống | Vượt quá ngưỡng của máy chủ nhận cho một thư, ngưỡng này tính trên toàn bộ thư đã được mã hóa chứ không chỉ tệp bạn đính kèm. | Hãy đặt tệp ở đâu đó và gửi liên kết thay vào đó. Tệp đính kèm và ngưỡng dung lượng giải thích vì sao giới hạn thực tế luôn thấp hơn hẳn con số được công bố. |
5.2.3 — độ dài thư vượt quá giới hạn quản trị | Cùng một thất bại nhưng được quyết định ở một tầng thấp hơn: một quy tắc trên chính hộp thư đó, chứ không phải giới hạn của cả hệ thống đứng sau nó. | Giống như trên, và hiếm khi có một thiết lập ở bên nào có thể nâng nó lên. Hãy cho rằng con số đó là có chủ đích. |
4.4.1 — máy chủ không phản hồi | Máy chủ nhận hoàn toàn không phản hồi: một cái máy bị sập, một tường lửa chắn đường, hoặc một bản ghi trỏ đến thứ gì đó không còn tồn tại nữa. | Chưa cần làm gì cả, lúc đầu — đây chính xác là lý do hàng đợi thử lại tồn tại. Nếu vài ngày sau nó biến thành một bounce thật sự, đầu bên kia đang gặp sự cố thật. |
5.4.4 — không thể định tuyến | Không có bản ghi MX, và cũng không có bản ghi địa chỉ nào để dự phòng. Máy chủ gửi không biết thư của tên miền đó phải đi đến đâu. | Hãy kiểm tra MX của tên miền đó bằng dig. Nếu tên miền đó là của bạn, đây là bản ghi bạn phải sửa, không phải của ai khác. |
4.4.7 — thư đã hết hạn | Hàng đợi đã bỏ cuộc. Đây là hồi kết của một chuỗi dài các thất bại tạm thời, chứ bản thân nó không phải là một thất bại riêng. | Hãy xem những cảnh báo delayed trước đó đã nói gì. Lý do thực sự nằm ở những cảnh báo ấy, không bao giờ nằm ở đây. |
5.7.1 — không được phép gửi, thư bị từ chối | Một quy tắc đã nói không: một địa chỉ gửi nằm trong danh sách chặn, điều gì đó về nội dung thư, hoặc một nỗ lực chuyển tiếp qua một máy chủ vốn không chuyển tiếp cho bạn. | Hãy đọc phần văn bản tự do. Mã này là cả một nhóm rộng, và chỉ có câu văn bên cạnh nó mới cho biết quy tắc nào thực sự đã kích hoạt. |
5.7.26 — nhiều lượt kiểm tra xác thực đã thất bại | Tên miền trong From: công bố một chính sách mà thư này không đáp ứng được, nên bên nhận coi đó là một thư giả mạo. Ngày càng phổ biến khi ngày càng nhiều tên miền công bố chính sách như vậy. | Nếu tên miền đó là của bạn, các bản ghi của bạn chưa bao trùm bất cứ thứ gì đã gửi ra thư này. Khóa chặt một tên miền chỉ nhận thư nói về chính các bản ghi đó; hướng dẫn về tiêu đề email nói về cách đọc lại phán quyết đó. |
4.7.1 — một lần từ chối tạm thời theo chính sách | Greylisting hoặc hạn chế theo uy tín gửi thư: bên nhận muốn bên gửi quay lại sau và chứng minh rằng nó có một hàng đợi thật sự đứng phía sau, điều mà phần mềm gửi thư rác thường không có. | Không cần làm gì cả. Nó được thiết kế để được thử lại, và lần thử lại đó gần như luôn luôn thành công. |
Vẫn còn những mã nằm ngoài danh sách này, và tất cả chúng đều có ý nghĩa riêng, nhưng một mã bạn chưa từng thấy trước đây gần như luôn luôn là một mã .7. — chính sách của ai đó, được mô tả bằng lời của chính họ trên dòng bên cạnh.
Điều gì có thể và không thể bounce tại một địa chỉ tạm thời
Gần như không có gì — và điều đó đáng để nói rõ ra, vì ba thứ mà người ta thường mô tả là một bounce ở đây thực ra không phải vậy:
- “User unknown” không thể xảy ra
- Máy chủ chấp nhận mọi cái tên trên các tên miền công khai của nó.
anything@grabmail.iolà một địa chỉ hợp lệ trước cả khi có ai gõ ra nó, vì không có danh sách hộp thư nào để đối chiếu — nên một5.1.1từ GrabMail là thứ không hề tồn tại. Cách email tạm thời vận hành bên dưới có đầy đủ cơ chế đó. - Hết hạn không phải là một bounce
- Một thư bị xóa 5 ngày sau khi đến nơi, và đến lúc đó máy chủ gửi đã được báo
250từ lâu và đã quên hẳn toàn bộ cuộc trao đổi. Không ai được thông báo cả, vì không có gì thất bại: thư đã được gửi thành công, rồi sau đó bị xóa. Hộp thư tồn tại bao lâu là hướng dẫn cho nửa còn lại của câu chuyện. - Một biểu mẫu từ chối địa chỉ không phải là một bounce
- Không có thư nào được gửi đi cả. Trang web đó đã đối chiếu tên miền với một danh sách và từ chối biểu mẫu; không có gì từng chạm tới một máy chủ thư, và không có gì để đọc. Vì sao biểu mẫu đăng ký chặn email dùng một lần là một vấn đề khác, với một tập câu trả lời khác.
- Im lặng cũng không phải là một bounce
- Nếu có thứ gì đó bạn đang chờ mà không bao giờ đến, và không ai gửi cho bạn một báo cáo, thì thất bại — nếu có — đã xảy ra ở phía gửi, nơi bạn không thể nhìn thấy. Thư không đến nơi đi qua các nguyên nhân theo đúng thứ tự đáng kiểm tra.
Điều đó chỉ để lại đúng một lời từ chối thật sự, và đó là ngưỡng dung lượng. Một máy chủ gửi báo trước kích thước ngay từ đầu sẽ bị từ chối ngay lập tức, trước khi một byte nào được lưu lại:
>>> MAIL FROM:<news@example.com> SIZE=7602176
<<< 552 5.3.4 Message size exceeds fixed limitMột bên gửi không báo trước kích thước sẽ nhận được câu trả lời tương tự ở cuối thư thay vào đó, một khi số byte đã được đếm xong. Dù theo cách nào thì mã cũng là 5.3.4, không có gì được lưu lại, và một con người thật sự sẽ được chính hệ thống thư của họ báo cho biết — đó chính là toàn bộ lý do để từ chối ngay tại cổng thay vì chấp nhận rồi vứt đi.
Không có gói dịch vụ nào và không có tiêu đề nào có thể nâng ngưỡng đó lên, và không có bounce nào khác ở đây: không có hạn ngạch thư đến, không có giới hạn tốc độ, không có từ chối vì ai đó đã dùng cái tên này rồi. Trên một tên miền dùng chung, hai người gõ cùng một cái tên đơn giản là sẽ dùng chung một hộp thư, đây là một đặc tính về quyền riêng tư chứ không phải về việc gửi nhận thư.
Bounce trên một tên miền bạn vừa mới trỏ về đây
Trỏ một tên miền vào một hộp thư catch-all chỉ là một bản ghi DNS, và gần như mọi bounce mà việc đó tạo ra thuộc về khoảng thời gian quanh lúc thay đổi, chứ không phải do bản thân việc thiết lập. Có năm trường hợp, và chúng trông khác hẳn nhau:
- Trước khi bản ghi tồn tại. Một tên miền không có
MXvà không có bản ghi địa chỉ nào để dự phòng sẽ trả cho bên gửi5.4.4hoặc5.1.2: không có nơi nào để gửi đến và không có gì đáng để thử lại. - Trong lúc thay đổi đang lan ra. Những bên gửi đã tra cứu bản ghi từ trước sẽ giữ câu trả lời cũ cho đến khi TTL của nó hết hạn. Một bounce trong khoảng thời gian này nêu tên máy chủ cũ trên dòng
Remote-MTA:, và đó chính xác là cách để phân biệt nó với một bản ghi bạn đã cấu hình sai. - Khi nó đã lan xong. Mọi cái tên trên tên miền đều được chấp nhận, nên “user unknown” cũng không còn có thể xảy ra ở đó nữa. Một bản ghi, độ ưu tiên 10, trỏ tới
smtp.grabmail.io, và không cần công bố gì thêm để thư có thể đến nơi. - Nếu tên miền từng công bố một null MX. Các tên miền chưa dùng đến thường mang bản ghi có nghĩa là “tên miền này không bao giờ nhận thư”. Những bên gửi đã lưu bản ghi đó vào bộ nhớ đệm sẽ trả về
5.1.10cho đến khi nó hết hạn, bất kể sau đó bạn đã công bố gì. - Nếu tên miền cũng gửi thư đi. Một
5.7.26trên thư gửi đi không liên quan gì đến những điều trên cả — đó là do SPF hoặc DMARC của chính bạn không bao trùm được bất cứ thứ gì đã gửi ra thư đó. Hướng dẫn dành cho tên miền chỉ nhận thư là trường hợp nghiêm ngặt; một tên miền vừa gửi vừa nhận cần một lộ trình triển khai theo từng giai đoạn thông thường hơn.
Đọc bản ghi đó trả lời được phần lớn câu hỏi trên trước khi ai phải đọc một bounce nào cả:
$ dig +short MX yourdomain.comCâu trả lời phải là một dòng duy nhất: độ ưu tiên, rồi đến máy chủ, rồi một dấu chấm ở cuối. Bất cứ điều gì khác — hai dòng, một máy chủ lạ, hoặc không có gì cả — chính là bounce mà bạn sắp nhận được, chỉ sớm hơn ba phút. Trỏ tên miền của riêng bạn về đây là toàn bộ phần thiết lập, và ba bản ghi ngăn chặn giả mạo là những gì cần công bố một khi thư đã bắt đầu đến nơi.
Một bounce cho một thư bạn chưa từng gửi
Nó đến trông y hệt như một báo cáo thất bại bình thường, trích dẫn một thư bạn chưa từng thấy, gửi cho một người nhận bạn chưa từng nghe tên. Không có gì bị xâm nhập cả. Ai đó đã gửi thư với địa chỉ của bạn được ghi vào envelope làm người gửi, một máy chủ nhận đã nhận thư đó trước khi phát hiện ra nó không thể gửi tiếp, rồi làm đúng việc cần làm với một thư thất bại: viết một báo cáo và gửi nó cho người gửi đã được ghi trong thư. Mà người đó chính là bạn.
Tên gọi cho hiện tượng này là backscatter, và điều nó chứng minh đáng để nói thẳng ra: chẳng chứng minh được gì về hộp thư của bạn cả. Giả mạo một người gửi trong envelope không cần quyền truy cập vào bất cứ thứ gì — đó chỉ là một dòng được gõ vào trong một phiên trao đổi. Bất kỳ ai làm việc đó chỉ cần địa chỉ của bạn và không cần gì khác, và rất có thể họ chỉ đoán ra nó.
Ba điều sau đây phân biệt nó với một bounce thật chỉ trong khoảng mười giây:
- Thư được trả lại không phải của bạn. Phần thứ ba của báo cáo mang theo bản gốc, hoặc ít nhất là tiêu đề của nó. Nếu bạn chưa từng viết nó, bạn đã không gửi nó, và mọi thứ còn lại trong báo cáo là chuyện của người khác.
- Chuỗi
Received:bắt đầu từ một nơi bạn chưa từng dùng. Hãy đọc nó từ dưới lên trên: dòng thấp nhất là cái máy thực sự đã bơm thư vào hệ thống, và đó sẽ không phải là nhà cung cấp của bạn. Đọc tiêu đề email nói về chiều đọc này và vì sao phần dưới cùng mới là phần trung thực. - Ngày tháng không khớp nhau. Backscatter thường báo cáo về một thư đã được gửi từ hàng giờ hoặc hàng ngày trước khi báo cáo đến được với bạn, từ một hàng đợi vẫn đang thử lại chiến dịch của người khác kể từ đó.
Không có gì để sửa và không có gì để trả lời cả. Nếu địa chỉ đó thuộc về một tên miền bạn sở hữu, việc công bố SPF và DMARC sẽ giảm bớt nó theo cách duy nhất thực sự có tác dụng: một máy chủ nhận kiểm tra chính sách của người gửi trước khi chấp nhận sẽ từ chối thư giả mạo ngay trong phiên trao đổi và không bao giờ tạo ra báo cáo cho bất kỳ ai. Ba bản ghi trên một tên miền chỉ nhận thư là phiên bản nghiêm ngặt nhất của cách đó, và bỏ xa các cách khác về độ dễ công bố.
Một cái tên ngắn trên một tên miền công khai dùng chung sẽ hứng chịu nhiều thứ này hơn một địa chỉ riêng tư, vì cùng một lý do khiến nó hứng chịu nhiều thư rác hơn: nó dễ đoán, và một kẻ giả mạo chọn người gửi trong envelope không nhắm riêng vào bạn. Đây là tiếng ồn về chuyện của người khác, và không như thư rác, không có nút bấm nào huấn luyện được điều gì ở đây cả — các công cụ chống spam thực sự làm được gì là hướng dẫn nói về những nút bấm thực sự có tác dụng.
Thứ tự để đọc một bounce
- Hãy xác định bạn đang cầm loại nào. Một lỗi ngay trong ứng dụng thư của bạn tại khoảnh khắc bạn bấm gửi là một lời từ chối. Một thư từ
MAILER-DAEMONđến sau đó là một báo cáo, và chỉ báo cáo mới có gì đó bên trong để đọc. - Kiểm tra xem nó có đúng là về một thư bạn thực sự đã gửi hay không. Bản sao được trả lại nằm ở phần thứ ba. Nếu nó không phải của bạn, đó là backscatter, và bạn xong việc rồi.
- Hãy mở nguồn thư dạng thô. Lời xin lỗi ở đầu chỉ là cách diễn đạt có sẵn của máy chủ chính bạn, không phải là lý do thật, và khối mà máy có thể đọc được không được hiện ra mặc định ở bất cứ đâu.
- Hãy tìm
Status:và đọc chữ số đầu tiên. Một4vẫn đang được thử lại và có thể tự thành công; một5là cuối cùng và sẽ không có gì xảy ra thêm nữa. - Hãy đọc
Diagnostic-Code:. Đây là câu văn của chính đầu bên kia, và là nơi duy nhất nêu tên thật sự quy tắc đã từ chối bạn. - Hãy xác định vị trí của chữ số thứ hai.
.1.là địa chỉ,.2.là hộp thư,.4.là tuyến đường,.7.là chính sách của ai đó. Thường như vậy là đủ để biết đây là vấn đề của ai. - Hãy hành động theo đúng vấn đề của ai. Một thất bại về địa chỉ được sửa bằng cách có đúng địa chỉ; một thất bại về định tuyến bằng cách sửa DNS; một thất bại về chính sách bằng cách đáp ứng chính sách đó, hoặc bằng cách nhờ người ở phía bên kia xem lại nhật ký của chính họ — nơi cùng một lời từ chối đó được ghi lại dài hơn nhiều so với những gì họ đã gửi cho bạn.
Có hai điều không bao giờ là câu trả lời. Gửi lại nguyên văn thư đó sau một 5 chỉ lặp lại đúng lời từ chối đó, và nếu làm đủ nhiều lần, sẽ làm hại uy tín của tên miền gửi ở khắp mọi nơi cùng một lúc. Và trả lời báo cáo đó sẽ không đến được với ai cả: nó đến từ một người gửi trong envelope trống rỗng, và chính đó là lý do duy nhất khiến nó có thể được gửi đến bạn ngay từ đầu.
Câu hỏi
Một bounce 550 5.1.1 nghĩa là gì?
Nghĩa là tên miền đó nhận thư nhưng không có hộp thư đó ở trong: cái tên đứng trước dấu @ không tồn tại ở đó. Đây là thất bại vĩnh viễn — 5 nghĩa là sẽ không có gì được thử lại — nên gửi lại đúng thư đó sẽ cho ra đúng cùng một câu trả lời. Hãy kiểm tra chính tả trước, rồi kiểm tra xem đó có đúng là địa chỉ bạn thực sự được cho hay không; không có gì ở phía gửi có thể sửa được một cái tên vốn không tồn tại ở phía nhận.
Hard bounce và soft bounce — cái nào là cái nào?
Một hard bounce là một mã bắt đầu bằng 5: vĩnh viễn, không bao giờ được thử lại, và là lý do những bên gửi thư hàng loạt loại bỏ một địa chỉ khỏi danh sách ngay từ lần đầu tiên. Một soft bounce bắt đầu bằng 4: tạm thời, được tự động thử lại trong vài ngày, và thường thì cuối cùng cũng gửi được. Không thuật ngữ nào trong hai thuật ngữ đó xuất hiện trong bất kỳ đặc tả nào — chúng chỉ là cách nói tắt của ngành gửi thư cho chữ số đầu tiên đó, thứ thì có.
Tôi có thể trả lời một thư bounce không?
Không. Một báo cáo giao nhận được gửi đi với một người gửi trong envelope trống rỗng, nên không có địa chỉ nào đứng sau MAILER-DAEMON để trả lời cả. RFC 5321 yêu cầu như vậy, để một báo cáo mà bản thân nó không thể được gửi đi sẽ không tự bounce mãi mãi. Nếu bạn cần một con người, báo cáo đó nêu tên máy chủ đã viết ra nó, và địa chỉ postmaster của tên miền đó là địa chỉ đáng để thử.
Vì sao tôi nhận được một bounce cho một thư tôi chưa từng gửi?
Vì ai đó đã ghi địa chỉ của bạn vào envelope của thư riêng của họ, một máy chủ nhận đã chấp nhận thư đó trước khi phát hiện ra nó không thể gửi tiếp, rồi gửi báo cáo thất bại đến người gửi đã được ghi trong thư. Hiện tượng này gọi là backscatter, nó hoàn toàn không cần quyền truy cập vào hộp thư của bạn, và nó không nói lên bất cứ điều gì về việc tài khoản của bạn bị xâm phạm. Hãy xem bản sao được trả lại ở phần thứ ba của báo cáo: nếu bạn không viết nó, thì không có gì cần làm cả.
Thư gửi đến một địa chỉ tạm thời có bao giờ bị bounce không?
Hầu như không bao giờ. Máy chủ chấp nhận mọi cái tên trên các tên miền công khai của nó, nên loại bounce phổ biến nhất — “user unknown” — không thể xảy ra: anything@grabmail.io hợp lệ trước cả khi có ai gõ ra nó. Lời từ chối thật sự duy nhất là một thư vượt quá 5 MB, bị từ chối ngay trong phiên trao đổi SMTP với một 552 5.3.4 và được báo cho bên gửi bởi chính hệ thống của họ. Hết hạn sau 5 ngày không phải là một bounce, vì thư đã được gửi thành công trước, rồi mới bị xóa sau đó.
Một máy chủ thử lại trong bao lâu trước khi bỏ cuộc?
Thường là vài ngày: bốn hoặc năm ngày là mặc định phổ biến, và một số nhà cung cấp bỏ cuộc sớm hơn. Một thất bại tạm thời thường tạo ra một cảnh báo delayed sau vài giờ, đây không phải là một bounce và không cần làm gì cả; bounce thật sự chỉ đến khi thời gian tồn tại trong hàng đợi hết hạn, thường dưới dạng một 4.4.7. Lý do hữu ích nằm trong những cảnh báo trước đó, chứ không nằm trong báo cáo cuối cùng.
Thư của tôi biến mất và không hề có bounce nào cả. Chuyện gì đã xảy ra?
Việc gửi đã thành công, theo đúng nghĩa duy nhất mà giao thức quan tâm: một máy chủ nào đó đã nhận trách nhiệm và trả lời 250. Điều gì xảy ra sau đó — bị xếp vào mục spam, bị lọc vào một thư mục không ai mở, hoặc được chấp nhận rồi âm thầm vứt đi — đều không tạo ra bất kỳ báo cáo nào cả. Im lặng không phải là một thất bại, và đây chính là trường hợp duy nhất một bounce không thể giúp được gì; thư không bao giờ đến nơi là hướng dẫn có thể giúp được.


