Sabtu, 23 April 2016

Helm AGV Valentino Rossi

Helm Fullface AGV Rossi

1. Helm AGV Wintertest Double Face

Rp. 12.000.000,-

Helm original buatan itali berbahan Super-Super Light (SSL) Carbon-Kevlar jadi sangat ringan namun kuat. Ringan itu perlu agar kepala tidak terbeban helm yang berat dan kuat itu perlu untuk menahan benturan. Helm AGV ini sudah mendapat sertifikat dari Snell dimana sertifikat Snell ini lebih tinggi dibandingkan dengan DOT. Hanya helm-helm tertentu saja yang lulus sertifikasi Snell seperti Nolan, Shoei, Arai, etc.

Selasa, 01 Maret 2016

Jasa Pembuatan Domain dan Web Hosting

Yang mau dibikinin toko online + domain sendiri, ayo daftar disini

atau mau dibikinin aplikasi inventory nya
ayo cek disini

very simple, tinggal kontak kami aja disini

Selasa, 26 Mei 2015

IT Consultant


Kami siap melayani kebutuhan anda di bidang IT, baik untuk hardware, software dan networking. Kami menyediakan layanan installing, repairing atau upgrading untuk memperlancar pekerjaan anda.
HUBUNGI KAMI :
  • 758AD76B (eggy)
  • 79DE73EB (rusman)
  • 224A517C (hana)



Related Blog :
Official Website :




Kamis, 27 September 2012

Jaket Varsity Black Red Devil



==========PRE ORDER============

KODE BARANG : Varsity Black Red Devil
Mohon Di simak dulu gan :

1. Sistem yang digunakan adalah Pre Order. pesan, bayar, produksi
... 2. Akan naik produksi minimal setelah ada 20 pemesan
3. Pembayaran melalui bank BRI
4. Produksi dilakukan setelah semua lunas dan dalam waktu 3 minggu
5. Kesalahan dalam menentukan size adalah tanggung jawab buyer
6. Untuk lama produksi paling makan waktu kurang lebih 2 MINGGU
7. Pengiriman lewat TIKI atau JNE. (Costumer tinggal pilih)

OPEN ORDER : ( ONLY SERIOUS BUYER )


Lewat TIKI JNE / TIKI :
http://www.jne.co.id/
http://www.tikinet.co.id/

UNTUK DAERAH BANDUNG BISA DIANTAR..

CP : chester_regza@yahoo.com ( FB ) /
085294934223 CALL OR SMS /
kirim wall atau pesan ke Eggy Systm

Sesi Order :ON
Sesi Transfer :OFF
Sesi Produksi :OFF

KETERANGAN BAHAN JAKET
1. Bahan JAKET COTTON FLEECE (bahan hoodie pada umumnya dengan kualitas terbaik, Adem,Nyaman, enak dipakai)
. Jahitan Rapi & Kuat


Harga :
- Rp. 155.000,- belum termasuk ongkos kirim
- Size XXL + Rp 10.000

Size:
S : Panjang = 63 ; Lebar = 48 ; Panjang Lengan=59
M : P = 66 ; L = 52 ; Panjang Lengan = 61
L : P = 69 ; L = 56 ; Panjang Lengan = 63
XL : P = 72 ; L = 60 ; Panjang Lengan = 65
XXL : P = 74 ; L = 64 ; Panjang Lengan = 67

Kalo mau order dilengkapi data dirinya.

CLICK FOR ORDER : http://www.jotform.com/form/12302152953

Jumat, 30 Maret 2012

Pulpen kamera




Pulpen video kamera Kapasitas 4 GB , Harga Rp. 350.000,-
Cocok juga di jadikan sebagai kado untuk orang yang anda sayangi .
Pulpen diletakkan dikantung baju dan diam2 memantau tanpa diketahui orang lain, kapasitas 4 GB, bisa merekam gambar dan suara dengan jelas selama 1 jam, baterai di cas, dapat dipergunakan sebagai USB/ dapat menyimpan data dan dapat digunakan sbg pupen biasa, Luar Kota Bandung... akan dikirim lewat JNE, ditambah dengan ongkos kirim Pembayaran lewat BRI

SPESIFIKASI
- Video format : AVI
- Video resoluton : 640X480 VGAi
- Photo resolution : 1280x960
- Frame rate : 30/sec
- Battery type : High capacity lithium-polymer battery
- Charge voltage : DC-5V
- Battery keep working for 50-60 minute (1,8 GB)
- memory 4GB
- Operating system WIN ME,WIN XP,WIN 98,WIN 2000,WINDOWS VISTA
PACKAGE CONTAIN
1 PIECE PEN CAMERA RECORDER
1 PIECE USB CABLE CONNECTOR

Pulpen video kamera Kapasitas 4 GB , Harga Rp. 350.000,-.
Bagi yang serius beli sms ke eggy 085294934223
Cara order ; Ketik Pulpen video Kamera , alamat lengkap
Barang dikirim lewat JNE dan tambah ongkir , Pembayaran lewat BRI

Kamis, 18 Agustus 2011

Mengubah Hurup Besar dan Hurup Kecil dengan PHP

strtoupper(), HURUF BESAR SEMUA
Misalnya kita ingin merubah ulibolet menjadi ULIBOLET

01
02$ulibolet = strtoupper('uli bolet');
03echo ($ulibolet);
04  
05// atau dengan string PHP
06  
07$kataawal = 'uli bolet';
08$ulibolet = strtoupper($kataawal);
09echo ($ulibolet);
10?>

ucfirst(), Huruf besar di awal kalimat

Misalnya kita ingin merubah uli bolet menjadi Uli bolet.
01
02$ulibolet = ucfirst('uli bolet');
03echo ($ulibolet);
04 
05// atau dengan string PHP
06 
07$kataawal = 'uli bolet';
08$ulibolet = ucfirst($kataawal);
09echo ($ulibolet);
10?>
11
class="brush: php">

lcfirst(), huruf kecil diawal kalimat

Misalnya kita ingin merubah Uli bolet menjadi uli bolet.

01
02$ulibolet = lcfirst('uli bolet');
03echo ($ulibolet);
04  
05// atau dengan string PHP
06  
07$kataawal = 'uli bolet';
08$ulibolet = lcfirst($kataawal);
09echo ($ulibolet);
10?>

strtolower(), huruf kecil semua

Misalnya kita ingin merubah ULI BOLET menjadi uli bolet.

01
02$ulibolet = strtolower('uli bolet');
03echo ($ulibolet);
04 
05// atau dengan string PHP
06 
07$kataawal = 'uli bolet';
08$ulibolet = strtolower($kataawal);
09echo ($ulibolet);
10?>

ucwords(), Huruf Besar Di Awal Setiap Kata

Misalnya kita ingin merubah uli bolet menjadi Uli Bolet.

01
02$ulibolet = ucwords('uli bolet');
03echo ($ulibolet);
04 
05// atau dengan string PHP
06 
07$kataawal = 'uli bolet';
08$ulibolet = ucwords($kataawal);
09echo ($ulibolet);
10?>

Semua fungsi diatas bisa dilihat juga di PHP.net. Fungsi -fungsi diatas juga dapat kita kombinasikan menjadi fungsi custom, sehingga dapat digunakan untuk kebutuhan lainnya yang tidak tertera, misalnya:

hURUF kECIL dIAWAL SeTIAP kATA

Misalnya kita ingin merubah ULI BOLET menjadi uLI bOLET

01
02function kecilawal($kalimat)
03{
04static $fungsibaru;
05if (!$fungsibaru) {
06$fungsibaru = create_function('$kalimat', 'return strtolower($kalimat[0]);');
07}
08return preg_replace_callback('~\b\w~', $fungsibaru, $kalimat);
09}
10// penggunaan
11echo kecilawal('uli bolet');
12// atau dengan string php
13$ulibolet = 'uli bolet';
14echo kecilawal($ulibolet);
15?>

atau mengubah custom
HURUF BESAR SEMUA MENJADI Huruf Besar Di Awal Kalimat Saja

Misalnya ingin merubah ULI BOLET menjadi Uli Bolet


1
2$ulibolet = 'uli bolet';
3// dibikin kecil semua dulu
4$uliboletkecil = strtolower($ulibolet);
5// baru dibikin huruf besar diawal kata
6$hasil = ucwords($uliboletkecil);
7echo ($hasil);
8?>

Rabu, 17 Agustus 2011

Syntax dasar dalam SQL ( Structured Query Language )

LEVEL DATABASE
Membuat database
Untuk membuat database baru, sehingga tidak berlaku jika database sudah ada atau anda tidak memiliki privilege.
Sintaksnya :
CREATE DATABASE nama_db
Menghapus database
Untuk menghapus database beserta seluruh table di dalamnya. Perintah ini tidak berlaku jika database tidak ada atau anda tidak memiliki privilege.
Sintaksnya :
DROP DATABASE nama_db
Menggunakan database
Untuk menjadikan database menjadi default dan referensi dari table yang nantinya anda gunakan. Perintah ini tidak berlaku jika database tidak ada atau anda tidak memiliki privilege.
Sintaksnya :
USE nama_db
Menampilkan database
Untuk menampilkan daftar yang ada dalam system saat itu.
Sintaksnya :
SHOW DATABASES
LEVEL TABEL
Membuat table
Untuk membuat table minimal anda harus menentukan namanya dan tipe kolom yang anda inginkan. Sintaks yang paling sederhana (tanpa ada definisi lain) adalah :
CREATE TABLE nama_tbl
(kolom1 tipekolom1(),kolom2 tipekolom2(), …)
Contoh : Anda ingin membuat table dengan nama profil yang memiliki kolom nama (bertipe char, lebar 20), kolom umur (bertipe integer), kolom jenis_kelamin (bertipe enum, berisi M dan F). Sintaksnya :
REATE TABLE profil (nama CHAR(20), umur INT NOT NULL, jenis_kelamin ENUM(‘F’,’M’) )
Sedangkan perintah yang agak lengkap dalam membuat sebuah table adalah dengan menyertakan definisi tertentu. Misalnya perintah seperti ini :
CREATE TABLE peserta (
No SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
Nama CHAR(30) NOT NULL,
BidangStudi ENUM(‘TS’,’WD’) NOT NULL,
PRIMARY KEY (No),
INDEX (Nama, BidangStudi) )
Perintah di atas berarti membuat table peserta dengan kolom No sebagai PRIMARY KEY yaitu indeks table yang unik yang tidak bisa diduplikat dengan atribut AUTO_INCREMENT yaitu kolom yang otomatis dapat mengurutkan angka yang diisikan padanya. Sedangkan kolom Nama dan BidangStudi dijadikan indeks biasa.
Membuat indeks pada table
Menambahkan indeks pada table yang sudah ada baik yang unik ataupun yang biasa.
Sintaksnya :
CREATE INDEX nama_index ON nama_tbl (nama_kolom)
CREATE UNIQUE INDEX nama_index ON nama_tbl (nama_kolom)
Menghapus table
Untuk menghapus table dalam database tertentu. Jika dilakukan maka semua isi, indeks dan atribut lain akan terhapus.
Sintaksnya :
DROP TABLE nama_tbl
Menghapus indeks
Untuk menghapus indeks pada suatu table.
Sintaksnya :
DROP INDEX nama-index ON nama_tbl
Melihat informasi table
Untuk melihat table apa saja yang ada di database tertentu.
Sintaksnya :
SHOW TABLES FROM nama_db
Sedangkan untuk melihat deskripsi table atau informasi tentang kolom gunakan sintaks :
DESC nama_tbl nama_kolom
atau SHOW COLUMNS FROM nama_tbl FROM nama_db
Mendapatkan atau menampilkan informasi dari table
Untuk menampilkan isi table dengan option-option tertentu. Misalnya untuk menampilkan seluruh isi table digunakan :
SELECT * FROM nama_tbl
Untuk menampilkan kolom-kolom tertentu saja :
SELECT kolom1,kolom2,… FROM nama_tbl
Untuk menampilkan isi suatu kolom dengan kondisi tertentu
SELECT kolom1 FROM nama_tbl WHERE kolom2=isikolom

Modifikasi struktur table

Dapat digunakan untuk mengganti nama table atau mengubah strukturnya seperti manambah kolom atau indeks, menghapus kolom atau indeks, mengubah tipe kolom dsb. Sintaks umum :
ALTER TABLE nama_tbl action
Untuk menambah kolom baru di tempat tertentu dapat menggunakan :
ALTER TABLE nama_tbl
ADD kolom_baru type() definisi
Untuk menambah kolom_baru bertipe integer setelah kolom1 digunakan :
ALTER TABLE nama_tbl
ADD kolom_baru INT NOT NULL AFTER kolom1
Untuk menambah indeks baru pada table tertentu baik yang unik ataupun yang biasa:
ALTER TABLE nama_tbl ADD INDEX nama_index (nama_kolom)
ALTER TABLE nama_tbl ADD UNIQUE nama_indeks (nama_kolom)
ALTER TABLE nama_tbl ADD PRIMARY KEY nama_indeks (nama_kolom)
Untuk mengubah nama kolom dan definisinya, misalnya mengubah nama kolom_baru dengan tipe integer menjadi new_kolom dengan tipe char dengan lebar 30 digunakan:
ALTER TABLE nama_tbl
CHANGE kolom_baru new_kolom CHAR(30) NOT NULL
Untuk menghapus suatu kolom dan seluruh atributnya, misal menghapus kolom1 :
ALTER TABLE nama_tbl DROP kolom1
Untuk menghapus indeks baik yang unik ataupun yang biasa digunakan :
ALTER TABLE nama_tbl DROP nama_index
ALTER TABLE nama_tbl DROP PRIMARY KEY
Modifikasi informasi dalam table.
Untuk menambah record atau baris baru dalam table,
sintaksnya :
INSERT INTO nama_tbl (nama_kolom) VALUES (isi_kolom)
atau INSERT INTO nama_tbl SET nama_kolom=isi_kolom
Misalnya untuk menambah dua baris pada table profil dengan isi nama = deden & ujang dan isi umur = 17 & 18 adalah :
INSERT INTO profil (nama,umur) VALUES (deden,17), (ujang,18)
atau INSERT INTO profil SET nama=deden, umur=17
INSERT INTO profil SET nama=ujang, umur=18
Untuk memodifikasi record atau baris yang sudah ada yang bersesuaian dengan suatu kolom. Misalnya untuk mengubah umur deden menjadi 18 pada contoh di atas dapat digunakan sintaks :
UPDATE profil SET umur=18 WHERE nama=qalit
Untuk menghapus record atau baris tertentu dalam suatu table. Misalnya untuk menghapus baris yang ada nama ujang digunakan
sintaks :
DELETE FROM profil WHERE nama=ujang
Jika WHERE tidak disertakan maka semua isi dalam table profil akan terhapus.

Mengubah Semua Huruf Kecil Menjadi Kapital Atau Sebaliknya Dengan PHP

Bila kita ingin mengubah huruf kecil menjadi kapital atau sebaliknya, kita dapat menggunakan fungsi bernama strtoupper, atau jika ingin merubah dari kapital ke huruf kecil, keta dapat menggunakan fungsi bernama strtolower.
Berikut adalah bentuk pemanggilan fungsinya:
< ?
$kata = “belajar PHP bersama-sama”;
echo strtoupper($kata); # huruf menjadi huruf besar semua
echo ”
“;
echo strtolower($kata); # huruf menjadi huruf kecil semua
?>
Jika script diatas dijalankan maka akan menghasilkkan sebagai berikut :
BELAJAR PHP BERSAMA-SAMA
belajar php bersama-sama
Disamping itu PHP juga menyediakan fungsi yang digunakan untuk membuat huruf pertama suatu string dikapitalkan atau fungsi yang membuat setiap awal kata dikapitalkan, fungsi tersebut adalah ucfirst(string) dan ucwords(string).
FUNGSI-FUNGSI DIATAS TIDAK MERUBAH NILAI ARGUMENNYA
Contoh:
< ?
$kata = “belajar PHP bersama-sama”;
echo ucfirst($kata);
echo ”
“;
echo ucwords($kata);
?>
Jika script diatas dijalankan maka akan menghasilkan
Belajar PHP bersama-sama
Belajar PHP Bersama-sama

Sabtu, 16 April 2011

IPTABLES

Basic iptables howto

Iptables is a firewall, installed by default on all official Ubuntu distributions (Ubuntu, Kubuntu, Xubuntu). When you install Ubuntu, iptables is there, but it allows all traffic by default. Ubuntu 8.04 Comes with ufw - a program for managing the iptables firewall easily.
There is a wealth of information available about iptables, but much of it is fairly complex, and if you want to do a few basic things, this How To is for you.

Basic Commands

Typing
# iptables -L
lists your current rules in iptables. If you have just set up your server, you will have no rules, and you should see
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Basic Iptables Options

Here are explanations for some of the iptables options you will see in this tutorial. Don't worry about understanding everything here now, but remember to come back and look at this list as you encounter new options later on.
  • -A - Append this rule to a rule chain. Valid chains for what we're doing are INPUT, FORWARD and OUTPUT, but we mostly deal with INPUT in this tutorial, which affects only incoming traffic.
  • -L - List the current filter rules.
  • -m conntrack - Allow filter rules to match based on connection state. Permits the use of the --ctstate option.
  • --ctstate - Define the list of states for the rule to match on. Valid states are:
    • NEW - The connection has not yet been seen.
    • RELATED - The connection is new, but is related to another connection already permitted.
    • ESTABLISHED - The connection is already established.
    • INVALID - The traffic couldn't be identified for some reason.
  • -m limit - Require the rule to match only a limited number of times. Allows the use of the --limit option. Useful for limiting logging rules.
    • --limit - The maximum matching rate, given as a number followed by "/second", "/minute", "/hour", or "/day" depending on how often you want the rule to match. If this option is not used and -m limit is used, the default is "3/hour".
  • -p - The connection protocol used.
  • --dport - The destination port(s) required for this rule. A single port may be given, or a range may be given as start:end, which will match all ports from start to end, inclusive.
  • -j - Jump to the specified target. By default, iptables allows four targets:
    • ACCEPT - Accept the packet and stop processing rules in this chain.
    • REJECT - Reject the packet and notify the sender that we did so, and stop processing rules in this chain.
    • DROP - Silently ignore the packet, and stop processing rules in this chain.
    • LOG - Log the packet, and continue processing more rules in this chain. Allows the use of the --log-prefix and --log-level options.
  • --log-prefix - When logging, put this text before the log message. Use double quotes around the text to use.
  • --log-level - Log using the specified syslog level. 7 is a good choice unless you specifically need something else.
  • -i - Only match if the packet is coming in on the specified interface.
  • -I - Inserts a rule. Takes two options, the chain to insert the rule into, and the rule number it should be.
    • -I INPUT 5 would insert the rule into the INPUT chain and make it the 5th rule in the list.
  • -v - Display more information in the output. Useful for if you have rules that look similar without using -v.
  • -s --source - address[/mask] source specification
  • -d --destination - address[/mask] destination specification
  • -o --out-interface - output name[+] network interface name ([+] for wildcard)

Allowing Established Sessions

We can allow established sessions to receive traffic:
# iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
  • The above rule has no spaces either side of the comma in ESTABLISHED,RELATED
If the line above doesn't work, you may be on a castrated VPS whose provider has not made available the extension, in which case an inferior version can be used as last resort:
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Allowing Incoming Traffic on Specific Ports

You could start by blocking traffic, but you might be working over SSH, where you would need to allow SSH before blocking everything else.
To allow incoming traffic on the default SSH port (22), you could tell iptables to allow all TCP traffic on that port to come in.
# iptables -A INPUT -p tcp --dport ssh -j ACCEPT
Referring back to the list above, you can see that this tells iptables:
  • append this rule to the input chain (-A INPUT) so we look at incoming traffic
  • check to see if it is TCP (-p tcp).
  • if so, check to see if the input goes to the SSH port (--dport ssh).
  • if so, accept the input (-j ACCEPT).
Lets check the rules: (only the first few lines shown, you will see more)
# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
Now, let's allow all incoming web traffic
# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
Checking our rules, we have
# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:www
We have specifically allowed tcp traffic to the ssh and web ports, but as we have not blocked anything, all traffic can still come in.

Blocking Traffic

Once a decision is made to accept a packet, no more rules affect it. As our rules allowing ssh and web traffic come first, as long as our rule to block all traffic comes after them, we can still accept the traffic we want. All we need to do is put the rule to block all traffic at the end.
# iptables -A INPUT -j DROP
# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:www
DROP       all  --  anywhere             anywhere
Because we didn't specify an interface or a protocol, any traffic for any port on any interface is blocked, except for web and ssh.

Editing iptables

The only problem with our setup so far is that even the loopback port is blocked. We could have written the drop rule for just eth0 by specifying -i eth0, but we could also add a rule for the loopback. If we append this rule, it will come too late - after all the traffic has been dropped. We need to insert this rule before that. Since this is a lot of traffic, we'll insert it as the first rule so it's processed first.
# iptables -I INPUT 1 -i lo -j ACCEPT
# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:www
DROP       all  --  anywhere             anywhere
The first and last lines look nearly the same, so we will list iptables in greater detail.
# iptables -L -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     all  --  lo     any     anywhere             anywhere
    0     0 ACCEPT     all  --  any    any     anywhere             anywhere            state RELATED,ESTABLISHED
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:ssh
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:www
    0     0 DROP       all  --  any    any     anywhere             anywhere
You can now see a lot more information. This rule is actually very important, since many programs use the loopback interface to communicate with each other. If you don't allow them to talk, you could break those programs!

Logging

In the above examples none of the traffic will be logged. If you would like to log dropped packets to syslog, this would be the quickest way:
# iptables -I INPUT 5 -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
See Tips section for more ideas on logging.

Saving iptables

If you were to reboot your machine right now, your iptables configuration would disappear. Rather than type this each time you reboot, however, you can save the configuration, and have it start up automatically. To save the configuration, you can use iptables-save and iptables-restore.

Configuration on startup

WARNING: Iptables and NetworkManager seem to have a conflict. However NetworkManager is still in Beta. If you are concerned enough about security to install a firewall you might not want to trust NetworkManager to manage it yet. Also note NetworkManager and iptables have opposite aims. Iptables aims to keep any questionable network traffic out. NetworkManager aims to keep you connected at all times. Therefore if you want security all the time, run iptables at boot time. If you want security some of the time then NetworkManager might be the right choice.
WARNING: If you use NetworkManager (installed by default on Feisty and later) these steps will leave you unable to use NetworkManager for the interfaces you modify. Please follow the steps in the next section instead.
NOTE: It appears on Hardy, NetworkManager has an issue with properly on saving and restoring the iptable rules when using the method in the next section. Using this first method appears to work. If you find otherwise, please update this note.
Save your firewall rules to a file
# sudo bash -c "iptables-save > /etc/iptables.rules"
At this point you have several options. You can make changes to /etc/network/interfaces or add scripts to /etc/network/if-pre-up.d/ and /etc/network/if-post-down.d/ to achieve similar ends. The script solution allows for slightly more flexibility.

Solution #1 - /etc/network/interfaces

(NB: I followed the directions in this section and this disabled most (all?) of my scripts in /etc/rc2.d/: polipo, dnsmasq, bluetooth, etc. I recommend using ufw/gufw instead. ~gasull)
Modify the /etc/network/interfaces configuration file to apply the rules automatically. You will need to know the interface that you are using in order to apply the rules - if you do not know, you are probably using the interface eth0, although you should check with the following command first to see if there are any wireless cards:
$ iwconfig
If you get output similar to the following, then you do not have any wireless cards at all and your best bet is probably eth0.
$ iwconfig

lo        no wireless extensions.

eth0      no wireless extensions.

$
When you have found out the interface you are using, please open your /etc/network/interfaces file depending on what editor you want and/or what distribution you have:
Command line:
# nano /etc/network/interfaces
For Ubuntu and Xubuntu: type ALT+F2, then in the window that pops up, type:
gksudo gedit /etc/network/interfaces
and press Enter.
For Kubuntu: type ALT+F2, then in the window that pops up, type:
kdesu kate /etc/network/interfaces
and press enter.
When in the file, search for the interface you found, and at the end of the network related lines for that interface, add the line:
pre-up iptables-restore < /etc/iptables.rules
You can also prepare a set of down rules, save them into second file /etc/iptables.downrules and apply it automatically using the above steps:
post-down iptables-restore < /etc/iptables.downrules
A fully working example using both from above:
auto eth0
iface eth0 inet dhcp
  pre-up iptables-restore < /etc/iptables.rules
  post-down iptables-restore < /etc/iptables.downrules
You may also want to keep information from byte and packet counters.
iptables-save -c > /etc/iptables.rules 
The above command will save the whole rule-set to a file called /etc/iptables.rules with byte and packet counters still intact.

Solution #2 /etc/network/if-pre-up.d and ../if-post-down.d

NOTE: This solution uses iptables-save -c to save the counters. Just remove the -c to only save the rules.
Alternatively you could add the iptables-restore and iptables-save to the if-pre-up.d and if-post-down.d directories in the /etc/network directory instead of modifying /etc/network/interface directly.
The script /etc/network/if-pre-up.d/iptablesload will contain:
#!/bin/sh
iptables-restore < /etc/iptables.rules
exit 0
and /etc/network/if-post-down.d/iptablessave will contain:
#!/bin/sh
iptables-save -c > /etc/iptables.rules
if [ -f /etc/iptables.downrules ]; then
   iptables-restore < /etc/iptables.downrules
fi
exit 0
Then be sure to give both scripts execute permissions:
# chmod +x /etc/network/if-post-down.d/iptablessave
# chmod +x /etc/network/if-pre-up.d/iptablesload

Solution #3 iptables-persistant

Install and use the iptables-persistent package.

Configuration on Startup for NetworkManager

NetworkManager includes the ability to run scripts when it activates or deactivates an interface. To save iptables rules on shutdown, and to restore them on startup, we are going to create such a script. To begin, press Alt+F2 and enter this command:
For Ubuntu:
$ gksudo gedit /etc/NetworkManager/dispatcher.d/01firewall
For Kubuntu:
kdesu kate /etc/NetworkManager/dispatcher.d/01firewall
Then, paste this script into your editor, save, and exit the editor.
if [ -x /usr/bin/logger ]; then
        LOGGER="/usr/bin/logger -s -p daemon.info -t FirewallHandler"
else
        LOGGER=echo
fi

case "$2" in
        up)
                if [ ! -r /etc/iptables.rules ]; then
                        ${LOGGER} "No iptables rules exist to restore."
                        return
                fi
                if [ ! -x /sbin/iptables-restore ]; then
                        ${LOGGER} "No program exists to restore iptables rules."
                        return
                fi
                ${LOGGER} "Restoring iptables rules"
                /sbin/iptables-restore -c < /etc/iptables.rules
                ;;
        down)
                if [ ! -x /sbin/iptables-save ]; then
                        ${LOGGER} "No program exists to save iptables rules."
                        return
                fi
                ${LOGGER} "Saving iptables rules."
                /sbin/iptables-save -c > /etc/iptables.rules
                ;;
        *)
                ;;
esac
Finally, we need to make sure NetworkManager can execute this script. In a terminal window, enter this command:
# chmod +x /etc/NetworkManager/dispatcher.d/01firewall

Tips

If you manually edit iptables on a regular basis

The above steps go over how to setup your firewall rules and presume they will be relatively static (and for most people they should be). But if you do a lot of development work, you may want to have your iptables saved everytime you reboot. You could add a line like this one in /etc/network/interfaces:
pre-up iptables-restore < /etc/iptables.rules
  post-down iptables-save > /etc/iptables.rules
The line "post-down iptables-save > /etc/iptables.rules" will save the rules to be used on the next boot.

Using iptables-save/restore to test rules

If you edit your iptables beyond this tutorial, you may want to use the iptables-save and iptables-restore feature to edit and test your rules. To do this open the rules file in your favorite text editor (in this example gedit).
$ sudo iptables-save > /etc/iptables.rules
$ gksudo gedit /etc/iptables.rules
You will have a file that appears similiar to (following the example above):
# Generated by iptables-save v1.3.1 on Sun Apr 23 06:19:53 2006
*filter
:INPUT ACCEPT [368:102354]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [92952:20764374]
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
-A INPUT -j DROP
COMMIT
# Completed on Sun Apr 23 06:19:53 2006
Notice that these are iptables commands minus the iptable command. Feel free to edit this to file and save when complete. Then to test simply:
# iptables-restore < /etc/iptables.rules
NOTE: With iptables 1.4.1.1-1 and above, a script allow you to test your new rules without risking to brick your remote server. If you are applying the rules on a remote server, you should consider testing it with:
# iptables-apply /etc/iptables.rules
After testing, if you have not added the iptables-save command above to your /etc/network/interfaces remember not to lose your changes:
# iptables-save > /etc/iptables.rules

More detailed Logging

For further detail in your syslog you may want create an additional Chain. This will be a very brief example of my /etc/iptables.rules showing how I setup my iptables to log to syslog:
# Generated by iptables-save v1.3.1 on Sun Apr 23 05:32:09 2006
*filter
:INPUT ACCEPT [273:55355]
:FORWARD ACCEPT [0:0]
:LOGNDROP - [0:0]
:OUTPUT ACCEPT [92376:20668252]
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -j LOGNDROP
-A LOGNDROP -p tcp -m limit --limit 5/min -j LOG --log-prefix "Denied TCP: " --log-level 7
-A LOGNDROP -p udp -m limit --limit 5/min -j LOG --log-prefix "Denied UDP: " --log-level 7
-A LOGNDROP -p icmp -m limit --limit 5/min -j LOG --log-prefix "Denied ICMP: " --log-level 7
-A LOGNDROP -j DROP
COMMIT
# Completed on Sun Apr 23 05:32:09 2006
Note a new CHAIN called LOGNDROP at the top of the file. Also, the standard DROP at the bottom of the INPUT chain is replaced with LOGNDROP and add protocol descriptions so it makes sense looking at the log. Lastly we drop the traffic at the end of the LOGNDROP chain. The following gives some idea of what is happening:
  • --limit sets the number of times to log the same rule to syslog
  • --log-prefix "Denied..." adds a prefix to make finding in the syslog easier
  • --log-level 7 sets the syslog level to informational (see man syslog for more detail, but you can probably leave this)

Disabling the firewall

If you need to disable the firewall temporarily, you can flush all the rules using
# iptables -F
or create a script using text editor such as nano
# nano -w /root/fw.stop
echo "Stopping firewall and allowing everyone..."
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
Make sure you can execute the script
$ chmod +x /root/fw.stop
You can run the script
$ /root/fw.stop
 
IPTables tu memiliki tiga macam daftar aturan bawaan dalam tabel 
penyaringan, daftar tersebut dinamakan rantai firewall (firewall chain) 
atau sering disebut chain saja. Ketiga chain tersebut adalah INPUT, 
OUTPUT dan FORWARD.

Pada diagram tersebut, lingkaran 
menggambarkan ketiga rantai atau chain. Pada saat sebuah paket sampai 
pada sebuah lingkaran, maka disitulah terjadi proses penyaringan. Rantai
 akan memutuskan nasib paket tersebut. Apabila keputusannnya adalah 
DROP, maka paket tersebut akan di-drop. Tetapi jika rantai memutuskan 
untuk ACCEPT, maka paket akan dilewatkan melalui diagram tersebut.

Sebuah
 rantai adalah aturan-aturan yang telah ditentukan. Setiap aturan 
menyatakan “jika paket memiliki informasi awal (header) seperti ini, 
maka inilah yang harus dilakukan terhadap paket�. Jika aturan tersebut
 tidak sesuai dengan paket, maka aturan berikutnya akan memproses paket 
tersebut. Apabila sampai aturan terakhir yang ada, paket tersebut belum 
memenuhi salah satu aturan, maka kernel akan melihat kebijakan bawaan 
(default) untuk memutuskan apa yang harus dilakukan kepada paket 
tersebut. Ada dua kebijakan bawaan yaitu default DROP dan default 
ACCEPT.

Jalannya sebuah paket melalui diagram tersebut bisa dicontohkan sebagai berikut:

Perjalanan paket yang diforward ke host yang lain
 
1. Paket berada pada jaringan fisik, contoh internet.
2. Paket masuk ke interface jaringan, contoh eth0.
3.
 Paket masuk ke chain PREROUTING pada table Mangle. Chain ini berfungsi 
untuk me-mangle (menghaluskan) paket, seperti merubah TOS, TTL dan 
lain-lain.
4. Paket masuk ke chain PREROUTING pada tabel nat. Chain 
ini berfungsi utamanya untuk melakukan DNAT (Destination Network Address
 Translation).
5. Paket mengalami keputusan routing, apakah akan diproses oleh host lokal atau diteruskan ke host lain.
6. Paket masuk ke chain FORWARD pada tabel filter. Disinlah proses pemfilteran yang utama terjadi.
7.
 Paket masuk ke chain POSTROUTING pada tabel nat. Chain ini berfungsi 
utamanya untuk melakukan SNAT (Source Network Address Translation).
8. Paket keluar menuju interface jaringan, contoh eth1.
9. Paket kembali berada pada jaringan fisik, contoh LAN.

Perjalanan paket yang ditujukan bagi host lokal

1. Paket berada dalam jaringan fisik, contoh internet.
2. Paket masuk ke interface jaringan, contoh eth0.
3. Paket masuk ke chain PREROUTING pada tabel mangle.
4. Paket masuk ke chain PREROUTING pada tabel nat.
5. Paket mengalami keputusan routing.
6. Paket masuk ke chain INPUT pada tabel filter untuk mengalami proses penyaringan.
7. Paket akan diterima oleh aplikasi lokal.

Perjalanan paket yang berasal dari host lokal

1. Aplikasi lokal menghasilkan paket data yang akan dikirimkan melalui jaringan.
2. Paket memasuki chain OUTPUT pada tabel mangle.
3. Paket memasuki chain OUTPUT pada tabel nat.
4. Paket memasuki chain OUTPUT pada tabel filter.
5. Paket mengalami keputusan routing, seperti ke mana paket harus pergi dan melalui interface mana.
6. Paket masuk ke chain POSTROUTING pada tabel NAT.
7. Paket masuk ke interface jaringan, contoh eth0.
8. Paket berada pada jaringan fisik, contoh internet.

3. Sintaks IPTables
iptables [-t table] command [match] [target/jump]

dan terakhir informasi bt u

IPTables
 juga memiliki 3 buah tabel, yaitu NAT, MANGLE dan FILTER. Penggunannya 
disesuaikan dengan sifat dan karakteristik masing-masing. Fungsi dari 
masing-masing tabel adalah :

NAT : Secara umum digunakan untuk 
melakukan Network Address Translation. NAT adalah penggantian field 
alamat asal atau alamat tujuan dari sebuah paket.
MANGLE : Digunakan untuk melakukan penghalusan (mangle) paket, seperti TTL, TOS dan MARK.
FILTER
 : Secara umum, inilah pemfilteran paket yang sesungguhnya.. Di sini 
bisa dintukan apakah paket akan di-DROP, LOG, ACCEPT atau REJECT

Command
 pada baris perintah IPTables akan memberitahu apa yang harus dilakukan 
terhadap lanjutan sintaks perintah. Umumnya dilakukan penambahan atau 
penghapusan sesuatu dari tabel atau yang lain. 

Selasa, 05 Oktober 2010

VLAN


Pemanfaatan teknologi jaringan komputer sebagai media komunikasi data hingga
saat ini semakin meningkat. Kebutuhan atas penggunaan bersama resources yang
ada dalam jaringan baik software maupun hardware telah mengakibatkan timbulnya
berbagai pengembangan teknologi jaringan itu sendiri. Seiring dengan semakin
tingginya tingkat kebutuhan dan semakin banyaknya pengguna jaringan yang
menginginkan suatu bentuk jaringan yang dapat memberikan hasil maksimal baik
dari segi efisiensi maupun peningkatan keamanan jaringan itu sendiri.
Berlandaskan pada keinginan-keinginan tersebut, maka upaya-upaya penyempurnaan
terus dilakukan oleh berbagai pihak. Dengan memanfaatkan berbagai tekhnik
khususnya teknik subnetting dan penggunaan hardware yang lebih baik
(antara lain switch) maka muncullah konsep Virtual Local Area Network (VLAN)
yang diharapkan dapat memberikan hasil yang lebih baik dibanding
Local area Network (LAN).

PENGERTIAN

VLAN merupakan suatu model jaringan yang tidak terbatas pada lokasi fisik
seperti LAN , hal ini mengakibatkan suatu network dapat dikonfigurasi secara
virtual tanpa harus menuruti lokasi fisik peralatan. Tujuannya adalah agar membantu operasi switch LAN berjalan dengan efisien, dengan cara memelihara isi informasi dari suatu trafik dengan port yang spesifik. Konsep utama dari VLAN ini adalah dengan cara menempatkan data berdasarkan penempatan port. Penggunaan VLAN akan
membuat pengaturan jaringan menjadi sangat fleksibel dimana dapat dibuat
segmen yang bergantung pada organisasi atau departemen, tanpa bergantung pada
lokasi workstation seperti pada gambar dibawah ini


Gambar Jaringan VLAN



BAGAIMANA VLAN BEKERJA

VLAN diklasifikasikan berdasarkan metode (tipe) yang digunakan untuk
mengklasifikasikannya, baik menggunakan port, MAC addresses dsb. Semua
informasi yang mengandung penandaan/pengalamatan suatu vlan (tagging)
di simpan dalam suatu database (tabel), jika penandaannya berdasarkan
port yang digunakan maka database harus mengindikasikan port-port yang
digunakan oleh VLAN. Untuk mengaturnya maka biasanya digunakan
switch/bridge yang manageable atau yang bisa di atur. Switch/bridge
inilah yang bertanggung jawab menyimpan semua informasi dan konfigurasi
suatu VLAN dan dipastikan semua switch/bridge memiliki informasi yang sama.
Switch akan menentukan kemana data-data akan diteruskan dan sebagainya.
atau dapat pula digunakan suatu software pengalamatan (bridging software)
yang berfungsi mencatat/menandai suatu VLAN beserta workstation yang
didalamnya.untuk menghubungkan antar VLAN dibutuhkan router.

TIPE TIPE VLAN

Keanggotaan dalam suatu VLAN dapat di klasifikasikan berdasarkan port
yang di gunakan , MAC address, tipe protokol.

1. Berdasarkan Port

Keanggotaan pada suatu VLAN dapat di dasarkan pada port yang di gunakan oleh
VLAN tersebut. Sebagai contoh, pada bridge/switch dengan 4 port, port 1, 2,
dan 4 merupakan VLAN 1 sedang port 3 dimiliki oleh VLAN 2, lihat tabel:

Tabel port dan VLAN

Port 1 2 3 4
VLAN 2 2 1 2

Kelemahannya adalah user tidak bisa untuk berpindah pindah, apabila harus
berpindah maka Network administrator harus mengkonfigurasikan ulang.

2. Berdasarkan MAC Address

Keanggotaan suatu VLAN didasarkan pada MAC address dari setiap workstation
/komputer yang dimiliki oleh user. Switch mendeteksi/mencatat semua MAC
address yang dimiliki oleh setiap Virtual LAN. MAC address merupakan suatu
bagian yang dimiliki oleh NIC (Network Interface Card) di setiap workstation.
Kelebihannya apabila user berpindah pindah maka dia akan tetap terkonfigurasi
sebagai anggota dari VLAN tersebut.Sedangkan kekurangannya bahwa setiap mesin
harus di konfigurasikan secara manual , dan untuk jaringan yang memiliki
ratusan workstation maka tipe ini kurang efissien untuk dilakukan.

Tabel MAC address dan VLAN

MAC address 132516617738 272389579355 536666337777 24444125556
VLAN 1 2 2 1

3. Berdasarkan tipe protokol yang digunakan
Keanggotaan VLAN juga bisa berdasarkan protocol yang digunakan, lihat tabel

Tabel Protokol dan VLAN

Protokol IP IPX
VLAN 1 2

4. Berdasarkan Alamat Subnet IP
Subnet IP address pada suatu jaringan juga dapat digunakan untuk mengklasifikasi
suatu VLAN

Tabel IP Subnet dan VLAN

IP subnet 22.3.24 46.20.45
VLAN 1 2


Konfigurasi ini tidak berhubungan dengan routing pada jaringan dan juga tidak
mempermasalahkan funggsi router.IP address digunakan untuk memetakan keanggotaan
VLAN.Keuntungannya seorang user tidak perlu mengkonfigurasikan ulang alamatnya
di jaringan apabila berpindah tempat, hanya saja karena bekerja di layer yang lebih
tinggi maka akan sedikit lebih lambat untuk meneruskan paket di banding
menggunakan MAC addresses.

5. Berdasarkan aplikasi atau kombinasi lain
Sangat dimungkinkan untuk menentukan suatu VLAN berdasarkan aplikasi yang
dijalankan, atau kombinasi dari semua tipe di atas untuk diterapkan pada suatu
jaringan. Misalkan: aplikasi FTP (file transfer protocol) hanya bias digunakan
oleh VLAN 1 dan Telnet hanya bisa digunakan pada VLAN 2.



PERBEDAAN MENDASAR ANTARA LAN DAN VLAN

Perbedaan yang sangat jelas dari model jaringan Local Area Network dengan
Virtual Local Area Network adalah bahwa bentuk jaringan dengan model Local
Area Network sangat bergantung pada letak/fisik dari workstation, serta
penggunaan hub dan repeater sebagai perangkat jaringan yang memiliki beberapa
kelemahan. Sedangkan yang menjadi salah satu kelebihan dari model jaringan
dengan VLAN adalah bahwa tiap-tiap workstation/user yang tergabung dalam
satu VLAN/bagian (organisasi, kelompok dsb) dapat tetap saling berhubungan
walaupun terpisah secara fisik. Atau lebih jelas lagi akan dapat kita
lihat perbedaan LAN dan VLAN pada gambar dibawah ini.


Gambar konfigurasi LAN


[hub]-[1]-[1]-[1] <-- lan 1/di lantai 1
|
[x]--[hub]-[2]-[2]-[2] <-- lan 2/di lantai 2
|
[hub]-[3]-[3]-[3] <-- lan 3/di lantai 3



Gambar konfigurasi VLAN



[switch]-[1]-[3]-[2]
|
[x]--[switch]-[3]-[1]-[1]
|
[switch]-[2]-[3]-[1]


[x] = router [1] = pc termasuk lan 1 ; [2] = lan 2 ; [3]= lan 3


Terlihat jelas VLAN telah merubah batasan fisik yang selama ini tidak dapat
diatasi oleh LAN. Keuntungan inilah yang diharapkan dapat memberikan
kemudahan-kemudahan baik secara teknis dan operasional.


PERBANDINGAN VLAN DAN LAN

A.Perbandingan Tingkat Keamanan

Penggunaan LAN telah memungkinkan semua komputer yang terhubung dalam jaringan
dapat bertukar data atau dengan kata lain berhubungan. Kerjasama ini semakin
berkembang dari hanya pertukaran data hingga penggunaan peralatan secara bersama
(resource sharing atau disebut juga hardware sharing).10 LAN memungkinkan data
tersebar secara broadcast keseluruh jaringan, hal ini akan mengakibatkan mudahnya
pengguna yang tidak dikenal (unauthorized user) untuk dapat mengakses semua
bagian dari broadcast. Semakin besar broadcast, maka semakin besar akses yang
didapat, kecuali hub yang dipakai diberi fungsi kontrol keamanan.

VLAN yang merupakan hasil konfigurasi switch menyebabkan setiap port switch
diterapkan menjadi milik suatu VLAN. Oleh karena berada dalam satu segmen,
port-port yang bernaung dibawah suatu VLAN dapat saling berkomunikasi langsung.
Sedangkan port-port yang berada di luar VLAN tersebut atau berada dalam
naungan VLAN lain, tidak dapat saling berkomunikasi langsung karena VLAN tidak
meneruskan broadcast.

VLAN yang memiliki kemampuan untuk memberikan keuntungan tambahan dalam
hal keamanan jaringan tidak menyediakan pembagian/penggunaan media/data
dalam suatu jaringan secara keseluruhan. Switch pada jaringan menciptakan
batas-batas yang hanya dapat digunakan oleh komputer yang termasuk dalam
VLAN tersebut. Hal ini mengakibatkan administrator dapat dengan mudah
mensegmentasi pengguna, terutama dalam hal penggunaan media/data yang
bersifat rahasia (sensitive information) kepada seluruh pengguna jaringan
yang tergabung secara fisik.

Keamanan yang diberikan oleh VLAN meskipun lebih baik dari LAN,belum menjamin
keamanan jaringan secara keseluruhan dan juga belum dapat dianggap cukup
untuk menanggulangi seluruh masalah keamanan .VLAN masih sangat memerlukan
berbagai tambahan untuk meningkatkan keamanan jaringan itu sendiri seperti
firewall, pembatasan pengguna secara akses perindividu, intrusion detection,
pengendalian jumlah dan besarnya broadcast domain, enkripsi jaringan, dsb.

Dukungan Tingkat keamanan yang lebih baik dari LAN inilah yang dapat
dijadikan suatu nilai tambah dari penggunaan VLAN sebagai sistem jaringan.
Salah satu kelebihan yang diberikan oleh penggunaan VLAN adalah kontrol
administrasi secara terpusat, artinya aplikasi dari manajemen VLAN dapat
dikonfigurasikan, diatur dan diawasi secara terpusat, pengendalian broadcast
jaringan, rencana perpindahan, penambahan, perubahan dan pengaturan akses
khusus ke dalam jaringan serta mendapatkan media/data yang memiliki fungsi
penting dalam perencanaan dan administrasi di dalam grup tersebut semuanya
dapat dilakukan secara terpusat. Dengan adanya pengontrolan manajemen
secara terpusat maka administrator jaringan juga dapat mengelompokkan
grup-grup VLAN secara spesifik berdasarkan pengguna dan port dari switch
yang digunakan, mengatur tingkat keamanan, mengambil dan menyebar data
melewati jalur yang ada, mengkonfigurasi komunikasi yang melewati switch,
dan memonitor lalu lintas data serta penggunaan bandwidth dari VLAN saat
melalui tempat-tempat yang rawan di dalam jaringan.


B.Perbandingan Tingkat Efisiensi

Untuk dapat mengetahui perbandingan tingkat efisiensinya maka perlu di
ketahui kelebihan yang diberikan oleh VLAN itu sendiri diantaranya:

•Meningkatkan Performa Jaringan
LAN yang menggunakan hub dan repeater untuk menghubungkan peralatan
komputer satu dengan lain yang bekerja dilapisan physical memiliki
kelemahan, peralatan ini hanya meneruskan sinyal tanpa memiliki
pengetahuan mengenai alamat-alamat yang dituju. Peralatan ini juga
hanya memiliki satu domain collision sehingga bila salah satu port
sibuk maka port-port yang lain harus menunggu. Walaupun peralatan
dihubungkan ke port-port yang berlainan dari hub.

Protokol ethernet atau IEEE 802.3 (biasa digunakan pada LAN) menggunakan
mekanisme yang disebut Carrier Sense Multiple Accsess Collision Detection
(CSMA/CD) yaitu suatu cara dimana peralatan memeriksa jaringan terlebih
dahulu apakah ada pengiriman data oleh pihak lain. Jika tidak ada
pengiriman data oleh pihak lain yang dideteksi, baru pengiriman data dilakukan.
Bila terdapat dua data yang dikirimkan dalam waktu bersamaan,
maka terjadilah tabrakan (collision) data pada jaringan. Oleh sebab itu
jaringan ethernet dipakai hanya untuk transmisi half duplex, yaitu pada
suatu saat hanya dapat mengirim atau menerima saja.

Berbeda dari hub yang digunakan pada jaringan ethernet (LAN), switch yang
bekerja pada lapisan datalink memiliki keunggulan dimana setiap port
didalam switch memiliki domain collision sendiri-sendiri. Oleh sebab
itu sebab itu switch sering disebut juga multiport bridge. Switch
mempunyai tabel penterjemah pusat yang memiliki daftar penterjemah untuk
semua port. Switch menciptakan jalur yang aman dari port pengirim dan
port penerima sehingga jika dua host sedang berkomunikasi lewat jalur
tersebut, mereka tidak mengganggu segmen lainnya. Jadi jika satu port
sibuk, port-port lainnya tetap dapat berfungsi.

Switch memungkinkan transmisi full-duplex untuk hubungan ke port dimana
pengiriman dan penerimaan dapat dilakukan bersamaan dengan penggunakan
jalur tersebut diatas. Persyaratan untuk dapat mengadakan hubungan
full-duplex adalah hanya satu komputer atau server saja yang dapat dihubungkan
ke satu port dari switch. Komputer tersebut harus memiliki network card
yang mampu mengadakan hubungan full-duflex, serta collision detection
dan loopback harus disable.

Switch pula yang memungkinkan terjadinya segmentasi pada jaringan atau
dengan kata lain switch-lah yang membentuk VLAN.Dengan adanya segmentasi
yang membatasi jalur broadcast akan mengakibatkan suatu VLAN tidak dapat
menerima dan mengirimkan jalur broadcast ke VLAN lainnya. Hal ini secara
nyata akan mengurangi penggunaan jalur broadcast secara keseluruhan,
mengurangi penggunaan bandwidth bagi pengguna, mengurangi kemungkinan
terjadinya broadcast storms (badai siaran) yang dapat menyebabkan
kemacetan total di jaringan komputer.

Administrator jaringan dapat dengan mudah mengontrol ukuran dari jalur
broadcast dengan cara mengurangi besarnya broadcast secara keseluruhan,
membatasi jumlah port switch yang digunakan dalam satu VLAN serta jumlah
pengguna yang tergabung dalam suatu VLAN.

•Terlepas dari Topologi Secara Fisik

Jika jumlah server dan workstation berjumlah banyak dan berada di lantai
dan gedung yang berlainan, serta dengan para personel yang juga tersebar
di berbagai tempat, maka akan lebih sulit bagi administrator jaringan
yang menggunakan sistem LAN untuk mengaturnya, dikarenakan akan banyak
sekali diperlukan peralatan untuk menghubungkannya. Belum lagi apabila
terjadi perubahan stuktur organisasi yang artinya akan terjadi banyak
perubahan letak personil akibat hal tersebut.

Permasalahan juga timbul dengan jaringan yang penggunanya tersebar di
berbagai tempat artinya tidak terletak dalam satu lokasi tertentu secara
fisik. LAN yang dapat didefinisikan sebagai network atau jaringan sejumlah
sistem komputer yang lokasinya terbatas secara fisik, misalnya dalam satu
gedung, satu komplek, dan bahkan ada yang menentukan LAN berdasarkan jaraknya
sangat sulit untuk dapat mengatasi masalah ini.

Sedangkan VLAN yang memberikan kebebasan terhadap batasan lokasi secara
fisik dengan mengijinkan workgroup yang terpisah lokasinya atau berlainan
gedung, atau tersebar untuk dapat terhubung secara logik ke jaringan
meskipun hanya satu pengguna. Jika infrastuktur secara fisik telah
terinstalasi, maka hal ini tidak menjadi masalah untuk menambah port
bagi VLAN yang baru jika organisasi atau departemen diperluas dan tiap
bagian dipindah. Hal ini memberikan kemudahan dalam hal pemindahan personel,
dan tidak terlalu sulit untuk memindahkan pralatan yang ada
serta konfigurasinya dari satu tempat ke tempat lain.Untuk para pengguna
yang terletak berlainan lokasi maka administrator jaringan hanya perlu
menkofigurasikannya saja dalam satu port yang tergabung dalam satu VLAN
yang dialokasikan untuk bagiannya sehingga pengguna tersebut dapat bekerja
dalam bidangnya tanpa memikirkan apakah ia harus dalam ruangan yang sama
dengan rekan-rekannya.

Hal ini juga mengurangi biaya yang dikeluarkan untuk membangun suatu
jaringan baru apabila terjadi restrukturisasi pada suatu perusahaan,
karena pada LAN semakin banyak terjadi perpindahan makin banyak pula
kebutuhan akan pengkabelan ulang, hampir keseluruhan perpindahan dan
perubahan membutuhkan konfigurasi ulang hub dan router.

VLAN memberikan mekanisme secara efektif untuk mengontrol perubahan ini
serta mengurangi banyak biaya untuk kebutuhan akan mengkonfigurasi ulang
hub dan router. Pengguna VLAN dapat tetap berbagi dalam satu network
address yang sama apabila ia tetap terhubung dalam satu swith port yang
sama meskipun tidak dalam satu lokasi. Permasalahan dalam hal perubahan
lokasi dapat diselesaikan dengan membuat komputer pengguna tergabung
kedalam port pada VLAN tersebut dan mengkonfigurasikan switch pada VLAN
tersebut.

•Mengembangkan Manajemen Jaringan

VLAN memberikan kemudahan, fleksibilitas, serta sedikitnya biaya yang
dikeluarkan untuk membangunnya. VLAN membuat jaringan yang besar lebih
mudah untuk diatur manajemennya karena VLAN mampu untuk melakukan
konfigurasi secara terpusat terhadap peralatan yang ada pada lokasi
yang terpisah. Dengan kemampuan VLAN untuk melakukan konfigurasi
secara terpusat, maka sangat menguntungkan bagi pengembangan manajemen
jaringan.

Dengan keunggulan yang diberikan oleh VLAN maka ada baiknya bagi
setiap pengguna LAN untuk mulai beralih ke VLAN. VLAN yang merupakan
pengembangan dari teknologi LAN ini tidak terlalu banyak melakukan
perubahan, tetapi telah dapat memberikan berbagai tambahan pelayanan
pada teknologi jaringan.