Lewati ke konten
Kembali ke Blog

Cara Mengakses IP Lokal Laptop Saat Terputus dari Jaringan

Β· Β· 4 menit baca

Studi Kasus: Service berjalan di
http://192.168.0.254:1111/ di laptop sendiri, namun tidak bisa diakses saat laptop tidak terhubung ke jaringan.


Mengapa Ini Terjadi?

Ketika laptop terhubung ke jaringan (WiFi/LAN), router akan memberikan IP lokal seperti
192.168.0.254. IP ini
bersifat sementara β€” hanya aktif selama laptop terhubung ke jaringan tersebut. Saat terputus, IP tersebut hilang dari interface jaringan laptop, sehingga service yang berjalan di port
1111 tidak lagi bisa diakses via IP tersebut.


Solusi 1: Gunakan
localhost atau
127.0.0.1 (Termudah)

Cara paling sederhana dan selalu tersedia adalah mengakses service via
loopback address:

http://localhost:1111/
http://127.0.0.1:1111/

127.0.0.1 adalah alamat loopback yang
selalu aktif di semua sistem operasi, tidak peduli apakah laptop sedang online atau offline.

βœ…
Kelebihan: Tidak perlu konfigurasi apapun
❌
Kekurangan: URL berbeda dari sebelumnya


Solusi 2: Tambahkan IP Alias ke Interface Loopback

Jika ingin tetap menggunakan URL
http://192.168.0.254:1111/, tambahkan IP tersebut sebagai alias di interface loopback laptop.

Linux

Sementara (hilang setelah reboot):

sudo ip addr add 192.168.0.254/32 dev lo

Permanen (Ubuntu/Debian via Netplan):

⚠️
Catatan: Cara ini membutuhkan
systemd-networkd aktif dan khusus untuk Ubuntu Server. Untuk Ubuntu Desktop (NetworkManager), gunakan metode
systemd service di bawah.

Edit file
/etc/netplan/01-netcfg.yaml:

network:
  version: 2
  ethernets:
    lo:
      addresses:
        - 127.0.0.1/8
        - 192.168.0.254/32

Perbaiki permission file (wajib, atau netplan akan error):

sudo chmod 600 /etc/netplan/01-netcfg.yaml

Aktifkan systemd-networkd lalu terapkan:

sudo systemctl enable --now systemd-networkd
sudo netplan apply

Permanen (via
/etc/rc.local):

# Tambahkan baris ini sebelum "exit 0"
ip addr add 192.168.0.254/32 dev lo

Permanen via systemd service (Direkomendasikan βœ…):

Cara ini paling reliable, bekerja di Ubuntu Desktop maupun Server, tidak bergantung pada netplan atau NetworkManager.

Buat file service:

sudo nano /etc/systemd/system/loopback-alias.service

Isi file:

[Unit]
Description=Loopback IP Alias
After=network.target

[Service]
Type=oneshot
ExecStartPre=-/usr/bin/ip addr del 192.168.0.254/32 dev lo
ExecStart=/usr/bin/ip addr add 192.168.0.254/32 dev lo
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

πŸ’‘ Tanda
- di depan
ExecStartPre berarti
abaikan error jika IP belum terpasang.
πŸ’‘ Path
/usr/bin/ip digunakan karena di Ubuntu modern,
ip berada di
/usr/bin/, bukan
/sbin/.

Aktifkan service:

sudo systemctl daemon-reload
sudo systemctl enable --now loopback-alias.service

macOS

Sementara:

sudo ifconfig lo0 alias 192.168.0.254

Permanen (via LaunchDaemon):

Buat file
/Library/LaunchDaemons/com.local.loopback.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
  "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>com.local.loopback</string>
    <key>ProgramArguments</key>
    <array>
      <string>/sbin/ifconfig</string>
      <string>lo0</string>
      <string>alias</string>
      <string>192.168.0.254</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
  </dict>
</plist>

Aktifkan:

sudo launchctl load /Library/LaunchDaemons/com.local.loopback.plist

Windows

Sementara (Command Prompt sebagai Administrator):

netsh interface ip add address "Loopback Adapter" 192.168.0.254 255.255.255.255

Jika belum punya Loopback Adapter, install via
Device Manager β†’ Add Legacy Hardware β†’ Microsoft Loopback Adapter.

Permanen:
Tambahkan IP statis
192.168.0.254 di pengaturan adapter
Microsoft Loopback Adapter melalui:

Control Panel β†’ Network and Internet β†’ Network Connections β†’ Loopback Adapter β†’ Properties β†’ IPv4


Solusi 3: Bind Service ke
0.0.0.0

Pastikan service/aplikasi yang berjalan di port
1111 di-bind ke semua interface (
0.0.0.0) bukan hanya ke IP tertentu. Dengan begitu service tetap bisa diakses via
localhost,
127.0.0.1, maupun IP lokal manapun.

Contoh konfigurasi umum:

Node.js:

app.listen(1111, '0.0.0.0', () => {
  console.log('Server running on 0.0.0.0:1111');
});

Python (Flask):

app.run(host='0.0.0.0', port=1111)

Nginx:

server {
    listen 0.0.0.0:1111;
}

Perbandingan Solusi

Solusi Kemudahan Permanen URL Sama Kompatibilitas
Gunakan
localhost:1111
⭐⭐⭐ Sangat mudah βœ… ❌ Semua OS
systemd service
(rekomendasi)
⭐⭐ Sedang βœ… βœ… Ubuntu Desktop & Server
Netplan ⭐ Kompleks βœ… βœ… Ubuntu Server saja
Bind ke
0.0.0.0
⭐⭐ Sedang βœ… ❌ Semua OS

Rekomendasi

  • Untuk
    penggunaan sehari-hari: cukup ganti ke
    http://localhost:1111/
  • Untuk
    URL tetap sama (
    192.168.0.254:1111): gunakan IP alias di loopback
  • Untuk
    konfigurasi aplikasi yang benar: pastikan service bind ke
    0.0.0.0

Verifikasi

Setelah konfigurasi, pastikan IP alias aktif:

# Linux
ip addr show lo

# macOS
ifconfig lo0

# Windows
ipconfig /all

Test koneksi:

curl http://192.168.0.254:1111/
# atau
curl http://localhost:1111/

Troubleshooting

❌
RTNETLINK answers: File exists

IP sudah terpasang sebelumnya. Solusi: tambahkan
ExecStartPre dengan tanda
- untuk hapus IP lama sebelum menambah ulang (sudah diterapkan di konfigurasi service di atas).

❌
Permissions for /etc/netplan/... are too open

Perbaiki permission file netplan:

sudo chmod 600 /etc/netplan/01-netcfg.yaml

❌
systemd-networkd is not running

Netplan membutuhkan
systemd-networkd. Aktifkan dengan:

sudo systemctl enable --now systemd-networkd

Atau gunakan metode
systemd service yang tidak membutuhkan networkd.

❌ Path
/sbin/ip not found

Di Ubuntu modern, path binary
ip ada di
/usr/bin/ip. Cek dengan:

which ip

Ditulis berdasarkan pengalaman nyata konfigurasi di Ubuntu Desktop.

Ditulis oleh

Hendra Wijaya

Hanya hamba Allah Ta'ala yang berusaha berbuat baik..

Tinggalkan Komentar

Email tidak akan ditampilkan.