IWD (iNet Wireless Daemon)

IWD adalah daemon WiFi modern untuk Linux, dirancang sebagai pengganti wpa_supplicant.

Instalasi

sudo xbps-install -S iwd
ln -s /etc/sv/dbus /var/service/
ln -s /etc/sv/iwd  /var/service/

Penggunaan (iwctl)

iwctl adalah client command-line untuk mengelola koneksi WiFi.

iwctl          # Masuk ke sesi interaktif
iwctl help     # Tampilkan daftar perintah

Secara default, hanya root dan anggota grup wheel yang dapat menjalankan iwctl.

Contoh Penggunaan Cepat

# Lihat daftar perangkat WiFi
iwctl device list

# Scan jaringan
iwctl station wlan0 scan

# Lihat hasil scan
iwctl station wlan0 get-networks

# Hubungkan ke jaringan
iwctl station wlan0 connect <SSID>

Konfigurasi

Konfigurasi Daemon

File konfigurasi utama: /etc/iwd/main.conf

Jika belum ada, buat file tersebut:

sudo mkdir -p /etc/iwd
sudo nano /etc/iwd/main.conf

Konfigurasi Jaringan

IWD menyimpan informasi jaringan di /var/lib/iwd/. Format nama file:

<SSID>.open    # Jaringan terbuka
<SSID>.psk     # WPA2/PSK
<SSID>.8021x   # WPA Enterprise

Contoh konfigurasi jaringan WPA2/PSK — buat file /var/lib/iwd/<ssid>.psk:

[Security]
Passphrase=password_wifi_kamu

Troubleshooting

Konflik dengan udevd (Penamaan Interface)

IWD secara default membuat dan menghapus interface wireless (contoh: wlan0), yang bisa bentrok dengan udevd saat mencoba mengganti namanya.

Gejala — muncul pesan error seperti:

udevd: Error changing net interface name wlan0 to wlp59s0: Device or resource busy

Solusi 1 (disarankan) — Cegah IWD memanipulasi interface. Tambahkan ke /etc/iwd/main.conf:

[General]
UseDefaultInterface=true

Solusi 2 — Nonaktifkan penamaan persistent dari udevd (berlaku untuk semua perangkat jaringan):

# Opsi A: tambahkan ke kernel cmdline di /etc/default/grub
net.ifnames=0

# Opsi B: masking rule udevd
sudo ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules

@T4n-Labs · @Gh0sT4n