Lewati ke isi

Interface & VLAN

Unit dan VLAN dengan irb

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), dan family inet hanya menerima IPv4 (begitu juga inet6 hanya 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 0 yang boleh tanpa vlan-id; frame tanpa tag dan frame ber-tag bisa berbagi satu port.
  • Satu VLAN ID hanya untuk satu unit di port yang sama.
  • vlan-tagging di port tidak wajib, karena sudah tersirat dari vlan-id. Kalau ditulis, setiap unit di port itu wajib punya vlan-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 memakai unit 0, tanpa unit lain dan tanpa alamat. Alamatnya diletakkan di irb.
  • vlan-id tidak boleh dipakai dua VLAN.
  • Setiap irb unit harus menjadi l3-interface satu VLAN, dan satu irb hanya untuk satu VLAN.
  • Nomor unit irb bebas. Menyamakannya dengan VLAN ID (irb.20 untuk 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.

Melihat status

admin@r1> show interfaces              # port dan interface logis: state, MTU, alamat
admin@r1> show vlans                   # VLAN, port anggota, irb
admin@r1> show interfaces counters     # counter VPP: paket, byte, error, drop
admin@r1> monitor interface traffic    # throughput live
admin@r1> show vpp bridge-domain 20 detail