Skrip satu perintah untuk menyambung ke Wi-Fi IPB-ACCESS di GNU/Linux. Skrip ini dibuat karena ICT IPB tidak melihat Linux sebagai OS umum yang biasa dipakai mahasiswa, sehingga tidak menyediakan layanan terbaik untuk connect ke wifi ipb-access melalui GNU/Linux.
Kenapa Skrip Ini Ada?
Di GNU/Linux, IPB-ACCESS terhubung dan lolos autentikasi 802.1X, tetapi tidak mendapat internet. Windows, macOS, dan Android aman.
Akar masalahnya di DHCP IPB, bukan konfigurasi pengguna. Klien Linux mengirim DHCP client-id 01:<MAC> (byte tipe 0x01 di depan MAC, RFC 4361). DHCP/NAC IPB salah menanganinya, jadi klien Linux dilempar ke scope rusak 10.2.160.0/20 yang gateway-nya mati. Windows/macOS/Android mengirim client-id tanpa prefix itu, jadi dapat scope benar 10.1.192.0/20 dan langsung jalan.
[!WARNING] Tanpa
ipv4.dhcp-client-id, profil Linux apa pun — termasuk yang dibuat manual — akan tersambung tapi tanpa internet. Skrip ini menanganinya otomatis.
Solusinya: paksa Linux mengirim DHCP client-id seperti OS lain — MAC mentah tanpa byte 01::
ipv4.dhcp-client-id = <MAC interface, tanpa prefix 01>
Setelah itu gateway, DNS, dan internet normal.
Harapan (dengan sedikit doa)
Semoga ICT IPB tidak segera memperbaiki celah ini — selama bug-nya masih ada, skrip ini punya alasan untuk hidup.
Kalau skrip ini membantumu, beri ⭐ star. Setiap bintang menambah peluang mahasiswa GNU/Linux lain menemukannya.
Riwayat bintang:
- GNU/Linux dengan NetworkManager (
nmcli) — cara memasangnya di Dependensi. - Interface Wi-Fi aktif.
- Akun
ID-IPByang valid. - Utilitas standar:
awk,od,tr,grep,ip,ping.
git clone https://github.com/IPBOS/access-connect.git
cd access-connect
chmod +x access-connect.shcurl -fsSLO https://raw.githubusercontent.com/IPBOS/access-connect/main/access-connect.sh
chmod +x access-connect.shSkrip butuh NetworkManager (nmcli) dan utilitas standar (awk, od, tr, grep, ip, ping, stty) — umumnya sudah ada di distro desktop.
Pasang NetworkManager sesuai distro (klik untuk membuka)
Debian / Ubuntu / Linux Mint / Kali
sudo apt update && sudo apt install network-managerFedora / RHEL / CentOS / Rocky / AlmaLinux
sudo dnf install NetworkManagerArch Linux / Manjaro / EndeavourOS
sudo pacman -S networkmanager
sudo systemctl enable --now NetworkManageropenSUSE Leap / Tumbleweed
sudo zypper install NetworkManagerAlpine Linux
sudo apk add networkmanagerVoid Linux
sudo xbps-install -S NetworkManagerPada distro systemd, aktifkan layanannya:
sudo systemctl enable --now NetworkManagerCek dengan nmcli device status — interface Wi-Fi harus bertipe wifi.
Jalankan skrip, lalu masukkan ID-IPB dan password:
./access-connect.shSkrip mendeteksi interface Wi-Fi, membuat profil IPB-ACCESS, lalu menyambung. Kalau gagal karena izin, pakai sudo:
sudo ./access-connect.shOpsi
| Opsi | Keterangan |
|---|---|
-n, --name NAMA |
Nama profil NetworkManager (default: IPB-ACCESS). |
--ssid SSID |
SSID target (default: IPB-ACCESS). |
--no-connect |
Hanya membuat/memperbarui profil, tanpa menyambung. |
--forget |
Menghapus profil lalu keluar. |
-h, --help |
Menampilkan bantuan. |
Contoh:
# hanya membuat profil, tidak langsung menyambung
./access-connect.sh --no-connect
# menghapus profil
./access-connect.sh --forgetFitur
- Membuat/memperbarui profil NetworkManager
IPB-ACCESS(persisten, autoconnect). - WPA-Enterprise otomatis: EAP
PEAP, Phase 2GTC. - Menerima
ID-IPBsingkat (username) atau lengkap (username@apps.ipb.ac.id). dhcp-client-id= MAC mentah tanpa prefix01:— inti perbaikannya (lihat Kenapa Skrip Ini Ada? di atas).- Verifikasi koneksi: alamat IPv4 + ping gateway.
- Mode
--forget(hapus profil) dan--no-connect.
- Cek
nmcli. - Deteksi interface Wi-Fi + ambil MAC.
- Baca
ID-IPBdan password (disembunyikan). - Buat/perbarui profil dengan konfigurasi 802.1X.
- Sambung ke
IPB-ACCESS, verifikasi IPv4 dan gateway.
-
nmcli tidak ditemukan— pasang NetworkManager, pastikannmcliada diPATH. -
tidak ada interface Wi-Fi— nyalakan/muat driver Wi-Fi (nmcli dev status). -
Gagal menyimpan profil — jalankan dengan
sudo. -
Gagal menyambung — cek ulang
ID-IPBdan password, jalankan lagi. -
Tersambung tapi tanpa internet — akar masalah DHCP client-id; skrip sudah menanganinya. Cek dengan
nmcli -f ipv4.dhcp-client-id connection show IPB-ACCESS. -
Mulai dari nol — hapus lalu buat ulang:
./access-connect.sh --forget ./access-connect.sh
Didistribusikan di bawah lisensi MIT.