Belajar Iptables - ip6tables, ARP/ebtables & IPv6
Episode 14 of 23

Belajar Iptables - ip6tables, ARP/ebtables & IPv6

Memahami kerangka kerja IPv6 yang terpisah lewat ip6tables dan kenapa aturan IPv6 wajib dibuat sendiri, mengenal arptables dan ebtables untuk lapisan ARP dan bridge, serta alasan nftables menyatukan seluruh keluarga tool ini dalam satu framework

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Sejauh ini semua aturan kita menyentuh IPv4. Tapi IPv6 bukan lagi "masa depan" — ia sudah berjalan di jaringan modern, cloud, dan bahkan alamat loopback kalian (::1). Dan ada fakta yang sering diabaikan: iptables tidak menyentuh IPv6 sama sekali. Kalian butuh tool terpisah bernama ip6tables.

Lebih jauh lagi, keluarga tool firewall Linux tidak berhenti di situ: ada arptables untuk lapisan ARP dan ebtables untuk bridge. Episode 14 merangkai semuanya — dan menjelaskan mengapa nftables akhirnya menyatukan tiga tool ini menjadi satu.

ip6tables: Framework IPv6 yang Paralel

ip6tables adalah saudara kembar iptables untuk protokol IPv6 — tabel, chain, target, dan syntax-nya sama persis:

List chain IPv6
sudo ip6tables -L -n -v

Sintaksnya identik dengan iptables, hanya menangani alamat IPv6:

Contoh aturan IPv6
sudo ip6tables -A INPUT -s 2001:db8::/32 -p tcp --dport 22 -j ACCEPT
sudo ip6tables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Yang wajib kalian tanam: iptables dan ip6tables adalah dua ruleset terpisah. Memasang aturan di iptables tidak berpengaruh sedikit pun pada IPv6.

Kenapa Aturan IPv6 Wajib Terpisah

Inilah alasan keamanannya. Pertimbangkan skenario klasik:

Skenario berbahaya
# Kalian pikir sudah mengunci semua akses masuk:
sudo iptables -P INPUT DROP
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

Kalau mesin punya alamat IPv6 (dan kemungkinan besar iya), chain ip6tables masih kosong dengan policy default ACCEPT — artinya port 22 (atau layanan lain) bisa diakses lewat IPv6 tanpa hambatan. Firewall IPv4 yang "terkunci" membuat kalian merasa aman padahal pintu belakang terbuka.

Jangan lupa IPv6
sudo ip6tables -P INPUT DROP
sudo ip6tables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo ip6tables -A INPUT -p tcp --dport 22 -j ACCEPT

Danger

Mesin dengan IPv6 tanpa ruleset ip6tables adalah celah keamanan yang umum dan mahal. Salah satu kasus audit paling sering ditemukan: IPv4 terkunci rapat, IPv6 terbuka lebar. Setiap kali kalian menyusun aturan IPv4 di produksi, tulis aturan IPv6 yang setara — jadikan keduanya satu checklist.

IPv6 dan NAT: Biasanya Tidak Perlu

Perbedaan konseptual yang penting: dalam desain IPv6, setiap host bisa punya alamat global secara langsung — NAT bukan kebutuhan. Praktik yang disarankan adalah firewalling langsung, bukan menyembunyikan host di balik NAT. Namun iptables tetap mendukung NAT IPv6 (ip6tables -t nat) untuk kasus transisi dan korporasi yang menuntutnya.

arptables: Firewall Lapisan ARP

ARP (Address Resolution Protocol) menerjemahkan IP ke MAC di segmen LAN — dan ia adalah titik rawan: serangan ARP spoofing (menyamar sebagai gateway) beroperasi di lapisan ini. arptables memfilter paket ARP:

Blokir ARP spoofing dari MAC mencurigakan
sudo arptables -A INPUT --source-mac aa:bb:cc:dd:ee:ff -j DROP
List aturan ARP
sudo arptables -L -n

Di sebagian besar setup modern, tool ini jarang dipakai langsung — tetapi memahami keberadaannya membantu saat membaca dokumentasi lama atau audit jaringan yang menuntut kontrol lapisan-2.

ebtables: Firewall untuk Bridge

ebtables memfilter frame di bridge — jembatan jaringan layer-2 (misalnya mesin yang menggabungkan dua switch). Karena frame yang melewati bridge tidak "naik" ke lapisan IP, iptables tidak melihatnya; ebtables yang menangani:

Blokir frame dari MAC di bridge
sudo ebtables -A FORWARD -s aa:bb:cc:dd:ee:ff -j DROP
List aturan bridge
sudo ebtables -L -n

Konteks nyata: firewall bridge sering dipakai untuk appliance keamanan yang dicolok inline di jaringan — mesin tanpa alamat IP sendiri, hanya memfilter frame yang lewat.

Keluarga Tool Firewall Linux

Merangkum posisi masing-masing tool:

ToolLapisanMenangani
iptables3/4 (IPv4)Paket IPv4 (filter, NAT, mangle)
ip6tables3/4 (IPv6)Paket IPv6
arptables2Paket ARP
ebtables2Frame di bridge (802.3/Ethernet)

Empat tool, empat binary, empat ruleset terpisah. Inilah fragmentasi yang akhirnya dipecahkan nftables.

Mengapa nftables Menyatukan Semuanya

Masalahnya terasa jelas: mengelola empat tool dengan sintaks berbeda untuk satu kebijakan adalah pekerjaan yang rawan lupa (ingat kasus IPv6 di atas?). nftables — penerus netfilter — merancang ulang dari nol:

  • Satu tool (nft) untuk IPv4, IPv6, ARP, dan bridge — tanpa perlu empat binary.
  • Satu ruleset dengan address families (ip, ip6, inet, arp, bridge) di dalam satu file.
  • Satu sintaks dan satu pipeline eksekusi.
nftables: satu ruleset untuk semua family
nft add table inet firewall
nft add chain inet firewall input { type filter hook input priority 0; policy drop; }

Satu aturan inet menangani IPv4 dan IPv6 sekaligus — konsep yang mustahil di iptables. Detail lengkap perbandingan ini kita bedah di episode 19-20 dan 22.

Common Pitfalls

  • Mengunci IPv4, lupa IPv6 — celah paling umum; selalu pasang ruleset paralel.
  • Mengira iptables mengamankan IPv6 — salah; tool-nya berbeda.
  • Mengabaikan ebtables di bridge — frame layer-2 tidak terlihat iptables.
  • Lupa bahwa ip6tables-save berbeda dari iptables-save — keduanya punya file persistensi sendiri (ingat episode 8).

Penutup

Inti yang harus dibawa pulang:

  • ip6tables adalah framework paralel untuk IPv6 — ruleset-nya terpisah total dari iptables.
  • IPv6 tanpa ruleset = pintu belakang terbuka; jadikan "IPv4 + IPv6" satu checklist.
  • arptables (lapisan ARP) dan ebtables (bridge) menangani lapisan-2.
  • nftables menyatukan keempat tool ini dengan address families dalam satu sintaks.

Di episode 15 selanjutnya kita akan membahas skenario server: web, SSH & mail — merancang aturan untuk server yang benar-benar melayani trafik publik: mengizinkan 80/443 dengan rate limit port 22, menjatuhkan scan, logging, dan mengamankan mail server di port 25/587/993/465 dengan pola stateful dan relay hardening. Sampai jumpa di episode 15!

Belajar Iptables - ip6tables, ARP/ebtables & IPv6 | Belajar Iptables