Skip to content Skip to sidebar Skip to footer

Wake-On-Lan melalui internet

Pekerjaan sehari-hari saya biasanya dimulai dengan membuka koneksi SSH ke server, menjalankan gambar docker (dengan RStudio Server atau Jupyter di dalamnya), dan menganalisis data atau pemrograman langsung di browser. Selalu nyaman seperti itu sampai saya mendapat pemutusan tiba-tiba bulan lalu. Tiba-tiba semuanya berhenti bekerja, dan saya membuang beberapa jam dengan sia-sia mencoba memperbaikinya. Ketika saya pulang, saya menyadari bahwa listrik di apartemen saya sangat tidak stabil karena ada konstruksi kecil di lantai atas. Tentu saja, solusi sederhananya adalah mendapatkan UPS (Uninterruptible Power Supply), tetapi saya terpesona dengan ide bahwa mungkin saya bisa menyalakan server saya melalui internet. Itu seperti memiliki saklar daya server dengan saya sepanjang waktu. Itu akan sangat keren, terutama ketika saya pergi untuk jangka waktu yang lama dan tidak ingin membuang-buang uang untuk tagihan listrik. Cerita ini tentang bagaimana saya melakukannya. Anda dapat melihat pengaturan jaringan akhir saya terlebih dahulu.

Langkah 1: Penuhi persyaratan perangkat keras

Pada sebagian besar motherboard, ada fungsi yang disebut “Wake-on-Lan” (WOL). WOL bekerja dengan mengirimkan paket data yang disebut Magic Packet™ ke mesin target. Ketika paket diterima, antarmuka jaringan mesin target membangunkan seluruh komputer. Namun, saya menyadari bahwa saya tidak dapat membangunkan server saya melalui antarmuka nirkabel (saya menggunakan adaptor nirkabel USB). Ternyata, Magic Packet harus dikirim ke port Ethernet bawaan motherboard karena itu adalah satu-satunya hal yang terjaga ketika seluruh mesin mati. Saya memperbaiki situasi tersebut dengan menggunakan Wifi Repeater, dan menghubungkannya ke server melalui kabel Ethernet. Anda dapat melewati langkah ini jika mesin Anda menggunakan koneksi kabel.

Langkah 2: Buat Wake-On-Lan bekerja di Lan.

Seperti namanya, WOL dirancang untuk membangunkan mesin melalui jaringan lokal. Jadi, Anda harus berada di jaringan yang sama dengan perangkat target Anda agar dapat bekerja. Pada langkah ini, kita akan mencoba melakukan hal itu. Pertama, Anda harus mengaktifkan fitur WOL pada motherboard Anda. Masuk ke pengaturan BIOS dan cari “Wake up on PCI event” atau “Wake up on LAN” dan aktifkan. Kedua, di Ubuntu, Anda harus mengetahui antarmuka default Anda, periksa apakah mendukung WOL, dan aktifkan fitur tersebut. Seluruh proses dapat dilakukan sebagai berikut :

$ route #Dapatkan nama antarmuka default, misalnya: eth0

$ sudo ethtool eth0 #Cari baris "Supports Wake-on: g," yang berarti WOL didukung

$ sudo ethtool -s eth0 wol g #Aktifkan WOL

Untuk membuat pengaturan tersebut tetap berlaku setelah reboot, Anda perlu menambahkan perintah terakhir di atas ke konfigurasi antarmuka dalam etc/network/interfaces. Anda dapat membaca lebih lanjut di sini.

Sekarang, mari kita uji coba. Anda dapat menggunakan aplikasi seluler bernama "Wake-on-LAN" di Android (ada aplikasi serupa untuk iOS, tetapi saya belum mengujinya). Aplikasi ini dapat secara otomatis memindai jaringan lokal Anda dan mencantumkan semua perangkat yang terhubung. Anda tinggal mencari mesin Anda, menambahkannya, dan kemudian Anda dapat mengirimkan paket sihir ke mesin tersebut kapan pun Anda inginkan. Coba matikan mesin target Anda dan hidupkan kembali dengan ponsel Anda.

Anda juga dapat menambahkan perangkat secara manual jika Anda mengetahui alamat MAC dan alamat siaran (broadcast address) perangkat tersebut. Pada kasus saya, mereka adalah 9E:65:F9:0E:29:FB dan 192.168.0.255. Anda dapat menggunakan perintah ifconfig untuk menemukan informasi tersebut. Perhatikan bahwa Anda akan memerlukan alamat MAC Anda untuk menghidupkan mesin Anda melalui internet.

Langkah 3: Membuat Wake-On-LAN berfungsi melalui internet.

Perhatikan bahwa router Anda harus memiliki alamat IP statis (misalnya, 82.164.3.27) untuk menyelesaikan langkah ini. Ada banyak solusi untuk mengirimkan paket sihir melalui internet. Saya telah menyebutkan beberapa dari yang paling mudah hingga yang paling sulit (kadang-kadang satu-satunya solusi):

  1. Solusi pertama: Jika router Anda mendukung magic packet (Port 7 atau 9 UDP), Anda beruntung. Anda hanya perlu meneruskan paket dari port 7 atau 9 UDP ke perangkat target Anda. Beberapa router bahkan memungkinkan forwarding broadcast packet. Anda dapat menggunakan situs web ini untuk menghidupkan server Anda. Namun, sejauh yang saya tahu, sebagian besar router komersial populer tidak mendukung ini (pada kasus saya). Ingatlah untuk membuat reservasi DHCP untuk server Anda sehingga alamat IP-nya tidak akan berubah setelah terputus koneksi.
  2. Solusi kedua: Anda dapat memeriksa apakah Anda dapat menginstal firmware yang lebih baik untuk router Anda. Untuk tujuan pemasaran, banyak produsen router menyembunyikan fungsionalitas pada produk mereka. Anda dapat menginstal firmware pihak ketiga untuk membuka semuanya. Saya sangat merekomendasikan OpenWrt. Periksa apakah router Anda didukung oleh OpenWrt di sini.
  3. Solusi ketiga: Jika router Anda tidak terlalu baik, Anda akan memerlukan bantuan dari perangkat "insider". Ini adalah perangkat yang selalu aktif dan terhubung ke jaringan lokal Anda. Kemudian, Anda dapat SSH ke "insider" Anda melalui internet dan biarkan "insider" mengirimkan paket sihir untuk Anda. Pada kasus saya, saya menggunakan Raspberry Pi 3 yang murah (yang sudah saya gunakan untuk mengontrol hal lain). Saya menggunakan OpenWrt di dalamnya dan menjalankan perintah etherwake sebagai berikut:
            $ etherwake 9E:65:F9:0E:29:FB eth0

Argumen pertama adalah alamat MAC mesin target, sedangkan argumen kedua adalah antarmuka jaringan "insider" yang akan mengirimkan paket. Ini seharusnya menjadi antarmuka default. Anda dapat memeriksa tautan ini untuk lebih detailnya. Ingatlah bahwa "insider" Anda dapat menjadi perangkat apa saja yang menjalankan sistem operasi apa saja. Selama Anda dapat SSH ke sana melalui internet, seharusnya berfungsi. Ingatlah untuk mengonfigurasi pengalihan port untuk port SSH "insider," sehingga Anda dapat SSH ke sana dari mana saja.

Jadi, itulah itu. Saya harap Anda menikmati cerita ini. Tinggalkan komentar jika Anda mengalami kesulitan dalam mengikuti panduan ini.

Post a Comment for "Wake-On-Lan melalui internet"