Apa itu bounce, dan dua momen saat ia terjadi
Kata itu dipinjam dari dunia kertas, dan gambaran itu keliru. Tidak ada apa pun yang kembali. Sebuah pesan diserahkan dari server ke server, dan server terakhir yang masih memegangnya dan tidak bisa membuangnya menulis sebuah pesan baru — dialamatkan kepada Anda, tentang pesan yang lama — dan mengirimkan itu sebagai gantinya. Semua yang bisa Anda pelajari ada di laporan itu, dan laporan itu cuma sebaik mesin yang menulisnya.
Ia bisa dihasilkan pada dua momen yang sangat berbeda, dan membedakan keduanya adalah sebagian besar dari diagnosisnya. Dua hasil lain terlihat seperti kegagalan dari sudut pandang Anda, padahal bukan:
| Apa yang terjadi | Apa yang Anda lihat, dan kapan | Apa yang diberitahukannya kepada Anda |
|---|---|---|
| Ditolak selama percakapan. Server penerima bilang tidak selagi server Anda masih terhubung dengannya. | Sebuah error di aplikasi email Anda sendiri, pada detik yang sama. Tidak ada pesan bounce yang pernah dibuat. | Jenis yang paling bisa dipercaya. Penolakannya datang langsung dari mesin yang bertanggung jawab atas alamat itu, tanpa apa pun di tengah yang memperhalusnya. |
Diterima, lalu gagal. Seseorang menjawab 250, mengambil alih tanggung jawab atas pesan itu, dan tidak bisa menyelesaikan tugasnya. | Sebuah pesan baru dari MAILER-DAEMON, beberapa menit atau beberapa hari kemudian. Inilah bounce dalam pengertian biasa. | Baca Reporting-MTA: sebelum apa pun yang lain: siapa pun yang menulis laporan itu adalah tempat pesan itu berhenti, dan itu tidak selalu ujung sana. |
| Diterima dan dimasukkan sebagai spam. Pengiriman berhasil. | Tidak ada apa pun sama sekali — tidak ada laporan, karena tidak ada yang gagal. | Diam bukan sebuah kegagalan. Surat yang tidak pernah tiba adalah masalah lain dengan pemeriksaan pertama yang berbeda. |
| Diterima lalu dibuang diam-diam. Diambil masuk dan dibuang tanpa sepatah kata pun. | Tidak ada apa pun, selamanya. | Perilaku terburuk yang bisa dimiliki sebuah server surat, dan alasan mengapa server yang dikelola dengan baik lebih memilih menolak di pintu. Dari sisi Anda, ini tidak bisa dibedakan dari baris di atasnya. |
Jadi kalau orang bilang “bounce”, sebenarnya itu menyebut dua hal. Satu adalah sebuah error yang ditampilkan perangkat lunak Anda sendiri, dan satu lagi adalah sebuah surat yang ditulis oleh mesin milik orang asing, dan cuma yang kedua yang punya laporan di dalamnya untuk dibaca. Sisa panduan ini membahas laporan itu.
Di mana alasannya sebenarnya ada
Sebuah laporan pengiriman adalah sebuah pesan dalam tiga bagian, dan bentuknya sudah baku sejak RFC 3464. Bagian pertama adalah permintaan maafnya, ditulis untuk manusia oleh mesin yang terdekat dengan Anda. Bagian kedua adalah blok yang bisa dibaca mesin, satu-satunya bagian yang memuat fakta. Bagian ketiga adalah pesan asli Anda, atau cuma headernya saja, supaya Anda bisa mengetahui pesan mana yang gagal.
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-headersBaca bagian tengahnya dengan urutan berikut:
Final-Recipient:- Alamat mana yang gagal. Satu laporan bisa membawa satu blok per penerima, jadi pada sebuah pesan yang dikirim ke beberapa orang, inilah cara Anda mengetahui laporan itu tentang siapa — dan yang lain mungkin saja sudah tiba.
Action:failedadalah sebuah bounce.delayedadalah sebuah peringatan bahwa server masih mencoba dan belum menyerah pada apa pun; Anda mungkin masih akan mendapat laporan kedua yang bilang berhasil.relayeddandeliveredbukan kegagalan sama sekali dan mudah dibaca keliru sebagai kegagalan.Status:- Kode status diperluas — tiga angka, dimaksudkan untuk dibaca oleh perangkat lunak, bukan oleh Anda. Inilah bagian yang bisa dibandingkan antara satu provider dengan provider lain, yang tidak pernah bisa dilakukan oleh kalimat-kalimatnya.
Diagnostic-Code:- Baris yang benar-benar penting. Ini adalah jawaban asli dari server ujung sana, dikutip kata demi kata, membawa kode balasannya dan kalimat apa pun yang ditulis administratornya. Semua yang di atasnya cuma penceritaan ulang; inilah yang asli.
Remote-MTA:- Host mana yang mengatakannya. Layak dilirik setiap kali kegagalannya soal perutean: sebuah hostname yang tidak Anda kenali biasanya berarti surat domain itu sedang menuju ke tempat yang tidak Anda duga, atau ke tempat yang dulu pernah dituju tapi sekarang tidak lagi.
Kalimat di paling atas laporan itu bukan bukti. Server pengiriman Anda sendiri yang menulisnya, dengan kata-kata apa pun yang kebetulan sudah tertanam di perangkat lunaknya, tentang sebuah kegagalan yang cuma sedang ia teruskan. Dua permintaan maaf yang identik bisa berada di atas dua baris Diagnostic-Code: yang sama sekali tidak berhubungan, itulah sebabnya sebuah bounce yang dibaca dari atas begitu sering dibaca keliru.
Dua angka itu, dan digit yang menentukan
Sebuah penolakan ditulis seperti ini, dan itu adalah tiga hal terpisah yang digabung dengan spasi:
550 5.1.1 <sales@example.com>: Recipient address rejected: User unknown550 adalah kode balasannya: tiga digit, didefinisikan oleh SMTP sendiri dalam RFC 5321, dan bagian yang dibutuhkan protokol itu untuk memutuskan apa yang harus dilakukan selanjutnya. 5.1.1 adalah kode status diperluas dari RFC 3463, ditambahkan karena tiga digit saja tidak cukup untuk mengungkapkan banyak hal. Semua yang ada setelahnya adalah teks bebas, ditulis oleh siapa pun yang menjalankan server itu, dan tidak dibakukan oleh apa pun sama sekali.
Kedua angka itu dimulai dengan digit yang sama, dan digit itulah putusannya:
| Putusannya | Apa yang terjadi selanjutnya |
|---|---|
2 — diterima. Bukan kegagalan sama sekali; digit ini muncul dalam laporan untuk penerima yang berhasil. | Tidak ada apa pun. Pesan itu terkirim, dan laporan ini memberi tahu Anda soal itu. |
4 — sebuah kegagalan sementara. Server itu sedang bilang “belum sekarang”, yang tidak sama dengan “tidak”. | Server Anda memasukkan pesan itu ke antrean dan mencobanya lagi sendiri, selama beberapa hari. Sebagian besar kegagalan sementara tidak pernah dilihat oleh manusia sama sekali. |
5 — sebuah kegagalan permanen. Jawabannya akan persis sama besok. | Tidak ada yang dicoba ulang. Inilah yang menaruh sebuah laporan di kotak masuk Anda. |
Angka kedua adalah subjeknya — jenis hal apa yang salah. Ini adalah cara tercepat untuk menempatkan sebuah kode yang belum pernah Anda lihat sebelumnya:
| Subjek | Soal apa kelas kegagalan itu |
|---|---|
.0. — lainnya | Tidak didefinisikan. Sebuah server yang tidak bisa mengklasifikasikan kegagalannya sendiri, atau tidak repot-repot melakukannya. Teks bebasnya adalah satu-satunya yang Anda punya. |
.1. — pengalamatan | Alamatnya sendiri: tidak ada kotak surat semacam itu, tidak ada domain semacam itu, atau sebuah domain yang sudah menyatakan tidak menerima surat. Kelompok yang jauh paling besar. |
.2. — kotak surat | Kotak suratnya ada, tapi tidak bisa menerima pesan ini: penuh, dinonaktifkan, atau pesannya melebihi batas yang ditetapkan pada akun itu. |
.3. — sistem surat | Sistem penerima secara keseluruhan: kehabisan ruang, kehabisan kapasitas, atau sama sekali tidak sanggup menangani pesan sebesar ini. |
.4. — jaringan dan perutean | Soal sampainya ke sana: tidak ada rute, tidak ada jawaban, sebuah loop antara dua server, atau sebuah pesan yang terlalu lama berada di antrean dan akhirnya ditinggalkan. |
.5. — protokol | Percakapan SMTP itu sendiri yang bermasalah. Jarang terjadi, dan hampir selalu sebuah bug perangkat lunak milik seseorang, bukan sesuatu yang Anda lakukan. |
.6. — konten | Isi pesan atau encoding-nya tidak bisa diterima — sebuah character set yang tidak bisa dikonversi oleh penerima, sebuah konversi yang ia tolak lakukan. Juga jarang terjadi. |
.7. — kebijakan dan keamanan | Sebuah aturan yang menolaknya: autentikasi, reputasi, sebuah blocklist, keputusan seorang administrator. Dalam praktiknya kelompok terbesar kedua, dan yang kalimatnya lebih penting daripada angkanya. |
- Bounce permanen (hard bounce)
- Sebuah
5. Alamatnya salah, sudah tidak ada, atau ditolak sebagai kebijakan, dan mengirim ulang pesan yang sama tidak mengubah apa pun. Pengirim massal langsung mencoret sebuah alamat dari daftarnya begitu ini muncul pertama kali, karena terus mengirim adalah hal yang membuat sebuah domain pengirim dibatasi di mana-mana sekaligus. - Bounce sementara (soft bounce)
- Sebuah
4. Sebuah kotak surat penuh, sebuah server yang sibuk, sebuah penolakan kebijakan sementara. Ini dicoba ulang tanpa bantuan siapa pun dan biasanya akhirnya tiba; Anda cuma akan mendengarnya kalau percobaan ulangnya keburu habis.
Tidak satu pun dari kedua istilah itu ada dalam spesifikasi mana pun. Keduanya adalah singkatan yang dipakai industri pengiriman surat untuk menyebut digit pertama itu — dan singkatan itu layak diketahui, karena setiap tool deliverability yang pernah Anda pegang melaporkan dengan istilah itu.
Kode-kode yang benar-benar akan Anda temui
Ada puluhan kode dalam registry yang dikelola IANA, dan sekitar selusin di kehidupan sehari-hari. Kedua belas ini mencakup hampir semua bounce yang pernah dibaca orang:
| Kodenya, dan nama standarnya | Apa yang sebenarnya terjadi | Apa yang harus dilakukan soal itu |
|---|---|---|
5.1.1 — alamat kotak surat tujuan tidak valid | Domainnya ada dan menerima surat, tapi tidak ada nama semacam itu di sana. Bounce paling umum yang ada, dengan selisih yang jauh. | Periksa ejaannya, lalu periksa apakah itu memang alamat yang benar-benar diberikan kepada Anda. Tidak ada apa pun di sisi Anda yang bisa memperbaiki sebuah nama yang tidak ada di sisi mereka. |
5.1.2 — alamat sistem tujuan tidak valid | Domain-nya yang bermasalah: domain itu tidak ada, atau tidak mempublikasikan apa pun yang menerima surat. | Lihat bagian setelah @ untuk kemungkinan salah ketik. Kalau itu sudah benar, domain itu memang tidak menerima surat dan mencoba ulang sebanyak apa pun tidak akan mengubahnya. |
5.1.10 — alamat penerima memiliki null MX | Domain itu sengaja mempublikasikan “saya mengirim surat dan tidak pernah menerima apa pun”, yang oleh RFC 7505 didefinisikan sebagai satu record MX tunggal yang menunjuk ke tempat kosong. Umum ditemukan pada domain telanjang milik perusahaan-perusahaan besar. | Tidak ada. Cari alamat lain: yang ini bukan sebuah kotak surat dan memang tidak pernah dimaksudkan untuk itu. |
5.2.1 — kotak surat dinonaktifkan | Namanya ada, tapi akunnya ditangguhkan, ditutup, atau dikonfigurasi untuk tidak menerima surat dari luar. | Hubungi orangnya lewat cara lain. Ini kadang berbalik sendiri beberapa minggu kemudian, dan kadang tidak pernah berbalik sama sekali. |
4.2.2 atau 5.2.2 — kotak surat penuh | Melebihi kuota. Sebagai 4, ini dicoba ulang selama beberapa hari; sebagai 5, server penerima sudah memutuskan untuk tidak menunggu siapa pun membereskannya. | Tunggu saja, kalau itu 4. Kalau itu 5, beri tahu penerimanya lewat cara lain bahwa kotak suratnya penuh — tidak ada orang lain yang akan melakukannya. |
5.3.4 — pesan terlalu besar untuk sistem | Melebihi batas atas server penerima untuk satu pesan, yang menghitung keseluruhan pesan yang sudah di-encode, bukan cuma file yang Anda lampirkan. | Taruh filenya di suatu tempat dan kirim tautannya saja. Lampiran dan batas atas ukurannya menjelaskan mengapa batas sebenarnya selalu jauh di bawah angka yang dipublikasikan. |
5.2.3 — panjang pesan melebihi batas administratif | Kegagalan yang sama, diputuskan satu tingkat lebih rendah: sebuah aturan pada kotak surat itu, bukan batas dari sistem di baliknya. | Sama seperti di atas, dan jarang ada pengaturan di kedua sisi yang bisa menaikkannya. Anggap saja angka itu memang disengaja. |
4.4.1 — tidak ada jawaban dari host | Server penerima sama sekali tidak menjawab: sebuah mesin yang mati, sebuah firewall yang menghalangi, atau sebuah record yang menunjuk ke sesuatu yang sudah tidak ada lagi. | Tidak ada, pada awalnya — inilah persis alasan antrean percobaan ulang itu ada. Kalau ini berubah menjadi bounce beberapa hari kemudian, ujung sana sedang mengalami gangguan sungguhan. |
5.4.4 — tidak dapat merutekan | Tidak ada record MX, dan tidak ada record alamat sebagai cadangan. Server pengirim tidak tahu ke mana surat domain itu seharusnya dituju. | Periksa MX domain itu dengan dig. Kalau domain itu milik Anda, inilah record yang harus Anda perbaiki, bukan milik orang lain. |
4.4.7 — pesan kedaluwarsa | Antreannya menyerah. Ini adalah akhir dari serangkaian panjang kegagalan sementara, bukan sebuah kegagalan tersendiri. | Lihat apa yang dikatakan peringatan-peringatan delayed sebelumnya. Alasan sebenarnya ada di situ, bukan di sini. |
5.7.1 — pengiriman tidak diizinkan, pesan ditolak | Sebuah aturan bilang tidak: sebuah alamat pengirim yang masuk blocklist, sesuatu soal kontennya, atau sebuah percobaan me-relay lewat server yang tidak melakukan relay untuk Anda. | Baca teks bebasnya. Kode ini adalah satu kategori penuh, dan cuma kalimat di sampingnyalah yang mengatakan aturan mana yang sebenarnya berlaku. |
5.7.26 — beberapa pemeriksaan autentikasi gagal | Domain di From: mempublikasikan sebuah kebijakan yang tidak dipenuhi pesan itu, sehingga penerima memperlakukannya sebagai pemalsuan. Semakin umum terjadi seiring semakin banyak domain yang mempublikasikan kebijakan semacam itu. | Kalau domain itu milik Anda, record-record Anda tidak mencakup apa pun yang mengirim pesan ini. Mengunci sebuah domain khusus terima membahas record-recordnya sendiri; panduan header membahas cara membaca putusannya kembali. |
4.7.1 — penolakan kebijakan sementara | Greylisting atau pembatasan berdasarkan reputasi: penerima ingin pengirimnya kembali lagi nanti dan membuktikan bahwa ada antrean sungguhan di baliknya, yang biasanya tidak dimiliki perangkat lunak spam. | Tidak ada apa pun. Ini memang dirancang untuk dicoba ulang, dan percobaan ulangnya hampir selalu berhasil. |
Kode-kode di luar daftar ini memang ada, dan semuanya berarti sesuatu, tapi sebuah kode yang belum pernah Anda lihat sebelumnya hampir selalu adalah sebuah .7. — kebijakan seseorang, dijelaskan dengan kata-katanya sendiri pada baris di sampingnya.
Apa yang bisa dan tidak bisa bounce di sebuah alamat sementara
Hampir tidak ada apa pun — dan itu layak dijelaskan secara rinci, karena tiga dari hal-hal yang disebut orang sebagai bounce di sini sebenarnya bukan bounce:
- “User unknown” tidak mungkin terjadi
- Server ini menerima semua nama di domain-domain publiknya.
anything@grabmail.ioadalah alamat yang valid bahkan sebelum ada yang mengetiknya, karena tidak ada daftar kotak surat untuk memeriksanya — jadi sebuah5.1.1dari GrabMail adalah sesuatu yang tidak pernah ada. Cara kerja temp mail di baliknya membahas mekanismenya secara lengkap. - Kedaluwarsa bukan sebuah bounce
- Sebuah pesan dihapus 5 hari setelah tiba, dan pada saat itu server pengirim sudah lama diberi tahu
250dan sudah melupakan seluruh percakapan itu. Tidak ada yang diberi tahu, karena tidak ada yang gagal: pesan itu terkirim, lalu belakangan dihapus. Berapa lama sebuah kotak masuk bertahan adalah panduan untuk separuh cerita itu. - Sebuah formulir yang menolak alamatnya bukan sebuah bounce
- Tidak ada surat yang terkirim sama sekali. Situsnya membandingkan domain itu dengan sebuah daftar dan menolak formulirnya; tidak ada apa pun yang pernah sampai ke server surat, dan tidak ada apa pun untuk dibaca. Mengapa formulir pendaftaran memblokir email sekali pakai adalah masalah lain dengan seperangkat jawaban yang berbeda.
- Diam juga bukan sebuah bounce
- Kalau sesuatu yang Anda tunggu tidak pernah tiba dan tidak ada yang mengirimi Anda laporan apa pun, kegagalannya — kalau memang ada — terjadi di sisi pengirim, di tempat yang tidak bisa Anda lihat. Surat yang tidak kunjung muncul membahas penyebab-penyebabnya dalam urutan yang layak diperiksa.
Itu menyisakan tepat satu penolakan sungguhan, yaitu batas atas ukuran. Sebuah server pengirim yang mengumumkan ukurannya di awal langsung ditolak seketika, sebelum satu byte pun tersimpan:
>>> MAIL FROM:<news@example.com> SIZE=7602176
<<< 552 5.3.4 Message size exceeds fixed limitSebuah pengirim yang tidak mengumumkan ukurannya akan mendapat jawaban yang sama di akhir pesan, setelah byte-nya selesai dihitung. Bagaimanapun caranya, kodenya tetap 5.3.4, tidak ada apa pun yang tersimpan, dan orang sungguhan diberi tahu oleh sistem suratnya sendiri — itulah keseluruhan alasan untuk menolak di pintu, bukan menerima lalu membuangnya.
Tidak ada paket dan tidak ada header yang menaikkan batas atas itu, dan tidak ada bounce untuk hal lain apa pun di sini: tidak ada kuota masuk, tidak ada rate limit, tidak ada penolakan karena seseorang sudah memakai nama itu. Pada sebuah domain bersama, dua orang yang mengetik nama yang sama akan berbagi kotak surat begitu saja, itu adalah sebuah sifat privasi, bukan sifat pengiriman.
Bounce pada domain yang baru saja Anda arahkan ke sini
Mengarahkan sebuah domain ke sebuah kotak masuk catch-all cuma perlu satu record DNS, dan hampir semua bounce yang dihasilkannya adalah milik jam-jam di sekitar perubahan itu, bukan milik pengaturannya sendiri. Ada lima kasus dan masing-masing terlihat berbeda satu sama lain:
- Sebelum recordnya ada. Sebuah domain tanpa
MXdan tanpa record alamat sebagai cadangan memberi pengirim5.4.4atau5.1.2: tidak ada tempat untuk mengirim dan tidak ada yang layak dicoba ulang. - Selagi perubahan itu menyebar. Pengirim yang sudah lebih dulu memeriksa recordnya akan tetap memakai jawaban lama sampai TTL-nya habis. Sebuah bounce dalam jendela waktu ini menyebutkan nama host yang lama pada baris
Remote-MTA:, dan itulah persis cara membedakannya dari sebuah record yang memang salah Anda buat. - Begitu sudah menyebar sepenuhnya. Semua nama di domain itu diterima, sehingga “user unknown” juga berhenti mungkin terjadi di sana. Satu record, prioritas 10, menunjuk ke
smtp.grabmail.io, dan tidak ada apa pun lagi yang perlu dipublikasikan supaya surat bisa tiba. - Kalau domain itu dulu mempublikasikan null MX. Domain yang diparkir sering membawa record yang artinya “domain ini tidak pernah menerima surat”. Pengirim yang sudah menyimpannya di cache akan tetap menjawab
5.1.10sampai cache itu kedaluwarsa, apa pun yang sudah Anda publikasikan sejak itu. - Kalau domain itu juga mengirim surat. Sebuah
5.7.26pada surat keluar bukan soal apa pun di atas — itu soal SPF atau DMARC Anda sendiri yang gagal mencakup apa pun yang mengirim pesan itu. Panduan khusus terima adalah kasus yang ketat; sebuah domain yang juga mengirim surat justru butuh peluncuran bertahap yang biasa.
Membaca recordnya menjawab sebagian besar dari itu sebelum siapa pun harus membaca sebuah bounce:
$ dig +short MX yourdomain.comJawabannya seharusnya satu baris: prioritasnya, lalu hostnya, lalu sebuah titik di akhir. Apa pun selain itu — dua baris, sebuah host yang tidak dikenal, tidak ada apa pun sama sekali — adalah bounce yang akan segera Anda terima, cuma lebih cepat tiga menit. Mengarahkan domain Anda sendiri ke sini adalah keseluruhan pengaturannya, dan tiga record yang menghentikan spoofing adalah yang harus dipublikasikan begitu surat mulai tiba.
Sebuah bounce untuk pesan yang tidak pernah Anda kirim
Ini tiba dengan tampilan persis seperti sebuah laporan kegagalan biasa, mengutip sebuah pesan yang belum pernah Anda lihat, untuk seorang penerima yang belum pernah Anda dengar namanya. Tidak ada apa pun yang dibobol. Seseorang mengirim surat dengan alamat Anda yang dituliskan ke dalam envelope sebagai pengirimnya, sebuah server penerima menerimanya sebelum menyadari tidak bisa mengirimkannya, lalu melakukan hal yang benar terhadap sebuah pesan yang gagal: menulis sebuah laporan dan mengirimkannya kepada pengirim yang tercatat baginya. Yaitu Anda.
Namanya adalah backscatter, dan apa yang dibuktikannya layak dikatakan dengan jelas: tidak ada apa-apa soal kotak surat Anda. Memalsukan sebuah pengirim envelope tidak butuh akses ke apa pun — itu cuma satu baris yang diketik ke dalam sebuah percakapan. Siapa pun yang melakukannya cuma butuh alamat Anda dan tidak ada yang lain, dan mereka bisa jadi cuma menebaknya.
Tiga hal membedakannya dari sebuah bounce sungguhan dalam waktu sekitar sepuluh detik:
- Pesan yang dikembalikan bukan milik Anda. Bagian ketiga laporan itu membawa pesan aslinya, atau setidaknya headernya. Kalau Anda belum pernah menulisnya, Anda tidak mengirimnya, dan semua yang lain dalam laporan itu adalah soal masalah orang lain.
- Rantai
Received:dimulai dari suatu tempat yang belum pernah Anda pakai. Baca dari bawah ke atas: baris paling bawah adalah mesin yang benar-benar memasukkan pesan itu, dan itu bukan provider Anda. Membaca header email membahas arah bacanya dan mengapa bagian bawah adalah ujung yang jujur. - Tanggalnya tidak cocok. Backscatter biasanya melaporkan sebuah pesan yang dikirim berjam-jam atau berhari-hari sebelum laporannya sampai ke Anda, keluar dari sebuah antrean yang sudah mencoba ulang kampanye orang lain sejak saat itu.
Tidak ada apa pun yang perlu diperbaiki dan tidak ada apa pun yang perlu dijawab. Kalau alamat itu milik sebuah domain yang Anda punya, mempublikasikan SPF dan DMARC menguranginya dengan satu-satunya cara yang benar-benar berhasil: sebuah server penerima yang memeriksa kebijakan pengirim sebelum menerima akan menolak pemalsuan itu di dalam percakapan dan tidak pernah membuat laporan untuk siapa pun. Tiga record pada sebuah domain khusus terima adalah versi paling ketat dari itu, dan jauh yang paling mudah dipublikasikan.
Sebuah nama pendek pada sebuah domain publik bersama mengumpulkan lebih banyak dari ini dibanding sebuah alamat privat, dengan alasan yang sama seperti mengapa ia mengumpulkan lebih banyak spam: nama itu mudah ditebak, dan seorang pemalsu yang memilih pengirim envelope tidak sedang menargetkan Anda secara khusus. Ini cuma noise soal orang lain, dan tidak seperti spam, tidak ada tombol yang melatih apa pun di sini — apa yang sebenarnya dilakukan kontrol-kontrol spam adalah panduan untuk tombol-tombol yang memang berfungsi.
Urutan membaca sebuah bounce
- Tentukan jenis mana yang sedang Anda pegang. Sebuah error di aplikasi email Anda sendiri pada saat Anda menekan kirim adalah sebuah penolakan. Sebuah pesan dari
MAILER-DAEMONyang tiba belakangan adalah sebuah laporan, dan cuma laporan itu yang punya sesuatu di dalamnya untuk dibaca. - Periksa apakah ini soal pesan yang benar-benar Anda kirim. Salinan yang dikembalikan ada di bagian ketiga. Kalau itu bukan milik Anda, ini adalah backscatter, dan Anda sudah selesai.
- Buka sumber mentahnya. Permintaan maaf di bagian atas adalah kalimat baku dari server Anda sendiri, bukan alasannya, dan blok yang bisa dibaca mesin tidak ditampilkan secara default di mana pun.
- Cari
Status:dan baca digit pertamanya. Sebuah4masih sedang dicoba ulang dan mungkin masih akan berhasil sendiri; sebuah5sudah final dan tidak akan terjadi apa-apa lagi. - Baca
Diagnostic-Code:. Ini adalah kalimat asli dari ujung sana, dan satu-satunya tempat aturan yang menolak Anda benar-benar disebutkan namanya. - Tempatkan digit keduanya.
.1.adalah alamat,.2.kotak surat,.4.rute,.7.kebijakan seseorang. Itu biasanya cukup untuk mengetahui ini masalah siapa. - Bertindak sesuai masalah siapa itu. Kegagalan pengalamatan diperbaiki dengan memakai alamat yang benar; kegagalan perutean dengan memperbaiki DNS; kegagalan kebijakan dengan memenuhi kebijakan itu, atau dengan meminta orang di sisi lain memeriksa log mereka sendiri — tempat penolakan yang sama tertulis jauh lebih panjang daripada yang mereka kirimkan kepada Anda.
Dua hal yang tidak pernah menjadi jawabannya. Mengirim ulang pesan yang sama persis setelah sebuah 5 cuma mengulangi penolakan yang sama dan, kalau dilakukan cukup sering, merusak reputasi domain pengirim di mana-mana sekaligus. Dan membalas laporan itu tidak sampai ke siapa pun: laporan itu datang dari sebuah pengirim envelope yang kosong, dan justru itulah alasan mengapa laporan itu bisa terkirim kepada Anda sejak awal.
Pertanyaan
Apa arti bounce 550 5.1.1?
Artinya domain itu menerima surat tapi tidak punya kotak surat semacam itu: nama di depan @ tidak ada di sana. Ini permanen — 5 berarti tidak akan ada yang dicoba ulang — jadi mengirim ulang pesan yang sama menghasilkan jawaban yang persis sama. Periksa dulu ejaannya, lalu periksa apakah itu memang alamat yang benar-benar diberikan kepada Anda; tidak ada apa pun di sisi pengirim yang bisa memperbaiki sebuah nama yang tidak ada di sisi penerima.
Bounce permanen atau bounce sementara (hard bounce vs soft bounce) — mana yang mana?
Bounce permanen (hard bounce) adalah kode yang diawali 5: sifatnya tetap, tidak pernah dicoba ulang, dan itulah sebabnya pengirim massal langsung mencoret sebuah alamat dari daftarnya begitu kode ini muncul untuk pertama kalinya. Bounce sementara (soft bounce) diawali 4: sifatnya sementara, dicoba ulang otomatis selama beberapa hari, dan biasanya akhirnya tetap terkirim. Tidak satu pun dari kedua istilah itu tercantum dalam spesifikasi mana pun — keduanya cuma singkatan yang dipakai industri pengiriman surat untuk menyebut digit pertama itu, yang justru tercantum di sana.
Bisakah saya membalas sebuah pesan bounce?
Tidak. Sebuah laporan pengiriman dikirim dengan pengirim envelope yang kosong, jadi tidak ada alamat di balik MAILER-DAEMON untuk dibalas. RFC 5321 mewajibkan ini, supaya sebuah laporan yang tidak bisa dikirim sendiri tidak ikut bounce selamanya secara berantai. Kalau Anda butuh manusia sungguhan, laporan itu menyebutkan nama server yang menulisnya, dan alamat postmaster domain itulah yang layak dicoba.
Mengapa saya mendapat bounce untuk pesan yang tidak pernah saya kirim?
Karena seseorang menuliskan alamat Anda ke dalam envelope surat mereka sendiri, sebuah server penerima menerimanya sebelum menyadari itu tidak bisa dikirim, lalu mengirim laporan kegagalannya ke pengirim yang tercatat baginya. Ini disebut backscatter, sama sekali tidak butuh akses ke kotak surat Anda, dan tidak berarti apa-apa soal akun Anda yang diretas. Lihat salinan yang dikembalikan di bagian ketiga laporan itu: kalau Anda tidak menulisnya, tidak ada yang perlu dilakukan.
Apakah surat ke sebuah alamat sementara pernah bounce?
Hampir tidak pernah. Server ini menerima semua nama di domain-domain publiknya, sehingga bounce paling umum dari semuanya — “user unknown” — tidak mungkin terjadi: anything@grabmail.io valid bahkan sebelum ada yang mengetiknya. Satu-satunya penolakan sungguhan adalah pesan di atas 5 MB, ditolak selama percakapan SMTP dengan sebuah 552 5.3.4 dan dilaporkan ke pengirimnya oleh sistemnya sendiri. Kedaluwarsa setelah 5 hari bukan sebuah bounce, karena pesan itu terkirim lebih dulu dan baru dihapus belakangan.
Berapa lama sebuah server terus mencoba sebelum menyerah?
Biasanya beberapa hari: empat atau lima adalah default yang umum, dan beberapa provider menyerah lebih cepat. Sebuah kegagalan sementara biasanya menghasilkan sebuah peringatan delayed setelah beberapa jam, yang bukan sebuah bounce dan tidak perlu ditindaklanjuti; bounce sungguhan cuma tiba begitu masa hidup antreannya habis, biasanya sebagai sebuah 4.4.7. Alasan yang berguna ada di peringatan-peringatan awal itu, bukan di laporan akhirnya.
Pesan saya lenyap dan sama sekali tidak ada bounce. Apa yang terjadi?
Pengirimannya berhasil, dalam satu-satunya arti yang dipedulikan protokol itu: sebuah server mengambil tanggung jawab dan menjawab 250. Apa yang terjadi sesudahnya — dimasukkan sebagai spam, disortir ke sebuah folder yang tidak pernah dibuka siapa pun, atau diterima lalu dibuang diam-diam — tidak menghasilkan laporan apa pun. Diam bukan sebuah kegagalan, dan inilah satu-satunya kasus yang tidak bisa dibantu oleh sebuah bounce; surat yang tidak pernah tiba adalah panduan yang bisa membantu untuk itu.


