Sejak memasang "dark" theme, saya cenderung menjadi malas menulis. Untuk sementara, dark theme saya disable dulu yaa. Terima kasih (^_^) (bandithijo, 2024/09/15) ●
Latar Belakang
Setelah pada catatan sebelumnya, saya menulis tentang Mudah Mengkonfigurasi Wi-Fi dengan wpa_supplicant.
Catatan kali ini, saya akan menulis calon penerus dari wpa_supplicant, yaitu iwd.
Sekilas Tentang iwd
iwd adalah kependekan dari iNet wireless daemon, adalah wireless daemon tool untuk Linux yang dikembangkan oleh Intel.
Tujuan inti dari proyek ini adalah untuk mengoptimalkan pemanfaatan sumber daya agar tidak tergantung dengan banyak external library dan hanya memanfaatkan fitur yang disediakan oleh Kernel Linux semaksimal mungkin.
Seperti halnya wpa_supplicant, iwd pun dapat digunakan secara standalone maupun dikombinasikan dengan comprehensive network manager seperti ConnMan, NetworkManager, dan systemd-networkd.
Instalasi
Pasang iwd sangat mudah di Arch Linux.
$ sudo pacman -S iwd
Untuk Artix Linux,
$ sudo pacman -S iwd iwd-openrc
Pada iwd package ini kita juga akan mendapatkan:
iwctl
, shell interfaceiwd
, daemoniwmon
, Wi-Fi monitoring tool
Cara Penggunaan
Cara penggunaan yang akan saya catat adalah cara yang saya pergunakan. Pasti akan banyak sekali cara dalam menggunakan iwd. Jadi jangan kaku. Kita harus fleksibel agar tidak patah. 😄
iwctl Shell
2020 ini, Arch merubah tools untuk terhubung ke jaringan Wi-Fi yang sebelumnya menggunakan wifi-menu, sekarang sudah diganti dengan menggunakan iwd – iwd adalah replacement untuk wpa_supplicant.
Pada menu startup archiso pertama kali, teman-teman akan disuguhkan tampilan sepertin ini.
Arch Linux 5.9.11-arch2-1 (tty1) archiso login: root (automatic lgin) To install Arch Linux follow the installation guide: https://wiki.archlinux.org/index.php/Installation_guide For Wi-Fi, authenticate to the wireless network using the iwctl utility. Ethernet and Wi-Fi connections using DHCP should work automatically. After connecting to the internet, the installation guide can be accessed via the convenience script Installation_guide. root@archiso ~ # _
Teman-teman dapat melihat, terdapat informasi yang memberikan kita petunjuk untuk authenticate Wi-Fi, kita diminta untuk menggunakan iwctl
– iwctl adalah interface dari iwd.
$ iwctl
Kita akan dibawa masuk ke dalam iwd shell yang berpenampilan seperti di bawah ini.
[iwd]# _
Artinya kita sudah berada di dalam iwd shell.
iwctl Help
Jangan panik dan mundur, karena tidak ada petunjuk apa-apa, kamu dapat memasukkan perintah help
untk mendapatkan petuah yang berguna.
[iwd]# help
iwctl version 1.10
--------------------------------------------------------------------------------
Usage
--------------------------------------------------------------------------------
iwctl [--options] [commands]
Available options
--------------------------------------------------------------------------------
Options Description
--------------------------------------------------------------------------------
--username Provide username
--password Provide password
--passphrase Provide passphrase
--dont-ask Don't ask for missing
credentials
--help Display help
Available commands
--------------------------------------------------------------------------------
Commands Description
--------------------------------------------------------------------------------
Adapters:
adapter list List adapters
adapter <phy> show Show adapter info
adapter <phy> set-property <name> <value> Set property
Ad-Hoc:
ad-hoc list List devices in Ad-hoc mode
ad-hoc <wlan> start <"network name"> <passphrase> Start or join an existing
Ad-Hoc network called
"network name" with a
passphrase
ad-hoc <wlan> start_open <"network name"> Start or join an existing
open Ad-Hoc network called
"network name"
ad-hoc <wlan> stop Leave an Ad-Hoc network
Access Point:
ap list List devices in AP mode
ap <wlan> start <"network name"> <passphrase> Start an access point
called "network name" with
a passphrase
ap <wlan> stop Stop a started access
point
Devices:
device list List devices
device <wlan> show Show device info
device <wlan> set-property <name> <value> Set property
Known Networks:
known-networks list List known networks
known-networks <"network name"> forget Forget known network
known-networks <"network name"> show Show known network
known-networks <"network name"> set-property <name> <value>Set property
WiFi Simple Configuration:
wsc list List WSC-capable devices
wsc <wlan> push-button PushButton mode
wsc <wlan> start-user-pin <8 digit PIN> PIN mode
wsc <wlan> start-pin PIN mode with generated
8 digit PIN
wsc <wlan> cancel Aborts WSC operations
Station:
station list List devices in Station mode
station <wlan> connect <"network name"> [security]Connect to network
station <wlan> connect-hidden <"network name"> Connect to hidden network
station <wlan> disconnect Disconnect
station <wlan> get-networks [rssi-dbms/rssi-bars] Get networks
station <wlan> get-hidden-access-points [rssi-dbms]Get hidden APs
station <wlan> scan Scan for networks
station <wlan> show Show station info
Miscellaneous:
version Display version
quit Quit program
iwctl Device List
Kita perlu mengetahui nama interface yang tersedia di sistem kita. Dengan kata lain adalah wireless interface yang tersedia.
[iwd]# device list
Devices
--------------------------------------------------------------------------------
Name Address Powered Adapter Mode
--------------------------------------------------------------------------------
wlan0 08:11:96:00:00:00 on phy0 station
wlan0, adalah name wireless interface yang tersedia di sistem saya. Kita juga dapat informasi berupa address, powered status, adapter name, dan mode.
Namun, yang akan kita ingat menjadi perhatian adalah nama dari interface, yaitu wlan0. Karena akan banyak kita gunakan di dalam command-command selanjutnya.
Teman-teman juga dapat melihat keterangan tentang wireless interface tersebut lebih detail dengan menggunakan perintah,
[iwd]# device wlan0 show
Device: wlan0 *
--------------------------------------------------------------------------------
Settable Property Value
--------------------------------------------------------------------------------
Name wlan0
* Mode station
* Powered on
Address 08:11:96:00:00:00
Adapter phy0
iwctl Station Scan
Sekarang, kita masuk ke blok Station.
Kita perlu terlebih dahulu melakukan scanning untuk mencari SSID yang tersedia.
[iwd]# station wlan0 scan
Jangan bingung, karena memang tidak akan keluar apa-apa.
Namun, kalau teman-teman menjalankan option show
, terlebih dahulu sebelum scan
.
[iwd]# station wlan0 show
Station: wlan0
--------------------------------------------------------------------------------
Settable Property Value
--------------------------------------------------------------------------------
Scanning no
State disconnected
Saat, menjalankan scan
, value dari Scanning yang berisi no akan teganti menjadi yes.
Lalu setelah proses scanning selesai, akan berubah kembali menjadi no.
Untuk melihat hasil scan, kita gunakan option get-networks.
iwctl Station Get Networks
Setelah kita melakukan scanning, saatnya melihat hasilnya dengan menggunakan perintah,
[iwd]# station wlan0 get-networks
Available networks *
--------------------------------------------------------------------------------
Network name Security Signal
--------------------------------------------------------------------------------
bandithijo psk ***
KIKEL psk ****
Yumi2268 psk *
SIHOMBING psk *
MDR001 psk *
Hertop psk *
SURYA psk *
SALSHA psk *
Temukan Network name atau SSID yang teman-teman miliki.
Kalau sudah, kita akan gunakan option connect untuk terhubung.
iwctl Station Connect
[iwd]# station wlan0 connect bandithijo
Kemudian, kalian akan diminta untuk memasukkan passphrase.
station wlan0 connect bandithijo
Type the network passphrase for bandithijo psk.
Passphrase: **************
Masukkan password dari SSID. Password akan disensor dengan tanda bintang *.
Untuk melihat apakah kita sudah terkoneksi atau belum, gunakna option show.
[iwd]# station wlan0 show
Station: wlan0
--------------------------------------------------------------------------------
Settable Property Value
--------------------------------------------------------------------------------
Scanning no
State connected
Connected network bandithijo
Kalau State nya sudah bernilai connected, artinya kita sudah berhasil terhubung dengan network.
Untuk keluar dari iwctl, bisa ketik exit
.
[iwd]# exit
Lakukan pengujian.
Lihat network interface list, apakah wireless interface yang kita gunakan sudah mendapatkan IP address atau belum.
$ ip a s wlan0
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 08:11:96:00:00:00 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.7/24 brd 192.168.1.255 scope global dynamic noprefixroute wlan0
valid_lft 86050sec preferred_lft 75250sec
inet6 fe80::9373:975b:0000:0000/64 scope link
valid_lft forever preferred_lft forever
Nah, dapat dilihat, saya sudah mendapatkan IP address.
Saya menggunakan dhcpcd service.
Sekarang coba tes koneksi internet dengan ping.
$ ping archlinux.org
PING archlinux.org (95.217.163.246) 56(84) bytes of data.
64 bytes from archlinux.org (95.217.163.246): icmp_seq=1 ttl=52 time=226 ms
64 bytes from archlinux.org (95.217.163.246): icmp_seq=2 ttl=52 time=215 ms
64 bytes from archlinux.org (95.217.163.246): icmp_seq=3 ttl=52 time=246 ms
--- archlinux.org ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 215.292/228.954/245.752/12.631 ms
Mantap! Kita telah berhasil terhubung ke internet.
iwctl Station Disconnect
[iwd]# station wlan0 disconnect
Lokasi File Config
General (Main) File Config
Berlokasi di /etc/iwd/main.conf.
Kalau tidak ada teman-teman bisa buat sendiri –saya juga buat sendiri.
Apabila kita mendefinisikan option di dalam file config ini, terntu akan berdampak general.
Misal,
Enable Built-in DHCP
Saya ingin semua file konfigurasi network SSID yang tersimpan, menggunakan buil-it DHCP client bawaan dari iwd.
Saya tidak perlu, mengeset satu-persatu di setiap file config network yang tersimpan di /var/lib/iwd/<nama_network>.psk
. Tapi cukup pada file main.conf saja.
1
2
[General]
EnableNetworkConfiguration=true
File Config Network Spesifik
Berbeda dengan wpa_supplicant yang menyimpan file configurasi pada direktori /etc/wpa_supplicant/, sehingga dapat diakses oleh semua user. iwd menyimpan file configurasi atau stored data file pada direktori /var/lib/iwd/. Sehingga hanya root yang dapat mengakses direktori ini.
/var/lib/iwd/
├── bandithijo.psk
├── OF-LT2.psk
└── hotspot
1 directory, 1 file
Isi dari file .psk
(presharedkey) tersebut adalah credential dari SSID yang merupakan nama file.
Konfigurasi Auto Connect ke Network Tertentu
Tambahkan saja option AutoConnect=true
pada group [Settings]
, di dalam file config dari network yang kita inginkan.
Misal,
1
2
3
4
5
6
[Security]
PreSharedKey=de91478f405cc6685267c972844591e1adfde34e5e74c525c44b0b5e3e16a968
Passphrase=iniadalahpassword
[Settings]
AutoConnect=true
Atau, kalau ingin lebih general, tambahkan pada file /etc/iwd/main.conf.
Konfigurasi Lanjut
Untuk konfigurasi lebih lanjut, atau cara-cara lain dalam mengkonfigurasi iwd, teman-teman dapat melihat pada Arch Wiki.
Pesan Penulis
Sepertinya, segini dulu yang dapat saya tuliskan.
Mudah-mudahan dapat bermanfaat.
Terima kasih.
(^_^)
Terima Kasih
- Herman Thaw
- Suka Isnaini
Referensi
-
wiki.archlinux.org/index.php/Iwd
Diakses tanggal: 2021/01/01 -
iwd.wiki.kernel.org/gettingstarted
Diakses tanggal: 2021/01/01 -
jlk.fjfi.cvut.cz/arch/manpages/man/iwd.config.5
Diakses tanggal: 2021/01/01
Lisensi
Atribusi-NonKomersial-BerbagiSerupa 4.0 Internasional (CC BY-NC-SA 4.0)
Penulis
My journey kicks off from reading textbooks as a former Medical Student to digging bugs as a Software Engineer – a delightful rollercoaster of career twists. Embracing failure with the grace of a Cat avoiding water, I've seamlessly transitioned from Stethoscope to Keyboard. Armed with ability for learning and adapting faster than a Heart Beat, I'm on a mission to turn Code into a Product.
- Rizqi Nur Assyaufi