1 poin oleh GN⁺ 2025-04-11 | 1 komentar | Bagikan ke WhatsApp
  • Susam Pal membuka loop beeper netcat yang bisa diakses siapa saja di server Debian selama 24 jam, dan setiap kali ada koneksi masuk, terminal membunyikan beep 4 kali sambil mengirim respons ok
  • One-liner tersebut menerima koneksi dengan nc, lalu loop for di latar belakang mencetak karakter bell, sementara loop while luar segera menjalankan proses baru untuk menerima koneksi berikutnya
  • Pada eksperimen pertama, selama 24 jam masuk 4.761 koneksi dan total terdengar 19.044 beep; orang bisa ikut berpartisipasi dengan berbagai klien seperti browser, nc, curl, ssh, dan irssi
  • Setelah tulisan pada 10 April 2025 dibagikan ke Hacker News, dalam 14 jam tercatat 352.831 koneksi dan 1.396 alamat klien unik, membesar menjadi total 1.411.324 beep
  • Pada putaran kedua, klien teranonimkan C0276 menghasilkan 327.209 koneksi dan mendominasi sebagian besar trafik; paparan di HN membuat skala eksperimen kecil yang bersifat iseng ini meningkat drastis

Beeper terminal yang dibuat dengan netcat

  • Eksperimen ini terdiri dari loop netcat kecil yang menerima koneksi acak di server Debian
    • Saat klien tersambung, server mengirim pesan ok
    • Koneksi langsung ditutup
    • Terminal membunyikan beep 4 kali
  • Perintah yang dijalankan adalah sebagai berikut
while true; do (echo ok | nc -q 1 -vlp 8000 2>&1; echo; date -u) | tee -a beeper.log; for i in 1 2 3 4; do printf '\a'; sleep 1; done & done
  • Perintah nc mengirim ok lalu menutup koneksi, dan loop for internal mencetak karakter bell empat kali secara asinkron di shell latar belakang
  • Loop while luar dengan cepat menjalankan proses nc baru agar koneksi berikutnya bisa diterima
  • Di thread HN, dijelaskan bahwa dengan tersambung ke port 8000 memakai cara apa pun, beep akan berbunyi 4 kali
    • Contoh: browser web
    • Contoh: nc HOST 8000
    • Contoh: curl HOST:8000
    • Contoh: ssh HOST -p 8000
    • Contoh: irssi -c HOST -p 8000

Lonjakan koneksi yang membesar dua kali di HN

  • Eksperimen pertama adalah percobaan iseng sebagai respons terhadap thread HN tentang sistem notifikasi DIY yang aneh
    • Diskusi aslinya ada di thread HN
    • Selama 24 jam terjadi 4.761 koneksi
    • Setiap koneksi membunyikan 4 beep, sehingga total ada 19.044 beep terminal
    • Datanya ada di beeper.log
  • Setelah tulisan ini dibagikan ke Hacker News pada 10 April 2025, koneksi kembali melonjak tajam
    • Dalam 14 jam tercatat 352.831 koneksi
    • Jumlah alamat klien unik adalah 1.396
    • Total beep mencapai 1.411.324 kali
    • Datanya ada di beeper2.log
  • Banyak trafik pada eksperimen kedua tampaknya berasal dari loop klien persisten yang terus tersambung ke loop beeper
    • Klien teranonimkan C0276 menghasilkan koneksi terbanyak, yaitu 327.209 kali
    • C0595, yang paling aktif kedua, mencatat 6.771 koneksi
    • Ada 491 klien yang tersambung tepat satu kali
    • Jumlah koneksi per klien ada di beeperclient2.log
  • Putaran pertama menghasilkan 4.761 koneksi dari sebagian pembaca yang melihat thread komentar, tetapi putaran kedua yang naik ke halaman depan HN membesar menjadi 352.831 koneksi
  • Eksperimen ini berakhir sebagai aktivitas komputasi yang berfokus pada eksplorasi ide aneh dan keseruan saat orang lain ikut berpartisipasi, bukan pada pemecahan masalah

1 komentar

 
GN⁺ 2025-04-11
Opini Hacker News
  • Keren. Aku juga sadar ini munafik; aku menulis blog karena suka, dan bilang menjadi budak metrik analitik itu mengerikan, tetapi melihat proyek yang sudah kuhabiskan berjam-jam tiba-tiba didatangi banyak pengunjung terasa seperti umpan balik instan yang sangat menyenangkan
    Pada akhirnya, tanpa sampai memakai perangkat analitik penuh, aku tetap memasang penghitung kunjungan sederhana di situs untuk memenuhi keinginan akan pengakuan. Tidak berbunyi bip, tapi mungkin seharusnya iya

    • Sebagai bukti betapa aku sudah jatuh, barusan aku membuat skrip shell satu baris yang mengeluarkan bunyi bip saat penghitung kunjungan bereaksi
      tail -F -n 0 /var/log/visitlog | while read ; do printf '\a' ; done
      Sekarang tinggal menunggu seseorang mengunjungi situsku
    • Aku juga melakukan hal yang mirip. Karena tidak ingin merampas privasi pengguna, pada 2022 aku membuat penghitung sederhana sendiri, dan menulis di blog tentang Raspberry Pi 400 di kamar tidurku
      Barusan aku mengunduh file suara klik, dan ingin mencoba memasangnya untuk melihat apakah itu akan membuatku gila
      https://joeldare.com/private-analtyics-and-my-raspberry-pi-4...
    • Aku penasaran kenapa keinginan untuk diakui atas hasil yang sudah dikerjakan berjam-jam terasa seperti sesuatu yang buruk
    • Dulu saat aku menjalankan situs dengan halaman PHP buatan sendiri, ada penghitung kunjungan yang di balik layar memakai file teks biasa. Ternyata cukup efektif dan merupakan pengalaman yang menyenangkan
  • Komentarku yang kurang dikenal dan tenggelam di thread HN biasa ternyata dimuat di artikel \o/

    • Ini menunjukkan bahwa bahkan komentar yang tenggelam pun bisa menghasilkan ribuan tayangan. Hanya sebagian dari orang yang benar-benar membaca komentar itu yang mungkin bereaksi, tetapi ketika sebagian kecil itu sudah lebih dari 4 ribu orang, perspektifnya jadi berubah
  • Daripada membunyikan bel milik Susam, lihat saja Fish Doorbell. Kalau melihat ikan sedang menunggu untuk lewat, kamu tinggal memberi tahu
    https://visdeurbel.nl/en/

    • Fish Doorbell akan jadi contoh pemanfaatan AI yang hebat, tetapi aku ingin hidup di dunia tempat para sukarelawan menonton videonya dan membunyikan bel sendiri saat ikan ingin lewat
  • Lucu. Kelihatannya sekarang situs itu sedang sangat disayangi
    while true; do; sleep 5; curl http://susam.net:8000 ; done
    curl: (1) Received HTTP/0.9 when not allowed
    curl: (1) Received HTTP/0.9 when not allowed
    curl: (7) Failed to connect to susam.net port 8000 after 11 ms: Couldn't connect to server
    curl: (56) Recv failure: Connection reset by peer
    curl: (7) Failed to connect to susam.net port 8000 after 8 ms: Couldn't connect to server
    curl: (1) Received HTTP/0.9 when not allowed
    curl: (7) Failed to connect to susam.net port 8000 after 8 ms: Couldn't connect to server
    curl: (1) Received HTTP/0.9 when not allowed
    curl: (7) Failed to connect to susam.net port 8000 after 10 ms: Couldn't connect to server
    curl: (7) Failed to connect to susam.net port 8000 after 11 ms: Couldn't connect to server
    curl: (56) Recv failure: Connection reset by peer
    curl: (56) Recv failure: Connection reset by peer
    curl: (1) Received HTTP/0.9 when not allowed

    • Benar-benar banyak membantu situasinya ya…
    • Sebaiknya tambahkan flag --http0.9 pada curl. Dengan begitu kamu bisa memberi tahu bahwa respons yang hanya berisi "ok", yaitu badan tanpa header ala HTTP 0.9, bukanlah error
    • Lain kali coba pakai watch -n 5
  • “Pada akhirnya ini adalah eksperimen yang menyenangkan. Tidak berguna, tapi menyenangkan!”
    Eksperimen seperti ini adalah yang terbaik. Kadang dari sana lahir inovasi besar, penemuan, kemajuan medis, atau kesenangan yang lebih besar lagi

    • Ada ungkapan yang pernah kudengar dulu, “tidak berguna bukan berarti tidak bernilai,” dan itu kalimat yang sangat kusukai
    • Suatu hari niatnya cuma ingin tahu apakah ada kopi segar di ruang istirahat di ujung lorong, lalu keesokan harinya malah menemukan webcam
      https://en.m.wikipedia.org/wiki/Trojan_Room_coffee_pot
  • Ada versi yang lebih maju, dan juga lebih lama dari tahun 2000, dari ide ini, yaitu Peep (The Network Auralizer): alat untuk memantau jaringan lewat suara [1]
    Dulu aku pernah menjalankannya selama beberapa bulan, dan ruang tamuku terdengar seperti hutan. Dengan peningkatan lalu lintas saat ini, kalau menjalankan konfigurasi yang sama mungkin akan terdengar seperti gerbang neraka
    Masih bisa ditemukan di SourceForge, tetapi mungkin perlu sedikit diutak-atik, atau membutuhkan VM yang menjalankan distribusi Linux lama
    https://sourceforge.net/projects/peep/
    [1] https://www.usenix.org/legacy/publications/library/proceedin...

  • Sekitar tahun 1998, ada sebuah grup yang sedang mencari talenta teknis baru untuk startup-startup yang mereka investasikan. Sepertinya mereka memasang pengumuman di tempat seperti /., bahwa lamaran dikirim lewat SMTP di port non-standar, dan itu dipakai sebagai alat penyaring
    Aku tidak pernah mendapat balasan, tetapi pada akhirnya aku bekerja di salah satu perusahaan yang mereka danai pada tahun berikutnya

    • Pada periode yang mirip, ada juga kasus lowongan kerja disisipkan di dalam source HTML situs web. Saat itu aku tidak sedang mencari pekerjaan teknis jadi tidak melamar, tetapi menurutku itu selalu cerdas
      Para kutu buku yang tertarik pada pengembangan web tanpa henti menekan “View Source” di setiap halaman menarik. Itu adalah salah satu jalur utama penyebaran teknik frontend web awal, dan itu benar-benar hebat. Kita bisa menyalin dan menempel HTML, mengunduh .css dan sumber daya lain secara langsung, lalu menjalankan tiruan situs secara offline sambil mempelajari rahasianya. Semua sihirnya terbuka, dan jika kita mau menyingkap tirainya, masa depan terasa terbuka tanpa batas
    • Aku juga ingat ada perusahaan yang memasang lowongan lewat DNS. Sepertinya ada record TXT yang memberi tahu cara melamar yang sebenarnya
    • Aku penasaran apakah port itu didokumentasikan, atau memang harus dipindai sendiri
  • Pelajaran hari ini: respons HTTP/0.9 yang hanya memberi teks tanpa header masih berfungsi di browser modern. Keren

    • Semoga selamanya tetap begitu. Berguna untuk proyek-proyek kecil
  • Agak terkait, aku pernah membuat animasi dari trafik HN yang kudapat saat menjadi postingan nomor 1
    https://idiallo.com/blog/surviving-the-hug-of-death maaf, tidak ramah seluler
    Bot-nya sangat banyak sampai mengejutkan. Kalau nanti dapat trafik HN lagi, sepertinya seru untuk menyiapkan hal seperti ini

    • “Awalnya aku melawan secara manual dan memberi mereka data palsu. Tapi aku cepat bosan. Jadi aku mengerahkan senjata rahasia: zip bomb. Saat bot mengakses situsku, aku menyajikan file terkompresi kecil, dan server mereka dengan rajin mengunduh lalu mengekstraknya hingga meledakkan beberapa gigabyte kekacauan. Boom. Tamat.”
      Tapi aku penasaran bagaimana dia tahu bot itu akan mengekstraknya. Kalau bot, kurasa mereka hanya akan menyalin konten HTML artikel dan gambar lalu menempelkannya ke situs mereka sendiri, jadi sepertinya tidak perlu mengedit file atau mengekstrak arsip
      Animasinya mengesankan, dan jumlah bot-nya luar biasa banyak
  • Melihat http://susam.net:8000 berhenti merespons, sepertinya hari ini akan ada jauh lebih banyak bunyi bip

    • Aku mencoba sekitar 14 kali dan mendapat ok 2 kali ;)
    • Ini bukan server HTTP. Kalau mencoba dengan nc atau telnet, kamu bisa mendapat respons ok sebelum koneksinya diputus
      telnet -4 susam.net 8000