Teknik Komputer Dan Jaringan

Tahukah Anda bhwa mmbuat kesalahan adalah sesuatu yang perlu. Kita tidak pernah betul-betul hidup – sampai kita mulai membuat kesalahan, karena kesalahan adalah biaya yang harus dibayar untuk mencapai keberhasilan. (suroso ediyanto)

Selasa, 26 Januari 2010

IMPLEMENTASI VLAN PADA LINUX

APA ITU VLAN

Sebuah Local Area Network (LAN) pada dasarnya diartikan sebagai sebuat network dari kumpulan computer yang berada pada lokasi yang sama. Sebuah LAN diartikan sebagai single broadcast domain, artinya ada sebuah broadcast informasi dari seorang user dalam LAN, broadcast akan diterima oleh setiap user lain dalam LAN tersebut.Broadcast yang keluar dari LAN bisa difilter dengan router. Susunan dari broadcast domain tergantung juga dari jenis koneksi fisik perangkat networknya. Virtual Local Area Network (VLAN) dikembangkan sebagai pilihan alternatif untuk mengurangi broadcast traffic.



Sebuah Virtual LAN merupakan fungsi logik dari sebuah switch. Fungsi logik ini mampu membagi jaringan LAN ke dalam beberapa jaringan virtual. Jaringan virtual ini tersambung ke dalam perangkat fisik yang sama. Implementasi VLAN dalam jaringan memudahkan seorang administrator dalam membagi secara logik group-group workstation secara fungsional dan tidak dibatasi oleh lokasi.

Dalam tradisioanl LAN, workstation masing-masing terhubung dengan workstation yang lain dalam sebuah hub. Perangkat ini akan menyebarkan semua lalu lintas data di seluruh network. Jika ada dua user yang mencoba mengirim informasi pada waktu yang sama, sebuah tabrakan (collision) akan terjadi dan semua pengiriman data akan hilang. Jika tabrakan (collision) telah terjadi, pengiriman data akan dilanjutkan disebar di seluruh network oleh hub. Informasi data asal akan terus mengirim sampai dengan collision hilang. Dengan demikian akan banyak membuang waktu dan resource (sumber daya).

Untuk mengatasi collision di sebuah network, maka digunakanlah sebuah bridge atau sebuah switch. Perangkat ini tidak akan mem-forward collision, tapi bisa melewatkan broadcast (ke setiap user di network) dan multicast. Dan sebuah router digunakan untuk mencegah broadcast dan multicast dari lalulintas data network.

BUAT APA VLAN

Menurut IEEE standard 802.1Q, Virtual LANs menawarkan sebuah metode untuk membagi satu fisik network ke banyak broadcast domains. dalam network besar, broadcast domain ini biasanya sama dengan batas IP subnet, yang masing-masing subnet mempunyai satu VLAN.

Sebuah VLAN membolehkan banyak Virtual LANs berdampingan dalam sebuah fisik LAN (switch). Artinya jika ada dua mesin yang terhubung dalam switch yang sama tidak dapat mengirim Ethernet frames ke mesin lain meskipun dalam satu kabel yang sama. Jika dibutuhkan untuk komunikasi, maka sebuah router harus ditempatkan di antara dua VLAN tersebut untuk memforward paket, seperti jika ada dua LAN yang secara fisik terpisah.

Untuk mengenali traffic dari VLAN yang berbeda, 802.1Q standard mendefinisikan sebuah metode yang disebut VLAN TAGGING. dengan tagging, switches memasukkan 4-bit VLAN tag ke dalam header dari masing-masing frame. sebuah tag mengandung 12-bit. VLAN ID. pengenal frame anggota VLAN.

BAGAIMANA VLAN BEKERJA

Di banyak distro linux semuanya sudah menyertakan vlan-tool di dalam distribusinya.
seperti :

Debian : ~]#apt-get install vlan
Redhat/Fedora : ~]#rpm -ivh vconfig.i386.rpm

Jika distro anda tidak mempunyai program itu silahkan download dengan versi terbarunya di : http://scry.wanfear.com/~greear/vlan.html.

Situasi yang dihadapi :

* Kernel sudah dicompile dengan dukungan 802.1Q (built-in/module) dan vlan-tool.
* Vlan utilities, seperti vconfig, ifenslave, iproute2.
* sebuah pc linux
* cisco switch
* swith AT-8024 (alied telesyn)
* cisco router (kalo bisa)

SETTING VLAN

sebagai root :

~]#modprobe 8021q # lewati baris ini jika kernel anda sudah dicompile built-in 802.1q dan tidak sebagai module.

#Silahkan tambahkan tiga vlan interface di eth1 (sebagai contoh) dengan vlan id 5, 6, 7 dan 8 :

~]# vconfig add eth1 5
~]# vconfig add eth1 6
~]# vconfig add eth1 7
~]# vconfig add eth1 8

perhatian: jangan menggunakan vlan 1. karena di banyak device digunakan sebagai management vlan internal (seperti cisco, AT)

untuk melihat interface yang telah dibuat :

~]# ifconfig eth1.5
~]# ifconfig eth1.6
~]# ifconfig eth1.7
~]# ifconfig eth1.8

atau

~]#ifconfig -a

untuk menghapus vlan interface:

~]# vconfig rem eth1.5
~]# vconfig rem eth1.6
~]# vconfig rem eth1.7
~]# vconfig rem eth1.8

dan banyak informasi dan statistik yang dapat dilihat di /proc/net/vlan/ folder :

[root@masterpop3 root~]# cat /proc/net/vlan/eth1.2
eth1.2 VID: 2 REORDER_HDR: 1 dev->priv_flags: 1
total frames received: 53973265
total bytes received: 1075877000
Broadcast/Multicast Rcvd: 397878
total frames transmitted: 41904604
total bytes transmitted: 2333267429
total headroom inc: 0
total encap on xmit: 41904604

Device: eth1
INGRESS priority mappings: 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0
EGRESSS priority Mappings:

dan sekarang, anda dapat meng-konfigurasi vlan interface anda seperti interface biasa.
Untuk meningkatkan kapasitas bandwidth traffic dan load-balancing bisa digunakan bonding interface (silahkan baca dibawah).

CONTOH APLIKASI VLAN :

* DI LINUX

=====================================================

Buat file config untuk startup interface vlan, misal buat /etc/rc.vlan


#!/bin/bash
modprobe 8021q
ifconfig eth1 down
ifconfig eth1 up
vconfig add eth1 5
vconfig add eth1 6
vconfig add eth1 7
vconfig add eth1 8

ifconfig eth1.5 10.10.1.1 netmask 255.255.255.0 broadcast 10.10.1.255 up
ifconfig eth1.6 10.10.2.1 netmask 255.255.255.0 broadcast 10.10.2.255 up
ifconfig eth1.7 10.10.3.1 netmask 255.255.255.0 broadcast 10.10.3.255 up
ifconfig eth1.8 10.10.4.1 netmask 255.255.255.0 broadcast 10.10.4.255 up

=====================================================

untuk melihat interface yang telah dibuat ketik : /sbin/ifconfig -a

* Di Fedora / Redhat Linux (RPM Based)

[root@linux aa]# cd /etc/sysconfig/network-scripts/
[root@linux network-scripts]# cat ifcfg-eth1.5

DEVICE=eth1.5
BOOTPROTO=static
IPADDR=10.10.1.1
NETMASK=255.255.255.0
ONBOOT=yes
VLAN=yes

[root@linux network-scripts]# cat ifcfg-eth1.6

DEVICE=eth1.6
BOOTPROTO=static
IPADDR=10.10.2.1
NETMASK=255.255.255.0
ONBOOT=yes
VLAN=yes

[root@linux network-scripts]# cat ifcfg-eth1.7

DEVICE=eth1.7
BOOTPROTO=static
IPADDR=10.10.3.1
NETMASK=255.255.255.0
ONBOOT=yes
VLAN=yes

[root@linux network-scripts]# cat ifcfg-eth1.8

DEVICE=eth1.8
BOOTPROTO=static
IPADDR=10.10.4.1
NETMASK=255.255.255.0
ONBOOT=yes
VLAN=yes

========================================================
SWITCH MANAGABLE ALIED-TELESYN AT-8024 (24 port)

main menu -> VLAN menu (2) -> Configure VLANs (5)

1 Default_VLAN U: 23-24
T:

5 vlan5 U: 1-6
T: 23-24

6 vlan6 U: 7-12
T: 23-24

7 vlan7 U: 13-18
T: 23-24

8 vlan8 U: 19-22
T: 23-24

Port 23,24 sebagai port tagging atau port trunking (yang bisa dihubungkan ke port trunking linux atau router cisco).

=======================================================================
CISCO switch && router

A. Switch Cisco Configuration

Konfigurasikan port yang digunakan untuk tujuan vlan :

conf t
interface FastEthernet0/1 (#sampai dengan Fe0/6)
switchport access vlan 5
!
interface FastEthernet0/7 (#sampai dengan Fe0/12)
switchport access vlan 6
!
interface FastEthernet0/13 (#sampai dengan Fe0/18)
switchport access vlan 7
!
interface FastEthernet0/19 (#sampai dengan Fe0/22)
switchport access vlan 8
end


Sekarang, membuat port trunking (23, 24) di switch cisco.

conf t
interface FastEthernet0/23 (#port 23 dan port 24 sbg trunking)
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 5-8
switchport mode trunk

B. Router Cisco Configuration

ro-cisco>Enable
ro-cisco#Configure terminal
ro-cisco#Interface FastEthernet0/0.1
ro-cisco#Encapsulation dot1q 5
ro-cisco#IP address 10.10.1.1 255.255.255.0
ro-cisco#Exit
ro-cisco#Interface FastEthernet0/0.2
ro-cisco#Encapsulation dot1q 6
ro-cisco#IP address 10.10.2.1 255.255.255.0
ro-cisco#Exit
ro-cisco#Interface FastEthernet0/0.3
ro-cisco#Encapsulation dot1q 7
ro-cisco#IP address 10.10.3.1 255.255.255.0
ro-cisco#Exit
ro-cisco#Interface FastEthernet0/0.4
ro-cisco#Encapsulation dot1q 8
ro-cisco#IP address 10.10.4.1 255.255.255.0
ro-cisco#Exit
ro-cisco#Exit
ro-cisco#Write memory

===============================================================

Bonding (Port Trunking)

Apa itu bonding ?

Bonding adalah sama dengan port trunking. Bonding membolehkan anda untuk mengumpulkan banyak port ke single group. kombinasi efektif bandwidth ke dalam single koneksi. Bonding juga membolehkan anda untuk membuat jalur multi-gigabit traffic lalu lintas data ke dalam traffic area tertinggi di dalam network anda. sebagai contoh, anda dapat mengumpulkan tiga megabits port ke dalam sebuah tiga-megabits trunk port. Ini sama artinya dengan punya satu interface dengan kecepatan tiga megabit.

Sangat disarankan dalam penggunaan vlan dengan bonding karena dapat meningkatkan ke bandwidth yang tersedia. Dibawah ini contoh script penggunaan vlan dan bonding.

#!/bin/bash
modprobe 8021q
modprobe bonding mode=0 miimon=100
ifconfig eth0 down
ifconfig eth1 down
ifconfig eth2 down
ifconfig bond0 0.0.0.0
ifconfig eth1 0.0.0.0
ifconfig eth2 0.0.0.0
ifconfig bond0 hw ether 00:11:22:33:44:55
ifconfig bond0 10.1.1.3 up

ifenslave bond0 eth1
ifenslave bond0 eth2

vconfig add bond0 2
vconfig add bond0 3
vconfig add bond0 4
vconfig add bond0 5
vconfig add bond0 6

ifconfig bond0.2 192.168.2.1 netmask 255.255.255.0 broadcast 192.168.2.255 up
ifconfig bond0.3 192.168.3.1 netmask 255.255.255.0 broadcast 192.168.3.255 up
ifconfig bond0.4 192.168.4.1 netmask 255.255.255.0 broadcast 192.168.4.255 up
ifconfig bond0.5 192.168.5.1 netmask 255.255.255.0 broadcast 192.168.5.255 up
ifconfig bond0.6 192.168.6.1 netmask 255.255.255.0 broadcast 192.168.6.255 up

echo 1 > /proc/sys/net/ipv4/ip_forward

Reference :

http://scry.wanfear.com/~greear/vlan/howto.html
http://www.linuxhorizon.ro/vlans.html
http://www.lanarchitect.net/Articles/VLANTrunking/Implementation/

0 komentar: