Cisco : Trunk dan Inter-VLAN Routing (Router-on-a-Stick)
VLAN memisahkan jaringan jadi beberapa "ruang" yang tidak bisa saling bicara. Enak untuk keamanan, tapi jadi masalah begitu siswa perlu mencetak ke printer guru, atau lab perlu membuka server ujian. Di sinilah trunk dan inter-VLAN routing masuk: satu kabel membawa banyak VLAN, dan satu perangkat Layer 3 memindahkan paket antar ruang itu.
Artikel ini membahas cara paling murah untuk melakukannya di lab sekolah, yaitu router-on-a-stick.
π― Tujuan
Setelah membaca dan mempraktikkan artikel ini, kamu bisa:
- Menjelaskan beda trunk port dan access port, serta kapan masing-masing dipakai.
- Memahami kenapa VLAN terpisah tidak otomatis bisa saling ping.
- Mengonfigurasi router-on-a-stick dengan subinterface di Cisco IOS dan Packet Tracer.
- Membaca bukti bahwa trunk benar-benar membawa VLAN yang dimaksud.
- Menemukan penyebab paling umum kenapa inter-VLAN routing gagal.
π Konteks nyata
Bayangkan sekolahmu punya dua lorong terpisah: lorong siswa dan lorong guru. Masing-masing punya pintu sendiri, dan tidak ada pintu penghubung. Selama semua orang cukup di lorongnya sendiri, aman.
Masalahnya, dunia nyata tidak begitu. Guru perlu mengambil file dari server di lorong siswa. Siswa perlu kirim tugas ke printer di lorong guru. Kalau tidak ada penghubung, mereka harus keluar gedung, jalan memutar, lalu masuk lewat pintu lain, dan itu tidak mungkin terjadi di jaringan.
Trunk adalah pintu layanan barang di ujung lorong: satu pintu, tapi barang dari banyak lorong lewat situ, masing-masing diberi label nomor lorong. Router-on-a-stick adalah petugas di ujung pintu itu. Ia membuka label, membaca nomor lorong tujuan, lalu mengantar paket ke lorong yang benar.
π₯ Kasus nyata: Sebuah SMK memisahkan VLAN 10 untuk lab siswa dan VLAN 20 untuk server ujian. Setelah pemisahan, internet di lab tetap lancar, tapi semua PC siswa gagal membuka aplikasi ujian. Panitia mengira server mati dan menghabiskan tiga hari memeriksa server sampai reinstal. Penyebab aslinya sepele: subinterface gateway VLAN 20 diketik `encapsulation dot1Q 2`, bukan `20`. Paket berlabel 20 datang, tidak ada subinterface yang cocok, langsung dibuang. Perintah `show vlans` di router menunjukkan hanya VLAN 10 dan VLAN 2, dan kasus selesai dalam hitungan menit.
π§ Konsep singkat
πΉ Kenapa VLAN saja tidak cukup
VLAN bekerja di Layer 2. Switch hanya mengirim frame ke port yang anggotanya VLAN sama. Ketika tujuan ada di VLAN lain, switch tidak punya wewenang meneruskan, karena itu sudah urusan Layer 3 atau routing.
Jadi ada dua hal berbeda yang harus dipisahkan di kepala:
- Membawa paket antar-VLAN di satu kabel: tugas trunk.
- Memindahkan paket dari satu subnet VLAN ke subnet VLAN lain: tugas router.
Kalau salah satu tidak ada, hasilnya selalu sama: ping antar-VLAN gagal.
πΉ Tiga cara menyambung antar-VLAN
Ada tiga pola yang dipakai industri, dan ketiganya sah. Pilih sesuai ukuran jaringan dan anggaran.
| Cara | Alat | Kelebihan | Kekurangan | Cocok untuk |
|---|---|---|---|---|
| Router-on-a-stick | router + satu link trunk | murah, router lama bisa dipakai, kebijakan terpusat di satu titik | semua trafik antar-VLAN lewat satu kabel, throughput terbelah, latency naik | lab, sekolah, kantor dengan 2 sampai 3 VLAN |
| SVI di L3 switch | switch multilayer | routing di hardware, cepat, banyak VLAN sekaligus | harga lebih tinggi, butuh `ip routing`, konfigurasi lebih panjang | gedung, kampus, lantai dengan banyak VLAN |
| Routed port | port switch multilayer dijadikan Layer 3 | link bersih tanpa tag VLAN, sangat cepat | satu port hanya untuk satu subnet, tidak cocok untuk banyak VLAN | uplink inti antar switch atau ke router |
π Angka penting: router-on-a-stick memakai satu link fisik. Trafik VLAN 10 ke VLAN 20 naik ke router lalu turun lagi lewat link yang sama, jadi satu frame melewati kabel itu dua kali. Pada link 1 Gbps, sisa throughput antar-VLAN praktis hanya sekitar separuhnya.
πΉ Apa yang terjadi pada satu link trunk
Di link trunk, frame tidak lagi polos. Switch menambahkan tag 802.1Q setebal 4 byte tepat setelah alamat MAC tujuan. Isinya antara lain:
- TPID `0x8100` sebagai penanda "ini frame bertag".
- Priority 3 bit untuk QoS.
- VID 12 bit, nomor VLAN tujuan.
Karena tag menambah 4 byte, frame maksimum naik dari 1518 menjadi 1522 byte. Ini penting saat kamu menghitung MTU, walau untuk lab sekolah hampir tidak terasa.
Satu hal yang sering terlewat: arah keluar. Kalau nomor VLAN sebuah frame sama dengan native VLAN port itu, switch mengirimnya tanpa tag. Kalau berbeda, frame dikirim bertag.
πΉ Subinterface: satu kabel jadi banyak pintu
Router biasa tidak paham tag VLAN. Solusinya: satu interface fisik dipecah jadi beberapa subinterface logis, masing-masing memegang satu VLAN.
Idenya seperti satu meja loket yang punya empat pintu berbeda ke belakang. Setiap subinterface punya IP sendiri, dan IP itulah yang jadi default gateway untuk VLAN bersangkutan.
interface gigabitEthernet 0/0
no ip address
no shutdown
interface gigabitEthernet 0/0.10
description GATEWAY-VLAN10-SISWA
encapsulation dot1Q 10
ip address 10.10.10.1 255.255.255.0
π‘ Tips: nomor di belakang subinterface (`.10`) hanyalah label lokal. Ia tidak wajib sama dengan VLAN ID. Yang menentukan VLAN adalah angka pada `encapsulation dot1Q`. Tetap disarankan disamakan supaya gampang dibaca orang lain.
πΉ Native VLAN: jalur tanpa label
Native VLAN adalah satu VLAN yang frame-nya boleh lewat tanpa tag di trunk. Bawaannya VLAN 1.
Ini warisan desain lama supaya perangkat yang tidak paham tag tetap bisa bicara. Masalahnya, jalur tanpa label ini jadi titik lemah keamanan dan sumber kebingungan saat troubleshooting.
Karena itu, di router harus ada satu subinterface bertanda `native` untuk VLAN tersebut:
interface gigabitEthernet 0/0.99
description GATEWAY-VLAN99-MANAJEMEN
encapsulation dot1Q 99 native
ip address 10.10.99.1 255.255.255.0
β οΈ Hati-hati: kalau native VLAN di switch dan di router berbeda, frame tanpa tag akan mendarat di subinterface yang salah, atau bahkan dibuang. Cisco menandainya lewat pesan `%CDP-4-NATIVE_VLAN_MISMATCH`, dan dokumentasi resmi mengingatkan risiko loop spanning-tree.
πΉ Kelemahan router-on-a-stick
Pola ini juara untuk lab dan jaringan kecil, tapi jangan dipakai untuk jaringan besar tanpa perhitungan.
- Throughput terbelah karena semua trafik antar-VLAN lewat satu kabel dua kali.
- Satu titik gagal: kabel trunk putus, semua komunikasi antar-VLAN mati, walau tiap VLAN masih hidup sendiri.
- CPU router ikut bekerja untuk setiap paket antar-VLAN, berbeda dengan L3 switch yang memakai hardware.
- Latency naik satu lompatan untuk setiap percakapan antar-VLAN.
π§ͺ Uji cepat: di jam sibuk, jalankan `show interfaces gigabitEthernet 0/0` di router dan lihat baris `5 minute input rate` serta `output rate`. Kalau angkanya mendekati kapasitas link, bottleneck-nya bukan VLAN, tapi kabel trunk itu.
π§© Istilah penting
| Istilah | Arti sederhana |
|---|---|
| Access port | Port switch yang hanya membawa satu VLAN, biasanya ke PC atau printer. |
| Trunk port | Port switch yang membawa banyak VLAN sekaligus, biasanya ke router atau switch lain. |
| 802.1Q | Standar penandaan frame VLAN di link trunk. |
| Tag | Label 4 byte yang menempel di frame, berisi nomor VLAN. |
| Native VLAN | Satu VLAN di trunk yang frame-nya lewat tanpa tag, bawaan VLAN 1. |
| Subinterface | Interface logis turunan dari satu port fisik router, satu untuk tiap VLAN. |
| SVI | Interface VLAN di switch Layer 3, jadi gateway untuk VLAN tersebut. |
| DTP | Protokol negosiasi trunk otomatis antar perangkat Cisco. |
| `encapsulation dot1Q` | Perintah di router untuk menentukan VLAN yang dilayani sebuah subinterface. |
| Default gateway | Alamat IP tujuan pertama saat PC mengirim paket ke luar subnetnya. |
| Router-on-a-stick | Pola inter-VLAN routing dengan satu link trunk ke router. |
π§ Praktik: router-on-a-stick di Packet Tracer
Kita bangun lab kecil: satu switch, satu router, dua PC. Rancangan alamatnya begini.
| Perangkat | VLAN | Alamat | Gateway |
|---|---|---|---|
| PC-SISWA | 10 SISWA | 10.10.10.10/24 | 10.10.10.1 |
| PC-GURU | 20 GURU | 10.10.20.10/24 | 10.10.20.1 |
| Router G0/0.10 | 10 | 10.10.10.1/24 | - |
| Router G0/0.20 | 20 | 10.10.20.1/24 | - |
| Router G0/0.99 | 99 MANAJEMEN (native) | 10.10.99.1/24 | - |
- Siapkan topologi: **Router 2911**, **Switch 2960-24TT**, dua **PC**. Sambungkan PC-SISWA ke Fa0/1, PC-GURU ke Fa0/11, dan router G0/0 ke switch Fa0/24.
- Di switch, buat VLAN dan pasang port access.
enable
configure terminal
hostname SW-LAB
vlan 10
name SISWA
vlan 20
name GURU
vlan 99
name MANAJEMEN
exit
interface range fastEthernet 0/1-10
switchport mode access
switchport access vlan 10
interface range fastEthernet 0/11-20
switchport mode access
switchport access vlan 20
- Ubah port ke router jadi trunk, set native VLAN, dan batasi VLAN yang boleh lewat.
interface fastEthernet 0/24
description TRUNK-KE-ROUTER
switchport mode trunk
switchport trunk native vlan 99
switchport trunk allowed vlan 10,20,99
switchport nonegotiate
end
copy running-config startup-config
- Di router, nyalakan interface fisik dulu. Tanpa langkah ini, semua subinterface ikut mati.
enable
configure terminal
hostname R-LAB
interface gigabitEthernet 0/0
description TRUNK-KE-SW-LAB
no ip address
no shutdown
exit
- Buat subinterface gateway untuk tiap VLAN. Perhatikan angka pada `encapsulation dot1Q` harus sama dengan VLAN ID.
interface gigabitEthernet 0/0.10
description GATEWAY-VLAN10-SISWA
encapsulation dot1Q 10
ip address 10.10.10.1 255.255.255.0
interface gigabitEthernet 0/0.20
description GATEWAY-VLAN20-GURU
encapsulation dot1Q 20
ip address 10.10.20.1 255.255.255.0
interface gigabitEthernet 0/0.99
description GATEWAY-VLAN99-MANAJEMEN
encapsulation dot1Q 99 native
ip address 10.10.99.1 255.255.255.0
end
copy running-config startup-config
- Atur PC. PC-SISWA: IP `10.10.10.10`, mask `255.255.255.0`, gateway `10.10.10.1`. PC-GURU: IP `10.10.20.10`, mask `255.255.255.0`, gateway `10.10.20.1`.
- Uji dari PC-SISWA: `ping 10.10.10.20` (sesama VLAN, harus berhasil tanpa router), lalu `ping 10.10.20.10` (lintas VLAN, harus berhasil lewat router).
- Uji arah balik dari PC-GURU: `ping 10.10.10.10`. Dua arah harus sama-sama berhasil.
- Simpan konfigurasi kedua perangkat, lalu matikan dan nyalakan ulang lab untuk memastikan pengaturan bertahan.
π‘ Tips: di Packet Tracer, switch 2960 hanya mendukung 802.1Q. Perintah `switchport trunk encapsulation dot1q` akan ditolak di sana. Perintah itu baru perlu di switch yang punya dua pilihan enkapsulasi, misalnya 3560.
π Angka penting: DTP pada port switch Cisco bawaannya `dynamic auto`. Port seperti ini hanya jadi trunk kalau sisi seberang meminta. Router tidak menjalankan DTP, jadi port yang dibiarkan `dynamic auto` akan tetap jadi access port dan trunk tidak pernah terbentuk.
π Dipakai di dunia kerja
- Sekolah:** VLAN siswa, guru, dan manajemen dipisah, lalu router-on-a-stick jadi gateway ketiganya. Cocok karena jumlah VLAN sedikit dan sebagian besar trafik sebenarnya menuju internet, bukan antar-VLAN.
- Kantor kecil dan menengah:** VLAN staf, tamu, dan printer. Perusahaan tidak perlu membeli switch Layer 3 baru karena router yang sudah ada bisa dipakai sebagai gateway.
- Klinik dan rumah sakit:** perangkat medis dipisah dari jaringan administrasi. Router-on-a-stick dipakai bersama ACL di subinterface supaya komputer administrasi tidak bisa membuka perangkat medis.
- Hotel dan warnet:** VLAN tamu dipisah dari VLAN perangkat operasional, sementara router menangani NAT dan pembatasan bandwidth untuk tamu.
- ISP dan managed service:** untuk perangkat pelanggan berskala kecil, pola ini mempercepat pemasangan karena tidak butuh switch mahal di lokasi pelanggan.
- Industri dan gedung:** VLAN mesin produksi dipisah dari VLAN kantor. Saat jaringan membesar, pola ini biasanya diganti SVI di L3 switch karena throughput jadi kendala.
β Verifikasi
Jangan percaya "sudah diketik" sebagai bukti. Kumpulkan bukti dari dua sisi.
- Di switch, pastikan trunk benar-benar terbentuk.
show interfaces trunk
show vlan brief
show interfaces status
Yang dicari: kolom `Mode` berisi `on`, `Encapsulation` berisi `802.1q`, `Native vlan` berisi `99`, dan daftar `Vlans allowed and active` memuat `10,20,99`.
- Di router, pastikan semua subinterface naik.
show ip interface brief
show vlans
show ip route
Yang dicari: G0/0 berstatus `up up` walau tanpa IP, ketiga subinterface `up up` dengan IP masing-masing, dan `show vlans` menampilkan VLAN 10, 20, serta 99.
- Pastikan router punya rute connected untuk tiap subnet. Tanpa tiga baris `C` di tabel routing, tidak ada yang bisa dirutekan.
- Uji tiga arah: sesama VLAN, lintas VLAN, dan ke gateway. Tiga-tiganya harus berhasil sebelum kamu menyimpulkan konfigurasi benar.
- Jalankan `tracert 10.10.20.10` dari PC-SISWA. Hasil yang benar hanya menunjukkan satu lompatan, yaitu gateway, lalu tujuan.
π§ͺ Uji cepat: `show arp` di router. Kalau tiap VLAN punya entri ARP sendiri, berarti paket dari VLAN itu benar-benar sampai ke subinterface yang tepat.
β οΈ Kesalahan umum & troubleshooting
| Gejala | Periksa dulu | Penyebab dan perbaikan |
|---|---|---|
| Semua PC tidak bisa ping gateway | `show interfaces trunk` | Port masih `dynamic auto`. Set `switchport mode trunk` lalu `switchport nonegotiate`. |
| `% Invalid input` saat `switchport trunk encapsulation dot1q` | Tipe switch | 2960 hanya mendukung 802.1Q. Lewati perintah itu, langsung `switchport mode trunk`. |
| Subinterface punya IP tapi status `down` | Status interface fisik | G0/0 belum `no shutdown`. Subinterface mengikuti fisiknya. |
| Sesama VLAN bisa, lintas VLAN tidak | Gateway di PC | Default gateway salah atau kosong. Perbaiki jadi IP subinterface VLAN masing-masing. |
| Lintas VLAN gagal, `show vlans` tidak memuat VLAN tujuan | Angka `encapsulation dot1Q` | Angka tidak cocok dengan VLAN ID. Paket bertag itu dibuang tanpa pesan error. |
| Muncul `%CDP-4-NATIVE_VLAN_MISMATCH` | Native VLAN kedua sisi | Samakan `switchport trunk native vlan` di switch dengan `native` di subinterface router. |
| Hanya satu VLAN yang tidak bisa lewat | `show interfaces trunk` daftar allowed | VLAN belum dimasukkan ke `switchport trunk allowed vlan`. |
| Muncul pesan `overlaps with` saat memberi IP | Subnet antar-subinterface | Dua subinterface memakai subnet sama. Rencanakan subnet per VLAN sejak awal. |
| SVI di L3 switch aktif tapi tidak routing | `show ip routing` | `ip routing` belum diaktifkan. Tanpa itu, switch tetap hanya bekerja di Layer 2. |
| Semua benar tapi lambat saat jam sibuk | `show interfaces` di router | Link trunk jenuh. Pertimbangkan SVI di L3 switch atau tambah kapasitas link. |
β οΈ Hati-hati: kalau `ping` dari Windows gagal padahal dari PC lain berhasil, periksa firewall Windows di PC tujuan dulu. Banyak siswa menghabiskan waktu membongkar konfigurasi router padahal ICMP-nya yang diblokir.
π Angka penting: satu tag 802.1Q berukuran 4 byte, sehingga frame maksimum di trunk menjadi 1522 byte. Perbedaan ini kecil, tapi bisa muncul sebagai keanehan pada aplikasi yang sangat sensitif terhadap MTU.
π₯ Kasus nyata: Sebuah kantor 120 karyawan memakai router-on-a-stick dengan link 1 Gbps. Setiap malam, cadangan 400 GB disalin dari VLAN keuangan ke server di VLAN server. Karena trafik melewati trunk dua kali, link itu efektif hanya membawa sekitar 500 Mbps, sehingga salinan baru selesai sekitar 1 jam 45 menit. Pada jam kerja, cetak slip gaji dan panggilan VoIP jadi tersendat karena berebut link yang sama. Solusinya bukan menambah VLAN, tapi memindahkan server ke switch Layer 3 dengan SVI, sehingga routing antar-VLAN tidak lagi memutar lewat satu kabel.
π Catatan keamanan & etika
Pemisahan VLAN bukan tembok keamanan yang selesai sendiri. Selama ada router yang merutekan antar-VLAN, semua VLAN secara default bisa saling menghubungi.
- Pasang ACL di subinterface arah masuk untuk membatasi siapa boleh ke mana. Tanpa ACL, VLAN hanya memisahkan broadcast, bukan membatasi akses.
- Jangan biarkan native VLAN sama dengan VLAN yang dipakai pengguna. Pakai VLAN khusus yang tidak dipakai port access.
- Aktifkan `switchport nonegotiate` supaya port tidak menegosiasikan trunk dengan perangkat asing.
- Matikan port yang tidak dipakai, atau pindahkan ke VLAN parkir yang tidak punya gateway.
- Batasi VLAN di trunk dengan `switchport trunk allowed vlan`, jangan biarkan semua VLAN lewat.
β οΈ Hati-hati: serangan double tagging memanfaatkan native VLAN. Penyerang mengirim frame bertag ganda sehingga tag luarnya dibuang switch, lalu tag dalamnya diteruskan ke VLAN lain. Mitigasi paling murah adalah mengganti native VLAN ke VLAN yang tidak dipakai pengguna.
Etika: semua praktik di artikel ini hanya untuk lab milik sendiri atau lab sekolah dengan izin guru. Menyalakan trunk ke port yang bukan hakmu, atau menyadap trafik orang lain, termasuk pelanggaran, bukan latihan.
π Kesimpulan
Trunk membawa banyak VLAN dalam satu kabel, dan router-on-a-stick memecah kabel itu jadi beberapa gateway lewat subinterface. Kuncinya ada tiga: angka `encapsulation dot1Q` harus sama dengan VLAN ID, interface fisik harus `no shutdown`, dan native VLAN di kedua sisi harus cocok.
Pola ini murah dan cepat dipasang, tapi throughput-nya terbelah karena trafik antar-VLAN melewati link yang sama dua kali. Untuk lab sekolah dan kantor kecil, itu harga yang wajar. Untuk jaringan besar, waktunya pindah ke SVI di switch Layer 3.
Langkah berikutnya: pelajari routing statis di Cisco, karena setelah antar-VLAN jalan, biasanya muncul kebutuhan menghubungkan lab ke jaringan lain atau ke internet.
π Materi terkait
- Cisco : Konfigurasi VLAN di Switch Cisco sebagai prasyarat, karena trunk tidak ada artinya tanpa VLAN.
- Cisco : Praktikum Uji VLAN dan Diagnosa Port Salah Anggota untuk membuktikan port benar-benar berada di VLAN yang tepat.
- Cisco : Dasar CLI Cisco IOS (Mode dan Konfigurasi Awal) kalau kamu masih bingung soal mode dan penyimpanan konfigurasi.
- Mikrotik : VLAN Dasar untuk melihat konsep yang sama dari sisi RouterOS.
- Mikrotik : Static Route Dasar sebagai pengantar konsep gateway dan rute sebelum masuk routing Cisco.
π Referensi
- Cisco, Catalyst 2960, 2960-S, 2960-C, and 2960-Plus Switches Software Configuration Guide, Cisco IOS Release 15.0(2)SE and Later - Configuring VLANs. https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst2960/software/release/15-0_2_se/configuration/guide/scg2960/swvlan.html
- Cisco Learning, Implement a Router on a Stick. https://ciscolearning.github.io/cisco-learning-codelabs/posts/ccna-router-on-a-stick/
- IEEE, 802.1Q - Bridges and Bridged Networks (standar penandaan VLAN).