Juni 6, 2025
Gambar Kecil YouTube Review Game Terbaru Modern Biru dan Putih (Konten Instagram (45)) (1)

Dalam pengelolaan jaringan hotspot berbasis MikroTik, salah satu tantangan klasik namun cukup menjengkelkan adalah MAC Address acak (Random MAC Address). Fitur ini sebenarnya ditujukan untuk meningkatkan privasi pengguna, namun bagi para admin jaringan, efeknya bisa seperti kabut asap di pagi hariβ€”bikin susah lihat siapa siapa! πŸ˜΅β€πŸ’«

Nah, artikel ini akan membahas:

  • Apa itu MAC Address acak?
  • Mengapa ini menjadi masalah di jaringan hotspot?
  • Dan tentu saja, solusi elegan menggunakan script MikroTik untuk mendeteksi dan mengunci perangkat yang nakal ini.

πŸ“Œ Apa Itu Random MAC Address?

Perangkat modern seperti Android dan iOS kini dilengkapi fitur “Use private MAC address” saat terhubung ke Wi-Fi. Setiap kali terkoneksi ke jaringan baru, MAC address yang dikirim berbeda-beda alias random.

Tujuannya? Menjaga privasi pengguna dari pelacakan.

Tapi di jaringan hotspot yang mengandalkan MAC address untuk:

  • Autentikasi pengguna,
  • Monitoring perangkat,
  • Aturan bandwidth atau firewall,

…ini justru membuat kacau manajemen jaringan. Satu siswa bisa terlihat seperti 10 perangkat berbeda. Waduh!


🚨 Masalah Akibat MAC Acak di Hotspot MikroTik

  1. IP pool cepat habis, karena satu perangkat bisa makan 5–10 IP berbeda seiring waktu.
  2. Login hotspot menjadi tidak konsisten, pengguna harus login ulang karena identitas berubah.
  3. Sistem tracking tidak akurat β€” sulit membedakan mana siswa A dan siswa B.
  4. Bypass atau abuse bandwidth, karena sistem hotspot mengira itu pengguna baru.

βœ… Solusi: Deteksi Otomatis dan Kunci Random MAC!

MikroTik menyediakan fitur scripting yang bisa kita manfaatkan. Berikut script yang akan:

  1. Mendeteksi perangkat dengan MAC Address acak.
  2. Mengubah DHCP lease-nya menjadi static.
  3. Memberikan komentar khusus sebagai tanda.
  4. Melewati proses jika perangkat itu sudah pernah diproses.

Tambahkan Script berikut pada Konfigurasi DHCP Server Script

{
   :log info "DHCP trigerred";

   :if ($leaseBound = 1) do={

      :log info "Lease Bound";

      :local Comment [/ip dhcp-server lease get [/ip dhcp-server lease find address=$leaseActIP] comment];

      :local FirstByte [:pick $leaseActMAC 1 2 ];

      :local FirstByteHex "0x$FirstByte";

      :local FirstByteNum [:tonum $FirstByteHex];

      :local StatusBytes ($FirstByteNum&0x3);

      :local MessageText "IP: $leaseActIP MAC: $leaseActMAC Name: $"lease-hostname" Server: $leaseServerName  Comment: $Comment";

      log info $MessageText;

     :if ($StatusBytes = 2) do={
        :log info "Random MAC!!!!";

        :if ([:find $Comment "RANDOM_MAC"]) do={

          :log info "Already processed. Skip.";

        } else={

          :local Lease [/ip dhcp-server lease find mac-address=$leaseActMAC];

          :local date [/system clock get date];

          :local time [/system clock get time];

          /ip dhcp-server lease make-static $Lease;

          :local Name [/ip dhcp-server lease get $Lease host-name];

          /ip dhcp-server lease set [/ip dhcp-server lease find address=$leaseActIP] comment "#RANDOM_MAC $date $time $Comment ";

          :log info "Processed.";

       }

     } else={
       :log info "Not Random MAC";
     }

    } else= {
     :log info "No Lease Bound";
   }
} 

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *