Mengatasi User Hotspot MikroTik v7 “Nyangkut” dengan Script Auto-Kick Terbaru

Bagi Anda yang sudah melakukan migrasi infrastruktur jaringan ke MikroTik RouterOS v7, Anda pasti tahu bahwa versi ini membawa banyak perubahan arsitektur. Namun, satu masalah klasik yang tetap setia mengikuti adalah drama user Hotspot yang tidak bisa login karena eror: “simultaneous session limit reached”.

Masalah sesi ganda (duplicate login) atau akun yang “nyangkut” ini sering kali terjadi di lingkungan padat user seperti sekolah, cafe, atau kantor. Efeknya, sysadmin harus repot membuka Winbox hanya untuk melakukan kick manual pada sesi yang menggantung.

Jika di versi RouterOS v6 kita bisa dengan mudah menggunakan script modifikasi biasa, di versi v7 script tersebut akan mengalami silent crash (berhenti tanpa log error) karena adanya perubahan sintaks. Di artikel ini, saya akan membagikan script penjinak sesi ganda yang sudah diperbarui dan 100% kompatibel dengan RouterOS v7.

Kenapa Script v6 Mengalami Eror di RouterOS v7?

Sebelum kita masuk ke kode baru, sebagai sesama network admin kita perlu tahu alasannya. Di RouterOS v7, MikroTik memperketat aturan penulisan kode (syntax). Ada dua perubahan besar yang membuat script lama mogok kerja:

  • Perintah pencarian wajib menggunakan parameter where (misal: find where user=$uname).
  • Penggunaan argumen numbers= pada perintah remove sudah dihapus secara total di beberapa CLI v7. Menuliskan argumen ini akan membuat script langsung mogok di tengah jalan.

Berikut adalah source code versi 3.0 yang sudah dioptimalkan agar berjalan mulus tanpa membebani CPU router Anda:

# Hotspot script to remove duplicate users (Updated for RouterOS v7)
# Version 3.0 

:local uname $user;
:local usercount 0;
:local usertime "00:00:00";
:local kickable;

# Jika maksimal user yang boleh login adalah 1, maka masukkan maxuser 2. 
:local maxuser 2;
 
:foreach i in=[/ip hotspot active find where user=$uname] do={
    :local curup [/ip hotspot active get $i uptime];
    :if ($curup > $usertime) do={
        :set usertime $curup;
        :set kickable $i;
    }
    :set usercount ($usercount + 1);
}

:if ($usercount >= $maxuser) do={
    # Perbaikan tanda titik dua (:) pada log error v7
    :log error "Duplicate Login user found: $uname ($usercount/$maxuser - Time > $usertime) - Now kicking ... !!!";
    
    # Perbaikan syntax remove di v7 (menghapus argumen 'numbers=')
    /ip hotspot active remove $kickable;
} else={
    :log info "HOTSPOT user logged-in ID = $uname ($usercount/$maxuser)";
}

Langkah Pemasangan di Winbox MikroTik v7

Pemasangannya sama praktisnya dengan versi terdahulu. Kita akan memanfaatkan event trigger saat user berhasil melewati halaman login page:

  1. Buka Winbox Anda, lalu navigasikan ke menu IP > Hotspot > User Profiles.
  2. Pilih Profile user yang ingin dipasangi proteksi ini (misalnya profil siswa atau karyawan).
  3. Masuk ke tab Script.
  4. Tempelkan (paste) script v7 di atas ke dalam kolom On Login.

Begitu script ini aktif, setiap kali ada request login baru dengan ID yang sama, MikroTik akan langsung menghitung jumlah sesi aktif secara real-time.

Menentukan Batas `maxuser` yang Tepat

Jangan sampai salah mengisi variabel :local maxuser 2; pada bagian awal script. Logika pengecekan kode ini adalah ($usercount >= $maxuser). Artinya, sistem akan bertindak jika jumlah perangkat yang aktif sudah menyentuh batas angka tersebut.

Berikut adalah acuan konfigurasinya sesuai kebutuhan policy jaringan Anda:

  • 1 Akun untuk 1 Perangkat: Set nilai ke maxuser 2;. Sesi lama yang bermasalah akan langsung di-kick begitu perangkat baru masuk.
  • 1 Akun untuk 2 Perangkat (Multi-device Guru/Ekskutif): Set nilai ke maxuser 4;. Ini memberikan kelonggaran agar 2 gadget bisa aktif bersamaan tanpa saling tendang.

Kesimpulan

Migrasi ke RouterOS v7 memang membutuhkan sedikit adaptasi dalam hal scripting. Dengan memperbarui kode otomatisasi Hotspot Anda ke Versi 3.0 ini, manajemen resource user aktif akan berjalan mandiri tanpa perlu intervensi manual dari Anda lagi.

Semoga pembaruan script ini membantu kelancaran jaringan hotspot yang Anda kelola! Jika Anda menemukan behavior aneh pada perangkat tipe tertentu setelah menerapkan script v7 ini, mari kita bedah bersama di kolom komentar.

New-Putra-Danahita

Ditulis Oleh

putradanahita

Seorang Full Time Network Engineer, Full Time IT Infrascture, Freelance Wordpress developer dan Traveler Paruh Waktu

Leave a Reply

Your email address will not be published. Required fields are marked *