- Server email sebuah jurusan statistika di sebuah universitas, sejak suatu titik waktu, tidak bisa mengirim email ke tujuan yang lebih jauh dari sekitar 500–520 mil, dan masalahnya dapat direproduksi berdasarkan radius geografis
- Ketua jurusan mengumpulkan data selama beberapa hari lalu meminta ahli geostatistika menganalisisnya, serta memetakan radius yang dapat dijangkau dan tujuan-tujuan pengecualian di dalam radius tersebut
- Hasil pengujian admin menunjukkan bahwa dari Research Triangle, North Carolina, pengiriman ke Richmond, Atlanta, Washington, Princeton, dan New York berhasil, tetapi ke Memphis, Boston, Detroit, dan Providence gagal, sehingga terungkap bahwa acuannya adalah lokasi server email, bukan lokasi penerima
- Penyebabnya adalah saat server dipatch, SunOS ikut di-upgrade sehingga secara efektif turun dari Sendmail 8 ke Sendmail 5, dan Sendmail 5 mengabaikan nama konfigurasi panjang dalam
sendmail.cfyang sebelumnya dibuat untuk Sendmail 8 - Akibatnya, timeout koneksi disetel ke 0, dan pada mesin tersebut koneksi terputus setelah sekitar 3 milidetik, yang cocok dengan hasil perhitungan
unitssekitar 559 mil
Laporan: “email tidak bisa dikirim lebih dari 500 mil”
- Saat mengelola sistem email kampus, admin dihubungi oleh ketua jurusan statistika yang mengatakan, “ada masalah dalam mengirim email ke luar jurusan”
- Inti masalahnya adalah, “dari sini email tidak bisa dikirim ke tempat yang lebih jauh dari 500 mil,” dan ketua jurusan menambahkan bahwa batas nyatanya “sedikit lebih jauh, sekitar 520 mil”
- Admin menjawab bahwa email biasanya tidak bekerja seperti itu, tetapi ketua jurusan saat itu memang sudah menghubungi setelah mengumpulkan data yang cukup selama beberapa hari
- Jurusan statistika meminta ahli geostatistika untuk memeriksanya, lalu membuat peta yang menunjukkan bahwa jangkauan pengiriman email membentuk radius yang sedikit lebih besar dari 500 mil
- Bahkan di dalam radius itu ada tujuan yang tidak bisa dijangkau atau hanya bisa dijangkau sesekali
- Di luar radius itu, email sama sekali tidak pernah terkirim
- Pada waktu yang sama, seorang konsultan memang telah mem-patch dan me-reboot server, tetapi menyatakan tidak menyentuh sistem email
Uji reproduksi dan batas geografis
- Ketika admin login ke server jurusan dan mengirim email uji, masalah tersebut ternyata memang bisa direproduksi
- Lokasinya saat itu adalah Research Triangle di North Carolina, dan tujuan yang dekat berfungsi normal
- Email uji yang dikirim ke akunnya sendiri terkirim normal
- Email ke Richmond, Atlanta, dan Washington juga berhasil
- Pengujian ke Princeton yang berjarak sekitar 400 mil juga lolos
- Tujuan yang lebih jauh terus gagal
- Memphis sekitar 600 mil gagal
- Boston gagal
- Detroit gagal
- New York sekitar 420 mil berhasil
- Providence sekitar 580 mil gagal
- Email yang dikirim ke akun temannya yang tinggal di North Carolina gagal, karena ISP akun tersebut berada di Seattle
- Ini menegaskan bahwa masalahnya terkait lokasi geografis server email, bukan lokasi fisik orangnya
Konfigurasi Sendmail yang tampak normal
- File
sendmail.cfsecara umum tampak normal, dan sama dengan file yang pernah dibuat admin sebelumnya - Admin merasa yakin ia tidak pernah mengaktifkan opsi seperti
FAIL_MAIL_OVER_500_MILES - Saat terhubung ke port SMTP dengan
telnet, server mengembalikan banner SunOS sendmail - Pada saat itu Sun mendistribusikan Sendmail 5 bersama sistem operasinya, sementara Sendmail 8 sudah berada pada tahap matang
- Admin sebelumnya telah menstandarkan penggunaan Sendmail 8, dan menulis
sendmail.cfyang menggunakan nama opsi dan variabel panjang yang deskriptif milik Sendmail 8- Sendmail 5 menggunakan kode konfigurasi lama yang lebih mirip sandi, penuh tanda baca
Upgrade yang menghasilkan downgrade
- Saat konsultan “mem-patch” server, versi SunOS dinaikkan, dan dalam proses itu Sendmail justru turun ke Sendmail 5
- Upgrade sistem operasi membiarkan
sendmail.cflama tetap ada, tetapi kini file itu tidak lagi cocok dengan versi Sendmail yang sedang berjalan - Versi Sendmail 5 yang didistribusikan Sun masih bisa memproses banyak aturan dalam
sendmail.cfuntuk Sendmail 8- Pada masa itu sebagian besar aturan memang belum banyak berubah
- Masalahnya ada pada opsi konfigurasi panjang khas Sendmail 8, yang oleh Sendmail 5 dianggap sebagai nilai sampah lalu dilewati
- Dalam biner Sendmail, kebanyakan nilai default untuk opsi-opsi ini tidak dikompilasi, dan karena nilainya juga tidak ditemukan di file konfigurasi, hasil akhirnya disetel ke 0
Timeout 3 milidetik dan 558 mil
- Salah satu nilai yang menjadi 0 adalah timeout koneksi yang digunakan saat menghubungi server SMTP jarak jauh
- Hasil eksperimen menunjukkan bahwa pada mesin tersebut dan dalam kondisi beban normal, timeout 0 membatalkan pemanggilan
connectsetelah sedikit lebih dari 3 milidetik - Jaringan kampus saat itu sudah 100% switched
- Paket yang keluar tidak mengalami delay router sampai mencapai POP dan bertemu router di sisi seberang
- Waktu koneksi ke host remote yang bebannya rendah di jaringan dekat lebih banyak dipengaruhi oleh jarak menurut kecepatan cahaya daripada delay router tambahan
- Ketika admin mengonversi
3 millilightsecondskemilesdiunits, hasilnya adalah 558.84719 mil - Hasil ini hampir persis cocok dengan pengamatan ketua jurusan yang mengatakan “500 mil, atau sedikit lebih jauh”
1 komentar
Komentar Hacker News
Pada 1998, saat bekerja sebagai dukungan IT di sebuah perusahaan kecil di Australia, seorang pegawai kantor jarak jauh menelepon dan berkata, “screen saver jatuh dari monitor lalu menekan tombol keyboard, dan terminal terkunci.”
Awalnya saya pikir itu tidak masuk akal, tetapi ternyata yang ia sebut “screen saver” adalah filter anti-silau CRT fisik yang umum pada masa itu, dan filter itu jatuh lalu menekan Scroll Lock hingga tetap aktif.
https://dylbs6e8mhm2w.cloudfront.net/productimages/500x500/E...
Saya suka kejadian semacam ini. Ada momen ketika kita menyadari bahwa fenomena yang kita yakini mustahil terjadi ternyata benar-benar terjadi karena hukum fisika seperti kecepatan cahaya.
Di salah satu pekerjaan pertama saya, pernah ada masalah monitor CRT yang berkedip sangat halus; monitor, kabel, kabel daya, bahkan komputernya sudah diganti, tetapi tetap sama.
Akhirnya ketika komputer dan monitor dinaikkan ke troli lalu dibawa keluar ke koridor, masalahnya hilang; penyebabnya adalah pelindung listrik yang buruk di kantor itu.
Belakangan diketahui bahwa setelah kami membeli TV yang lebih besar, TV itu diletakkan terlalu dekat sehingga listrik statis menumpuk dan menimbulkan efek tersebut. Sepertinya saat tiba di tempat servis, muatannya sudah cukup terlepas sehingga untuk sementara baik-baik saja.
Kami menjual komputer, tetapi katanya setiap dipakai muncul blue screen; saat dibawa kembali dan dites, tidak ada masalah, dan ketika dipakai bersama selama 30 menit di kantor pun baik-baik saja.
Namun begitu orang itu menyentuh mouse, komputer langsung blue screen, dan masalahnya hilang setelah mouse diganti.
Ketika seseorang menyalakan penstabil, monitor CRT di sekitarnya sesaat melengkung, berkedip, dan warnanya memburuk. Meja yang berada di dekat dinding tidak terlalu terdampak, tetapi sakit kepala parah, dan saya hanya bertahan 6 bulan di perusahaan itu.
Bagian terbaik dari cerita ini adalah konsultan yang menambal server itu ada di Hacker News.
Ia meninggalkan komentar di sini tentang bagian yang ia tangani: https://news.ycombinator.com/item?id=23775404
Untuk yang mungkin tertarik, saya juga memasukkannya ke
/highlights: https://news.ycombinator.com/highlightsMungkin inilah bagian yang dimaksud dengan “ceritanya sedikit diubah untuk melindungi yang bersalah.”
Cerita ini muncul lagi setiap beberapa tahun, dan setiap kali tetap membuat saya tersenyum.
3 milidetik cahaya di bagian akhir adalah jarak satu arah, jadi tidak mungkin benar.
Pada 2007, saat bekerja sebagai teknisi dukungan tingkat dua untuk berbagai layanan di ISP besar, ADSL masih umum, dan karena berbasis kabel tembaga, ada jarak maksimum agar bisa beroperasi stabil.
Sebagian pelanggan memakai paket khusus untuk menambah jarak itu sekitar 2–3 km lagi, tetapi dalam praktiknya cukup tidak stabil dan hanya nyaris cukup untuk browsing web.
Suatu musim panas, seorang pelanggan menghubungi kami karena IPTV-nya terputus-putus hampir sebulan pada siang hari, dan internetnya kadang terasa selambat gletser. Setelah diukur, ternyata lokasinya sangat jauh dari sentral telepon terdekat, dan kami menyimpulkan bahwa pada siang hari yang panas, kabel memuai sehingga sedikit melewati batas jarak dan menjadi tidak stabil.
Hampir tidak ada yang bisa dilakukan untuk membantu, dan saya tidak merindukan jaringan kabel tembaga.
Sekitar 15–20 tahun lalu, saat bekerja di bengkel servis, seseorang membawa TV karena setiap hari pukul 5 sore TV-nya berubah ke bahasa Spanyol.
Ia menonton siaran terestrial, dan pengaturan TV hanya memiliki bahasa menu, tetapi benar saja, pada pukul 5 sore audio TV berubah ke bahasa Spanyol. Setelah melihat beberapa kanal lagi, hampir semuanya berbahasa Spanyol kecuali satu atau dua.
Ternyata sebagian stasiun TV menyiarkan audio dalam beberapa bahasa, dan sebagian TV bisa mengubah bahasa pilihan. Sayangnya, TV bekas yang ia beli berasal dari negara berbahasa Spanyol, sehingga tidak ada cara untuk mengubah preferensi itu.
Beberapa hari lalu saya membawa pulang robot vacuum yang dibuat dan dibeli di Tiongkok; begitu pertama kali dinyalakan, ia menabrak server dan mencabut kabel dayanya.
Jadi kemungkinan serangan siber yang disponsori negara juga tidak bisa dikesampingkan.
Ini benar-benar contoh induk dari abstraksi yang bocor.
Saat hendak mengirim email, protokol transport bawah nyata dari alam semesta relativistik tersingkap.
Kebetulan saat makan siang hari ini saya membicarakan Sendmail, dan saya berani jamin itu kejadian yang cukup langka.
Saya teringat saat pertama kali mengonfigurasi Sendmail pada 1991 atau 1992; dengan melihat bat book, saya hampir mencabuti rambut selama seminggu sebelum akhirnya berhasil membuat konfigurasi pertama.
Belakangan saya memahami konfigurasi m4 dan sampai batas tertentu menghargainya, tetapi setelah pindah ke qmail dan postfix pada pertengahan 90-an, saya tidak pernah menoleh kembali.
Tulisan seperti ini sepertinya seharusnya ditandai sebagai 1997, bukan 2002. Namun Trey sendiri tampaknya juga tidak ingat: https://www.ibiblio.org/harris/500milemail-faq.html
Tulisan-tulisan terkait. Apakah ada lagi?
The case of the 500-mile email (2002) - https://news.ycombinator.com/item?id=29213064 - Nov 2021 (93 komentar)
We can't send email more than 500 miles (2002) - https://news.ycombinator.com/item?id=23775404 - Juli 2020 (135 komentar)
500 miles (2002) - https://news.ycombinator.com/item?id=18675375 - Des 2018 (32 komentar)
The case of the 500-mile email (2002) - https://news.ycombinator.com/item?id=14676835 - Juli 2017 (56 komentar)
The 500-mile email (2002) - https://news.ycombinator.com/item?id=9338708 - April 2015 (139 komentar)
The case of the 500-mile email - https://news.ycombinator.com/item?id=2701063 - Juni 2011 (18 komentar)
The case of the 500-mile email - https://news.ycombinator.com/item?id=1293652 - April 2010 (24 komentar)
The case of the 500-mile email - https://news.ycombinator.com/item?id=385068 - Des 2008 (28 komentar)
The case of the 500-mile email - https://news.ycombinator.com/item?id=123489 - Feb 2008 (7 komentar)