Tutorial ini mengatur Raspberry Pi sebagai gateway internet untuk MikroTik. Raspberry Pi menerima internet melalui Wi-Fi pada wlan0, lalu membagikannya melalui port Ethernet eth0. MikroTik menerima koneksi tersebut melalui satu port ether khusus sebagai WAN, lalu membagikannya kembali kepada perangkat pada bridge LAN dan Wi-Fi MikroTik.
Dokumentasi ini juga mencakup:
- NetworkManager dalam mode
sharedpada Raspberry Pi. - DHCP, DNS forwarder, IP forwarding, dan NAT otomatis pada Raspberry Pi.
- Aturan
DOCKER-USERkarena Docker sempat memblokir trafik forwarding. - Layanan
systemdagar aturan firewall aktif kembali setelah restart. - DHCP Client pada port WAN MikroTik.
- DHCP Server dan DNS relay untuk perangkat klien.
masqueradeMikroTik pada port ether yang terhubung ke Raspberry Pi.- Pengujian bertahap dan pemecahan masalah.
flowchart TD
A["Internet"] --> B["Router atau access point Wi-Fi"]
B --> C["Raspberry Pi wlan0"]
C --> D["Raspberry Pi eth0<br/>10.10.10.10/24"]
D --> E["WAN MikroTik<br/>DHCP Client"]
E --> F["Bridge LAN MikroTik<br/>10.11.12.13/24"]
F --> G["Perangkat klien<br/>10.11.12.x/24"]
Kabel jaringan menghubungkan eth0 Raspberry Pi dengan satu port ether MikroTik. Tutorial ini memakai ether1 sebagai contoh port WAN. Ganti ether1 pada seluruh perintah jika kabel Raspberry Pi terhubung ke port lain.
| Fungsi | Antarmuka | Konfigurasi final |
|---|---|---|
| Internet Raspberry Pi | wlan0 |
IP, gateway, dan DNS dari jaringan Wi-Fi |
| Gateway transit Raspberry Pi | eth0 |
10.10.10.10/24 |
| Jaringan transit | Raspberry Pi ke MikroTik | 10.10.10.0/24 |
| WAN MikroTik | ether1 atau port ether aktual |
DHCP Client, menerima 10.10.10.x/24 |
| Gateway WAN MikroTik | Dari DHCP Raspberry Pi | 10.10.10.10 |
| DNS hulu MikroTik | Dari DHCP Raspberry Pi | 10.10.10.10 |
| Gateway LAN MikroTik | bridge |
10.11.12.13/24 |
| Jaringan klien | Bridge LAN dan Wi-Fi MikroTik | 10.11.12.0/24 |
| Pool DHCP klien | DHCP Server MikroTik | 10.11.12.100-10.11.12.250 |
| Gateway perangkat klien | DHCP Server MikroTik | 10.11.12.13 |
| DNS perangkat klien | DHCP Server MikroTik | 10.11.12.13 |
Alamat .0 berfungsi sebagai network address dan .255 sebagai broadcast pada subnet /24. Jangan berikan kedua alamat tersebut kepada perangkat.
Port ether yang terhubung ke Raspberry Pi berfungsi sebagai WAN. Jangan masukkan port tersebut ke bridge yang menggabungkan port LAN dan Wi-Fi MikroTik.
Bridge hanya memuat:
- Port Ethernet untuk perangkat LAN.
- Antarmuka Wi-Fi MikroTik, misalnya
wlan1atauwifi1. - Antarmuka lain yang memang berfungsi sebagai LAN.
Perangkat klien harus menerima:
IP : 10.11.12.x/24
Gateway : 10.11.12.13
DNS : 10.11.12.13
Perangkat klien tidak memakai 10.10.10.10 sebagai gateway. Alamat 10.10.10.10 hanya berfungsi sebagai gateway dan DNS hulu pada sisi WAN MikroTik.
Aturan NAT klien harus memakai:
out-interface=ether1
Ganti ether1 dengan port fisik yang terhubung ke Raspberry Pi. Jangan memakai bridge LAN sebagai out-interface, karena trafik internet tidak keluar melalui bridge tersebut.
Alur trafik internet berlangsung sebagai berikut:
- Klien
10.11.12.xmengirim trafik ke MikroTik10.11.12.13. - MikroTik melakukan
masqueradeketika trafik keluar melalui port ether menuju Raspberry Pi. - Raspberry Pi menerima trafik melalui
eth0pada jaringan10.10.10.0/24. - NetworkManager melakukan
masquerademenujuwlan0. - Router Wi-Fi meneruskan trafik ke internet.
Konfigurasi ini menghasilkan double NAT pada MikroTik dan Raspberry Pi. Akses internet keluar bekerja normal. Akses masuk dari internet memerlukan konfigurasi tambahan dan tidak termasuk dalam tutorial ini.
Tutorial memakai nama berikut:
| Fungsi | Nama contoh |
|---|---|
| Wi-Fi Raspberry Pi | wlan0 |
| Ethernet Raspberry Pi | eth0 |
| Profil sharing NetworkManager | LAN-Internet |
| Port MikroTik menuju Raspberry Pi | ether1 |
| Bridge LAN MikroTik | bridge |
Periksa nama aktual sebelum melakukan perubahan.
Pada Raspberry Pi:
nmcli device status
nmcli -f NAME,DEVICE,TYPE,STATE connection show --active
ip -br linkPada MikroTik:
/interface print
/interface bridge print
/interface bridge port print
Jalankan pada Raspberry Pi:
ping -I wlan0 -c 4 1.1.1.1
ping -I wlan0 -c 4 google.com
ip route get 1.1.1.1Hasil ip route get harus menunjukkan wlan0, misalnya:
1.1.1.1 via 192.168.x.1 dev wlan0
Jika Raspberry Pi tidak dapat mengakses internet melalui wlan0, selesaikan masalah Wi-Fi terlebih dahulu.
Jalankan:
ip -4 routePastikan jaringan Wi-Fi, Docker, Tailscale, VPN, atau antarmuka lain tidak memakai:
10.10.10.0/24
10.11.12.0/24
Setelah konfigurasi selesai, rute 10.10.10.0/24 dev eth0 merupakan hasil yang benar.
/export file=before-rpi-sharing
/system backup save name=before-rpi-sharing
Gunakan Winbox melalui MAC address jika perubahan alamat IP LAN berpotensi memutus sesi administrasi.
Pilih salah satu skenario berikut. Gunakan Bagian 7.1 jika profil LAN-Internet sudah tersedia. Gunakan Bagian 7.2 jika profil tersebut belum tersedia.
Kosongkan DNS, gateway, rute, dan domain pencarian lama:
sudo nmcli connection modify "LAN-Internet" \
ipv4.dns "" \
ipv4.dns-search "" \
ipv4.routes "" \
ipv4.gateway ""Langkah tersebut mencegah galat berikut saat mengaktifkan mode shared:
ipv4.dns: this property is not allowed for method=shared
Terapkan konfigurasi final:
sudo nmcli connection modify "LAN-Internet" \
connection.interface-name eth0 \
connection.autoconnect yes \
ipv4.method shared \
ipv4.addresses "10.10.10.10/24" \
ipv4.never-default yes \
ipv6.method disabledAktifkan ulang profil:
sudo nmcli connection down "LAN-Internet"
sudo nmcli connection up "LAN-Internet"Jika perintah down menyatakan bahwa profil belum aktif, langsung jalankan perintah up.
Jalankan bagian ini hanya jika profil belum tersedia:
sudo nmcli connection add \
type ethernet \
ifname eth0 \
con-name "LAN-Internet" \
connection.autoconnect yes \
ipv4.method shared \
ipv4.addresses "10.10.10.10/24" \
ipv4.never-default yes \
ipv6.method disabledAktifkan profil:
sudo nmcli connection up "LAN-Internet"Jalankan:
nmcli -f ipv4.method,ipv4.addresses,ipv4.gateway,ipv4.dns,ipv4.never-default \
connection show "LAN-Internet"
nmcli -f NAME,DEVICE,STATE connection show --active
ip -4 address show dev eth0
ip -4 route
sysctl net.ipv4.ip_forward
sudo ss -lunp | grep ':67 '
sudo ss -luntp | grep ':53 '
sudo nft list table ip nm-shared-eth0Hasil yang diharapkan:
| Pemeriksaan | Hasil |
|---|---|
| Metode IPv4 | shared |
Alamat eth0 |
10.10.10.10/24 |
Gateway profil LAN-Internet |
Kosong |
DNS profil LAN-Internet |
Kosong |
| Default route Raspberry Pi | Tetap melalui wlan0 |
| DHCP Server | dnsmasq mendengarkan UDP port 67 |
| IPv4 forwarding | net.ipv4.ip_forward = 1 |
| NAT NetworkManager | Aturan masquerade untuk 10.10.10.0/24 tersedia |
Tabel NAT NetworkManager biasanya menampilkan aturan berikut:
ip saddr 10.10.10.0/24 ip daddr != 10.10.10.0/24 masquerade
Jika aturan tersebut tersedia, jangan menambahkan aturan MASQUERADE lain secara manual pada Raspberry Pi.
Bagian ini wajib pada konfigurasi yang diuji karena Docker memblokir jalur forwarding meskipun NetworkManager sudah membuat NAT. Indikasinya terlihat ketika MikroTik dapat melakukan ping ke 10.10.10.10, tetapi tidak dapat melakukan ping ke 1.1.1.1.
systemctl is-active docker
command -v iptables
sudo iptables -L FORWARD -n -v --line-numbers
sudo iptables -L DOCKER-USER -n -v --line-numbersAturan pertama mengizinkan trafik dari MikroTik menuju internet. Aturan kedua hanya mengizinkan trafik balasan dengan status ESTABLISHED atau RELATED.
sudo iptables -C DOCKER-USER \
-i eth0 -o wlan0 \
-s 10.10.10.0/24 \
-j ACCEPT 2>/dev/null || \
sudo iptables -I DOCKER-USER 1 \
-i eth0 -o wlan0 \
-s 10.10.10.0/24 \
-j ACCEPT
sudo iptables -C DOCKER-USER \
-i wlan0 -o eth0 \
-d 10.10.10.0/24 \
-m conntrack --ctstate ESTABLISHED,RELATED \
-j ACCEPT 2>/dev/null || \
sudo iptables -I DOCKER-USER 2 \
-i wlan0 -o eth0 \
-d 10.10.10.0/24 \
-m conntrack --ctstate ESTABLISHED,RELATED \
-j ACCEPTPeriksa hasilnya:
sudo iptables -L DOCKER-USER -n -v --line-numbersContoh hasil yang benar:
num pkts bytes target in out source destination
1 6 1320 ACCEPT eth0 wlan0 10.10.10.0/24 0.0.0.0/0
2 4 224 ACCEPT wlan0 eth0 0.0.0.0/0 10.10.10.0/24 ctstate RELATED,ESTABLISHED
Nilai pkts dan bytes bertambah ketika MikroTik mengakses internet.
Aturan yang dimasukkan langsung melalui iptables tersimpan di memori. Raspberry Pi atau Docker dapat membentuk ulang rantai tersebut setelah restart. Buat layanan systemd untuk memasang aturan secara otomatis setelah Docker aktif.
Pastikan lokasi iptables:
command -v iptablesKonfigurasi berikut memakai /usr/sbin/iptables. Sesuaikan path jika hasil pemeriksaan menunjukkan lokasi lain.
Buat unit layanan:
sudo nano /etc/systemd/system/mikrotik-forward.serviceMasukkan isi berikut:
[Unit]
Description=Allow MikroTik internet forwarding through Raspberry Pi
Requires=docker.service
After=NetworkManager.service docker.service
PartOf=docker.service
[Service]
Type=oneshot
ExecStart=/bin/sh -c '/usr/sbin/iptables -C DOCKER-USER -i eth0 -o wlan0 -s 10.10.10.0/24 -j ACCEPT 2>/dev/null || /usr/sbin/iptables -I DOCKER-USER 1 -i eth0 -o wlan0 -s 10.10.10.0/24 -j ACCEPT'
ExecStart=/bin/sh -c '/usr/sbin/iptables -C DOCKER-USER -i wlan0 -o eth0 -d 10.10.10.0/24 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 2>/dev/null || /usr/sbin/iptables -I DOCKER-USER 2 -i wlan0 -o eth0 -d 10.10.10.0/24 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT'
RemainAfterExit=yes
[Install]
WantedBy=multi-user.targetAktifkan layanan:
sudo systemctl daemon-reload
sudo systemctl enable --now mikrotik-forward.servicePeriksa status dan aturan:
systemctl is-enabled mikrotik-forward.service
systemctl is-active mikrotik-forward.service
systemctl status mikrotik-forward.service --no-pager
sudo iptables -L DOCKER-USER -n -v --line-numbersHasil yang benar menunjukkan enabled, active, dan dua aturan ACCEPT.
sudo rebootSetelah Raspberry Pi aktif kembali, jalankan:
systemctl is-active NetworkManager
systemctl is-active docker
systemctl is-active mikrotik-forward.service
nmcli -f NAME,DEVICE,STATE connection show --active
ip -4 address show dev eth0
sudo iptables -L DOCKER-USER -n -v --line-numbersJika dua aturan tampil, Anda tidak perlu menjalankan perintah iptables secara manual setelah restart.
Bagian ini memakai ether1 sebagai contoh port yang terhubung ke eth0 Raspberry Pi.
/interface bridge port print where interface=ether1
Jika perintah menampilkan ether1 sebagai anggota bridge, hapus hanya entri tersebut:
/interface bridge port remove [find where interface=ether1]
Periksa kembali:
/interface bridge port print
/ip address print detail where interface=ether1
Port WAN sebaiknya hanya menerima alamat melalui DHCP Client. Jika port masih memiliki alamat statis lama, catat nomor barisnya, lalu hapus alamat tersebut setelah memastikan bahwa alamat itu tidak lagi diperlukan:
/ip address remove numbers=NOMOR_ALAMAT
Periksa DHCP Client yang sudah tersedia:
/ip dhcp-client print detail
Jika DHCP Client belum tersedia pada ether1, tambahkan:
/ip dhcp-client add \
interface=ether1 \
add-default-route=yes \
default-route-distance=1 \
use-peer-dns=yes \
disabled=no
Jika DHCP Client sudah tersedia, sesuaikan konfigurasinya:
/ip dhcp-client set [find where interface=ether1] \
add-default-route=yes \
default-route-distance=1 \
use-peer-dns=yes \
disabled=no
Perbarui lease:
/ip dhcp-client renew [find where interface=ether1]
Jika perintah renew tidak tersedia pada versi RouterOS yang digunakan, nonaktifkan lalu aktifkan kembali DHCP Client:
/ip dhcp-client disable [find where interface=ether1]
/ip dhcp-client enable [find where interface=ether1]
/ip dhcp-client print detail
/ip address print where interface=ether1
/ip route print detail where dst-address=0.0.0.0/0
/ip dns print
Hasil yang diharapkan:
| Parameter | Hasil |
|---|---|
| Status DHCP Client | bound |
| Alamat WAN MikroTik | 10.10.10.x/24 |
| Gateway | 10.10.10.10 |
| Default route | Dinamis dan aktif melalui 10.10.10.10 |
| Dynamic DNS | 10.10.10.10 |
Uji internet dari MikroTik:
/ping 10.10.10.10 count=4
/ping 1.1.1.1 count=4
/ping google.com count=4
/tool traceroute 1.1.1.1
Jika MikroTik dapat melakukan ping ke 1.1.1.1 dan google.com, sisi Raspberry Pi dan WAN MikroTik sudah bekerja.
/interface bridge print
/interface bridge port print
Contoh anggota bridge LAN:
ether2,ether3, dan port lain untuk perangkat lokal.wlan1atauwifi1untuk klien nirkabel.
Jangan tambahkan ether1 jika port tersebut terhubung ke Raspberry Pi.
Jika bridge belum tersedia, contoh konfigurasi dasarnya:
/interface bridge add name=bridge comment="Bridge LAN kabel dan Wi-Fi"
/interface bridge port add bridge=bridge interface=ether2
/interface bridge port add bridge=bridge interface=wlan1
Sesuaikan daftar port dan nama antarmuka Wi-Fi dengan perangkat MikroTik. Jangan membuat bridge kedua jika bridge LAN sudah tersedia.
Periksa alamat yang terpasang:
/ip address print detail where interface=bridge
Target akhir harus menunjukkan:
10.11.12.13/24 interface=bridge
Jika bridge belum memiliki alamat, tambahkan:
/ip address add \
address=10.11.12.13/24 \
interface=bridge \
comment="Gateway LAN"
Jika bridge memakai alamat lama, catat nomor baris dari hasil print, lalu ubah alamat tersebut:
/ip address set numbers=NOMOR_ALAMAT \
address=10.11.12.13/24 \
interface=bridge
Jalankan bagian ini hanya jika DHCP Server LAN belum tersedia:
/ip pool add \
name=pool-LAN \
ranges=10.11.12.100-10.11.12.250
/ip dhcp-server add \
name=dhcp-LAN \
interface=bridge \
address-pool=pool-LAN \
lease-time=1d \
disabled=no
/ip dhcp-server network add \
address=10.11.12.0/24 \
gateway=10.11.12.13 \
dns-server=10.11.12.13
Periksa nama pool, DHCP Server, dan network:
/ip pool print
/ip dhcp-server print detail
/ip dhcp-server network print detail
Sesuaikan pool yang sudah ada. Ganti NOMOR_POOL dengan nomor baris aktual:
/ip pool set numbers=NOMOR_POOL \
ranges=10.11.12.100-10.11.12.250
Sesuaikan network DHCP yang sudah ada. Ganti NOMOR_NETWORK dengan nomor baris aktual:
/ip dhcp-server network set numbers=NOMOR_NETWORK \
address=10.11.12.0/24 \
gateway=10.11.12.13 \
dns-server=10.11.12.13
Pastikan DHCP Server berjalan pada bridge LAN:
/ip dhcp-server set [find where name="dhcp-LAN"] \
interface=bridge \
disabled=no
Sesuaikan dhcp-LAN jika server memakai nama lain.
/ip dns set allow-remote-requests=yes
/ip dns print
MikroTik menerima 10.10.10.10 sebagai DNS dinamis dari DHCP Client. MikroTik kemudian melayani permintaan DNS perangkat klien melalui alamat LAN 10.11.12.13.
Alur DNS final:
Perangkat klien
-> DNS MikroTik 10.11.12.13
-> DNS forwarder Raspberry Pi 10.10.10.10
-> DNS hulu pada koneksi wlan0
Pastikan firewall input MikroTik tetap membatasi layanan DNS dari sisi WAN. Jangan menonaktifkan aturan firewall default tanpa pemeriksaan.
Bagian ini merupakan konfigurasi yang membuat perangkat klien akhirnya dapat mengakses internet.
/ip firewall nat print detail
Cari aturan srcnat untuk subnet LAN 10.11.12.0/24.
Jika belum tersedia, tambahkan:
/ip firewall nat add \
chain=srcnat \
src-address=10.11.12.0/24 \
out-interface=ether1 \
action=masquerade \
comment="NAT LAN melalui Raspberry Pi"
Ganti ether1 dengan port ether aktual yang terhubung langsung ke Raspberry Pi.
Konfigurasi penting:
| Parameter | Nilai yang benar |
|---|---|
chain |
srcnat |
src-address |
10.11.12.0/24 |
out-interface |
Port ether menuju Raspberry Pi, contoh ether1 |
action |
masquerade |
Jika aturan lama memakai out-interface=bridge, catat nomor barisnya dari hasil print, lalu nonaktifkan aturan tersebut:
/ip firewall nat disable numbers=NOMOR_RULE_LAMA
Jangan menonaktifkan aturan NAT lain sebelum memastikan fungsi dan targetnya.
/ip firewall nat print stats detail
Lakukan akses internet dari perangkat klien. Nilai paket dan byte pada aturan dengan komentar NAT LAN melalui Raspberry Pi harus bertambah.
Putuskan lalu sambungkan kembali Wi-Fi atau kabel agar perangkat meminta lease DHCP baru.
Perangkat harus menerima:
| Parameter | Nilai final |
|---|---|
| IP | 10.11.12.100-10.11.12.250 |
| Subnet mask | 255.255.255.0 |
| Gateway | 10.11.12.13 |
| DNS | 10.11.12.13 |
Perangkat tidak seharusnya menerima:
- Gateway
10.10.10.10. - DNS
10.10.10.10secara langsung. - Alamat dari subnet
10.10.10.0/24.
Periksa lease pada MikroTik:
/ip dhcp-server lease print detail
ping -I wlan0 -c 4 1.1.1.1
ping -I wlan0 -c 4 google.com
ip route get 1.1.1.1/ping 10.10.10.10 count=4
/ping 1.1.1.1 count=4
/ping google.com count=4
Pada Linux atau macOS:
ping -c 4 10.11.12.13
ping -c 4 10.10.10.10
ping -c 4 1.1.1.1
ping -c 4 google.com
curl -I https://example.comPada Windows:
ipconfig /all
ping 10.11.12.13
ping 10.10.10.10
ping 1.1.1.1
ping google.comBeberapa server atau sistem membatasi respons ICMP. Jika ping gagal tetapi browser dapat membuka situs HTTPS, gunakan browser atau curl untuk memastikan akses internet.
| Hasil pengujian | Kesimpulan |
|---|---|
Klien gagal ping 10.11.12.13 |
Bridge, Wi-Fi MikroTik, IP klien, atau DHCP LAN bermasalah |
Klien dapat ping gateway tetapi gagal ping 1.1.1.1 |
NAT MikroTik atau firewall forward bermasalah |
Klien dapat ping 1.1.1.1 tetapi gagal ping domain |
DNS klien atau DNS relay MikroTik bermasalah |
| MikroTik dapat internet tetapi klien tidak | Periksa masquerade pada port ether menuju Raspberry Pi |
MikroTik gagal ping 1.1.1.1 |
Periksa forwarding Raspberry Pi dan rantai DOCKER-USER |
| Semua pengujian berhasil | Sharing internet bekerja secara menyeluruh |
systemctl is-active NetworkManager
systemctl is-active docker
systemctl is-active mikrotik-forward.service
nmcli -g ipv4.method connection show "LAN-Internet"
nmcli -f NAME,DEVICE,STATE connection show --active
ip -4 address show dev eth0
ip -4 route
sysctl net.ipv4.ip_forward
sudo ss -lunp | grep ':67 '
sudo nft list table ip nm-shared-eth0
sudo iptables -L DOCKER-USER -n -v --line-numbers/interface bridge port print
/ip dhcp-client print detail
/ip route print detail where dst-address=0.0.0.0/0
/ip dns print
/ip dhcp-server network print detail
/ip dhcp-server lease print detail
/ip firewall nat print stats detail
/ping 1.1.1.1 count=4
/ping google.com count=4
Perbarui lease DHCP dengan menyambungkan ulang Wi-Fi atau kabel. Pastikan perangkat kembali menerima gateway dan DNS 10.11.12.13, lalu uji browser.
Konfigurasi berhasil jika memenuhi seluruh kondisi berikut:
- Raspberry Pi mengakses internet melalui
wlan0. - Profil
LAN-Internetaktif padaeth0dengan alamat10.10.10.10/24. dnsmasqmendengarkan UDP port67.- NetworkManager membuat NAT untuk
10.10.10.0/24. net.ipv4.ip_forwardbernilai1.- Rantai
DOCKER-USERmemuat dua aturanACCEPT. - Layanan
mikrotik-forward.serviceberstatusactivesetelah restart. - Port WAN MikroTik tidak masuk bridge LAN.
- DHCP Client MikroTik berstatus
bound. - MikroTik menerima gateway dan DNS
10.10.10.10. - MikroTik dapat melakukan ping ke alamat IP publik dan nama domain.
- Bridge LAN MikroTik memakai alamat
10.11.12.13/24. - Perangkat klien menerima gateway dan DNS
10.11.12.13. - Aturan NAT MikroTik memakai port ether menuju Raspberry Pi sebagai
out-interface. - Penghitung paket pada aturan NAT bertambah saat klien mengakses internet.
- Perangkat klien dapat membuka situs internet.
| Gejala | Penyebab yang paling mungkin | Tindakan |
|---|---|---|
DHCP Client MikroTik berstatus searching |
Profil LAN-Internet tidak aktif, kabel bermasalah, atau port WAN masih masuk bridge |
Periksa eth0, UDP 67, kabel, dan keanggotaan bridge |
MikroTik dapat ping 10.10.10.10, tetapi gagal ping 1.1.1.1 |
Docker memblokir forwarding Raspberry Pi | Periksa dan pasang dua aturan DOCKER-USER |
| Internet MikroTik berhenti setelah restart | Aturan iptables tidak aktif kembali |
Periksa mikrotik-forward.service dan log layanan |
| MikroTik dapat ping internet, tetapi klien tidak | NAT klien salah atau belum tersedia | Pasang masquerade dengan out-interface port ether menuju Raspberry Pi |
Aturan NAT MikroTik memakai out-interface=bridge |
Bridge merupakan sisi LAN, bukan jalur keluar internet | Nonaktifkan aturan lama dan gunakan port WAN fisik |
Klien menerima gateway 10.10.10.10 |
Konfigurasi DHCP Server LAN salah | Ubah gateway DHCP menjadi 10.11.12.13 |
Klien menerima DNS 10.10.10.10 |
DHCP membagikan DNS hulu secara langsung | Ubah DNS DHCP menjadi 10.11.12.13 dan aktifkan DNS relay MikroTik |
Klien dapat ping 1.1.1.1, tetapi tidak dapat membuka domain |
DNS relay atau DNS hulu bermasalah | Periksa /ip dns print dan DNS pada wlan0 |
| NAT counter tidak bertambah | Subnet atau nama port pada aturan tidak sesuai | Cocokkan 10.11.12.0/24 dan port ether aktual |
Klien memperoleh alamat 169.254.x.x |
DHCP Server MikroTik tidak menjawab | Periksa interface DHCP Server, pool, network, dan bridge |
Periksa log Raspberry Pi jika masalah muncul setelah boot:
journalctl -u mikrotik-forward.service -b --no-pager
journalctl -u NetworkManager -b --no-pager | tail -n 100
journalctl -u docker -b --no-pager | tail -n 100Periksa DNS hulu Raspberry Pi:
nmcli -f IP4.GATEWAY,IP4.DNS device show wlan0Periksa firewall MikroTik tanpa langsung menghapus aturan:
/ip firewall filter print stats detail
/ip firewall nat print stats detail
Jangan menjalankan perintah yang menghapus seluruh firewall karena tindakan tersebut dapat memutus jaringan, mengganggu Docker, dan membuka akses yang tidak diperlukan.
- Gunakan subnet privat
10.10.10.0/24dan10.11.12.0/24untuk jaringan lokal. - Jangan memakai alamat publik seperti
9.10.11.12atau11.11.11.11sebagai alamat LAN. - Jangan memasukkan port WAN menuju Raspberry Pi ke bridge LAN.
- Aturan balik pada Raspberry Pi hanya menerima koneksi berstatus
ESTABLISHEDatauRELATED. - Biarkan firewall default MikroTik melindungi sisi WAN.
- Batasi administrasi MikroTik hanya dari jaringan LAN.
- Cadangkan konfigurasi sebelum mengubah bridge, alamat IP, DHCP, NAT, atau firewall.
- Jangan menambahkan NAT manual pada Raspberry Pi jika NetworkManager sudah membuat tabel
nm-shared-eth0. - Jangan membuat beberapa aturan NAT MikroTik yang memiliki fungsi sama.
| Komponen | Konfigurasi |
|---|---|
| Sumber internet Raspberry Pi | wlan0 |
| Profil sharing Raspberry Pi | LAN-Internet |
Raspberry Pi eth0 |
10.10.10.10/24 |
| DHCP dan DNS transit | dnsmasq dari NetworkManager |
| NAT Raspberry Pi | Otomatis melalui nm-shared-eth0 |
| Izin forwarding saat Docker aktif | Dua aturan pada DOCKER-USER |
| Persistensi aturan Raspberry Pi | mikrotik-forward.service |
| WAN MikroTik | Port ether menuju Raspberry Pi, contoh ether1 |
| Konfigurasi WAN MikroTik | DHCP Client |
| Gateway dan DNS WAN MikroTik | 10.10.10.10 |
| Bridge LAN MikroTik | Tidak mencakup port WAN |
| IP gateway LAN MikroTik | 10.11.12.13/24 |
| Pool DHCP klien | 10.11.12.100-10.11.12.250 |
| Gateway klien | 10.11.12.13 |
| DNS klien | 10.11.12.13 |
| NAT klien | masquerade menuju port ether Raspberry Pi |
Perangkat klien 10.11.12.x
-> Gateway dan DNS MikroTik 10.11.12.13
-> Masquerade MikroTik melalui port ether menuju Raspberry Pi
-> Raspberry Pi eth0 10.10.10.10
-> Forwarding melalui DOCKER-USER
-> Masquerade NetworkManager menuju wlan0
-> Router Wi-Fi
-> Internet