Interface & VLAN¶
Jenis interface¶
| Interface | Isinya | Nama logis |
|---|---|---|
ethN |
Port dataplane yang diserahkan ke VPP saat instalasi (Dataplane) | eth1.0, eth1.100 |
lo0 |
Loopback | lo0.0, lo0.1 |
irb |
Gateway L3 untuk VLAN yang di-switch antar-port | irb.20, irb.30 |
Semua alamat IP berada di bawah unit, dikelompokkan per keluarga protokol:
set interfaces <interface> unit <n> family inet address <IPv4/prefix>
set interfaces <interface> unit <n> family inet6 address <IPv6/prefix>
Nama logis interface.unit (misalnya eth1.0) dipakai di show interfaces, NAT, dan monitor. Port yang belum dikonfigurasi tetap down.
Alamat IP di port (unit 0)¶
unit 0 tanpa vlan-id adalah port itu sendiri, dengan frame tanpa tag:
admin@r1# set interfaces eth1 description "link ke R2"
admin@r1# set interfaces eth1 unit 0 family inet address 10.0.12.1/30
admin@r1# set interfaces eth1 unit 0 family inet6 address 2001:db8:12::1/64
admin@r1# commit
- Bisa lebih dari satu alamat per keluarga.
- Alamat harus memakai prefix (
/30,/64), danfamily inethanya menerima IPv4 (begitu jugainet6hanya IPv6). - Satu alamat tidak boleh dipakai di dua interface.
VLAN ber-tag di satu port (unit + vlan-id)¶
Untuk membawa beberapa subnet di satu link (ke switch, ISP, atau router lain), buat unit dengan vlan-id:
admin@r1# set interfaces eth1 unit 100 vlan-id 100
admin@r1# set interfaces eth1 unit 100 description "VLAN pelanggan A"
admin@r1# set interfaces eth1 unit 100 family inet address 10.100.0.1/30
admin@r1# commit
admin@r1# run show interfaces
Interface Admin/Link MTU Addresses Description
------------------------------------------------------------------------------
eth1 up/up 1500 link ke R2
eth1.0 up/up 10.0.12.1/30 link ke R2
eth1.100 up/up 1500 10.100.0.1/30 VLAN pelanggan A
Baris port (eth1) menunjukkan MTU dan status fisik; baris unit (eth1.0, eth1.100) menunjukkan alamatnya. Unit tanpa tag (eth1.0) memakai MTU port, jadi kolom MTU-nya kosong.
- VLAN ID 1–4094. Nomor unit bebas (0–16384) dan tidak harus sama dengan VLAN ID, tetapi menyamakannya membuat konfigurasi mudah dibaca.
- Hanya
unit 0yang boleh tanpavlan-id; frame tanpa tag dan frame ber-tag bisa berbagi satu port. - Satu VLAN ID hanya untuk satu unit di port yang sama.
vlan-taggingdi port tidak wajib, karena sudah tersirat darivlan-id. Kalau ditulis, setiap unit di port itu wajib punyavlan-id.
Di belakang layar, router membuat sub-interface VPP (dot1q N exact-match) dan mencerminkannya ke Linux sebagai eth1.100. Port induk otomatis dijadikan promiscuous, karena NIC virtio (misalnya di Proxmox) membuang frame ber-tag tanpa mode itu.
VLAN di beberapa port (switching) + irb¶
Kalau beberapa port router harus berada dalam satu jaringan, layaknya switch, buat VLAN lalu daftarkan port-portnya sebagai anggota. Alamat gateway-nya diletakkan di irb.
admin@r1# set vlans srv vlan-id 20
admin@r1# set vlans srv description "server"
admin@r1# set vlans srv l3-interface irb.20
admin@r1# set interfaces irb unit 20 family inet address 10.20.0.1/24
srv hanya label (nama VLAN) yang bebas dipilih. Nomor VLAN-nya ada di vlan-id.
admin@r1# set interfaces eth3 unit 0 family ethernet-switching interface-mode access
admin@r1# set interfaces eth3 unit 0 family ethernet-switching vlan members srv
Untuk perangkat yang tidak mengenal VLAN, seperti server, PC, atau AP sederhana. Satu port access hanya untuk satu VLAN. Kalau interface-mode tidak ditulis, defaultnya access.
admin@r1# set interfaces eth4 unit 0 family ethernet-switching interface-mode trunk
admin@r1# set interfaces eth4 unit 0 family ethernet-switching vlan members srv
admin@r1# set interfaces eth4 unit 0 family ethernet-switching vlan members tamu
Untuk ke switch atau hypervisor yang membawa banyak VLAN dalam satu kabel. Frame masuk dengan tag sesuai vlan-id setiap VLAN.
admin@r1# commit
admin@r1# run show vlans
Name VLAN L3 interface Access ports Trunk ports
------------------------------------------------------------------------
srv 20 irb.20 eth3 eth4
tamu 30 irb.30 - eth4
Details per VLAN: show vpp bridge-domain <vlan-id> detail
admin@r1# run show interfaces
Interface Admin/Link MTU Addresses Description
------------------------------------------------------------------------------
eth3 up/up 1500 switch access: srv
eth4 up/up 1500 switch trunk: srv, tamu
irb.20 up/up 1500 10.20.0.1/24 server
irb.30 up/up 1500 10.30.0.1/24
Aturan:
- Port anggota (
ethernet-switching) hanya memakaiunit 0, tanpa unit lain dan tanpa alamat. Alamatnya diletakkan diirb. vlan-idtidak boleh dipakai dua VLAN.- Setiap
irbunit harus menjadil3-interfacesatu VLAN, dan satu irb hanya untuk satu VLAN. - Nomor unit irb bebas. Menyamakannya dengan VLAN ID (
irb.20untuk VLAN 20) membuat konfigurasi mudah dibaca. - MTU irb defaultnya MTU terkecil port anggota, dan bisa diatur sendiri (lihat MTU).
Di VPP, setiap VLAN menjadi bridge domain (ID = VLAN ID), port trunk menjadi sub-interface yang tag-nya dilepas saat masuk bridge, dan irb menjadi BVI di bridge domain itu yang dicerminkan ke Linux sebagai irb.N.
Unit atau VLAN + irb?¶
| Kebutuhan | Pakai |
|---|---|
| Satu link membawa beberapa subnet ke satu perangkat (uplink ISP ber-VLAN, router-on-a-stick) | unit + vlan-id |
| Beberapa port router di jaringan yang sama (seperti switch) | vlans + port anggota + irb |
| Satu VLAN di trunk dan port access sekaligus | vlans + irb |
MTU¶
MTU diatur di dua tingkat (68–9000):
admin@r1# set interfaces eth1 mtu 9000 # port (default 1500)
admin@r1# set interfaces eth1 unit 100 mtu 1500 # unit ber-tag, maksimal MTU port
admin@r1# set interfaces irb unit 20 mtu 1400 # gateway VLAN, maksimal MTU port anggota terkecil
admin@r1# commit
| Interface | Kalau mtu tidak diatur |
Batas |
|---|---|---|
Port ethN |
1500 | 9000 |
Unit tanpa tag (unit 0) |
Sama dengan port; tidak bisa diatur sendiri | |
Unit ber-tag (vlan-id) |
Mengikuti MTU port | MTU port |
irb unit |
MTU terkecil port anggota VLAN-nya | MTU terkecil port anggota |
Contoh pemakaian: port ke switch dibuat jumbo (mtu 9000) untuk VLAN storage, sedangkan VLAN pelanggan di port yang sama tetap 1500. Kalau MTU port diturunkan di bawah MTU unit, commit ditolak:
% configuration is not valid:
interfaces eth1 unit 300: mtu 9000 is larger than the port eth1 mtu (1500)
Mematikan port atau unit¶
admin@r1# set interfaces eth2 disable # seluruh port
admin@r1# set interfaces eth1 unit 100 disable # satu unit
admin@r1# set interfaces irb unit 20 disable # gateway VLAN
admin@r1# commit
Hapus disable untuk menyalakannya lagi.
Loopback¶
admin@r1# set interfaces lo0 unit 0 family inet address 1.1.1.1/32
admin@r1# set interfaces lo0 unit 0 description "router-id"
Loopback berguna untuk alamat router yang tidak bergantung pada satu port, misalnya sebagai router-id BGP atau alamat manajemen in-band. Unit lain (lo0 unit 1) membuat loopback tambahan.
Menghapus¶
admin@r1# delete interfaces eth1 unit 100 # hapus satu unit
admin@r1# delete vlans tamu # hapus VLAN (lepaskan juga port & irb-nya)
admin@r1# delete interfaces lo0 unit 1
admin@r1# delete interfaces eth2 # semua unit dihapus, port down
Router juga bisa memindahkan port dari routed ke switch (atau sebaliknya) dalam satu commit; urutannya diatur otomatis.