Rabu, 01 Mei 2013

The Dark Knight Review

Saya suka dengan ”ide” Batman sejak kecil.
Bruce Wayne punya segalanya. Kecerdasan diatas rata-rata, kekayaan yang tak terbatas dari ”Wayne Industries”, idealisme, dan, akses terhadap teknologi industrial dan militer supercanggih.
Dan sebagai Batman, dia bisa memakai semua itu untuk memburu penjahat-penjahat paling gila di Gotham. Joker, Two Face, Enygma, Penguin. Dan sosok misterius Batman, bisa melakukan hal-hal yang tidak mungkin bisa dilakukan dalam batas-batas hukum normal. Melakukan apapun, yang diperlukan untuk membawa keadilan.

 The Dark Knight”.
Dan, ini adalah film yang bahkan jauh lebih besar dan dahsyat dari film batman sebelumnya. Ini bukan sekedar film dengan rating bintang 4. Ini adalah film spektakuler dengan skala cerita dan karakter yang lebih besar dan rumit, dan bahkan cukup pantas mendapat nominasi film terbaik Oscar tahun ini.

Dan ini adalah satu keunggulan Dark Knight dari Batman Begins.




”This city deserves a better class
of criminal”
The Joker





The Joker, penjahat psikopat yang dimainkan Heath Ledger. Dan Heath telah benar-benar menghilang dalam kegilaan karakter The Joker. Dan dalam film ini, kita bisa merasakan rasa ngeri yang ditimbulkan dari penampilannya. Dia adalah ancaman yang nyata terhadap Batman dan Gotham.

The Science of Evil

Tokoh-tokoh jahat yang paling diingat dalam sejarah film selalu memancarkan aura jahat dalam penampilannya.
Darth Vader, dalam film Star Wars menghabisi seluruh planet sekedar untuk mengorek keterangan dari Princess Leia (A New Hope). Hannibal Lecter (Silence of The Lambs), senang menyantap organ-organ tubuh korbannya sambil menikmati musik klasik. Atau Amon Goeth, perwira Nazi psikopat dalam film ”Schindler’s List” yang senang menteror para tahanan Yahudi. Mereka bukan sekedar tokoh jahat, mereka adalah personifikasi dari iblis. Kengerian dan mimpi buruk.

Dan "The Joker" versi Heath punya aura itu.
He is pure evil. Dia menghabisi orang-orang yang kebetulan menghalanginya tanpa peduli, bahkan menikmatinya. Dia senang memain-mainkan pisaunya di wajah orang lain. Dia psikopat, setara Hannibal Lecter. Tapi dari sisi ambisi gila dan kejeniusannya, The Joker bahkan lebih besar dari Lecter. Dia ingin merampok bank terbesar, mempermainkan seluruh geng mafia yang berkuasa, dan menghabisi Batman. Tapi ambisinya hanya untuk satu hal. Menciptakan Kehancuran dan Kekacauan bagi seluruh Gotham. Dan Heath Ledger membawakannya dengan kualitas akting yang mengagumkan.

Penulis sekaligus sutradaranya, Christopher Nolan juga berhasil menciptakan The Joker yang paling berbahaya. The Joker yang sangat licik, sekaligus mempunyai kemampuan berpikir besar dan strategis untuk merusak Gotham, dan bahkan sosok dari ”Batman” itu sendiri. Dan dia melakukannya sambil bersenang-senang.

Well, untunglah Batman tidak gampang menyerah..

Inferno, Novel Terbaru Dan Brown




Gambar: dailygrail.comGambar: dailygrail.com



Setelah menanti selama tiga tahun, para penggemar Dan Brown kini dapat segera menikmati aksi Robert Langdon, profesor simbologi Harvard, yang selalu terlibat petualangan-petualangan seru dan menegangkan dalam mengungkap berbagai rahasia yang masih terselubung kabut misteri. Kali ini, Langdon akan kembali dan menguak misteri terbesar dalam sebuah mahakarya sastra, yang tersembunyi di jantung Italia.
Novel terbaru Dan Brown yang judulnya baru terkuak Selasa (15/01) waktu Amerika Serikat ini, sempat menimbulkan kehebohan tersendiri di kalangan para penggemarnya. Dan Brown menggunakan cara yang unik dalam mengungkapkan judul novel terbarunya ini. Ia mengajak para penggemarnya di seluruh dunia untuk memecahkan petunjuk dari sebuah gambar rahasia yang terdapat di situs TODAY.com, lalu mengajak mereka untuk menebak judulnya, dengan memanfaatkan media sosial, seperti Twitter dan Facebook.
Novel Dan Brown yang akan diterbitkan pada 14 Mei ini akan memiliki hubungan erat dengan mahakarya sastra Italia, Divina Commedia atau yang dikenal dengan nama Divine Comedy dalam bahasa Inggris. Puisi karya sastrawan besar Italia, Dante, ini menceritakan perjalanan Dante—yang dipandu oleh Virgil—dalam mengunjungi tiga alam, Inferno (neraka), Purgatorio (api penyucian), dan Paradiso (surga). Inferno, yang merupakan awal dari karya ini adalah judul yang dipilih oleh Dan Brown untuk novel terbarunya.
Sejak bulan Mei 2012, Brown memang telah mengumumkan bahwa ia sedang menulis sebuah buku baru, meskipun ia menutupi topik yang sedang ditulisnya. Brown baru mengungkapkan lebih banyak informasi—menjelang penerbitan—bahwa novel ini akan berlatar di Eropa, di salah satu tempat paling mengagumkan yang pernah dikunjungi olehnya. Sama seperti Angels & Demon, Brown kembali menggunakan Italia sebagai latar novelnya, dan melanjutkan petualangan simbolog favorit kita, Robert Langdon.
“Meskipun aku telah mempelajari Inferno Dante sebelumnya, hanya baru-baru ini saja, yaitu ketika aku melakukan penelitian ke Florence, aku mulai menyadari pengaruh karya Dante dalam dunia modern.”

Inilah gambar yang menjadi teka-teki sebelum Dan Brown mengungkapkan judul novelnya (Gambar: today.com)Inilah gambar yang menjadi teka-teki sebelum Dan Brown mengungkapkan judul novelnya (Gambar: today.com)
Divine Comedy, yang menjadi inspirasi Brown dalam menulis Inferno, merupakan salah satu mahakarya di dunia kesusasteraan, yang ditulis Dante di antara tahun 1308-1321. Yang menjadi misteri, menurut Italian Dante Society, saat itu tidak ada satupun naskah asli Dante yang selamat, meskipun tertinggal salinan yang merupakan sisa dari cetakan sebelumnya. Anda bisa melihat versi gratis bagian pertama karya Dante ini melalui website Project Gutenberg dalam tautan ini.

“Melalui novel baru ini, aku merasa sangat bersemangat untuk membawa pembaca dalam sebuah petualangan jauh menuju ke dalam dunia yang misterius... area yang penuh dengan kode, simbol, dan jalan-jalan rahasia,” tutur Dan Brown mengenai Inferno.
Inferno rencananya akan diterbitkan oleh penerbit Doubleday pada 14 Mei 2013 mendatang. Akankah karya ini kembali mengikuti sukses para pendahulunya, Angels & Demons, The Da Vinci Code, dan The Lost Symbol, yang telah terjual lebih dari 80 juta kopi di seluruh dunia dan bertengger dalam jajaran buku-buku terlaris sepanjang masa? 

[Mizan.com/Dari berbagai sumber]

ER Diagram

ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi.
ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol. Pada dasarnya ada tiga simbol yang digunakan, yaitu :

a. Entiti
Entiti merupakan objek yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain (Fathansyah, 1999: 30). Simbol dari entiti ini biasanya digambarkan dengan persegi panjang.

Contoh
�� Individu : pegawai,pelanggan, mahasiswa,distributor.
�� Tempat : ruang,bangunan,kantor,lapangan,kampus.
�� Obyek: buku,motor,paket software,produk
�� Peristiwa: pendaftaran,pemesanan, penagihan
�� Konsep : rekening,kualifikasi.

b. Atribut
Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakteristik dari entitas tersebut. Isi dari atribut mempunyai sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain. Gambar atribut diwakili oleh simbol elips.

c. Hubungan / Relasi
Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Relasi dapat digambarkan sebagai berikut :

Contoh
�� Atribut Pelanggan
�� No KTP/SIM
�� Nama
�� Alamat

Relasi yang terjadi diantara dua himpunan entitas (misalnya A dan B) dalam satu basis data yaitu (Abdul Kadir, 2002: 48) :

1). Satu ke satu (One to one)
Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B.

2). Satu ke banyak (One to many)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat berhubungan dengan satu entitas pada himpunan entitas A.

3). Banyak ke banyak (Many to many)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B.

Notasi-notasi simbolik

  1. Persegi panjang, menyatakan Himpunan Entitas
  2. himpunan Entitas E
  3. Lingkaran/Elip, menyatakan Atribut (Atribut yang berfungsi sebagai key digaris bawahi Atribut a sebagai key
  4. atribut a sebagai key
  5. Belah Ketupat, menyatakan Himpunan Relasi
  6. himpunan Relasi R
  7. Garis, sebagai penghubung antara Himpunan Relasi dengan Himpunan Entitas dan Himpunan Entitas dengan Atributnya
  8. link
  9. Kardinalitas Relasi, dinyatakan dengan banyaknya garis cabang atau dengan pemakaian angka (1 dan 1 untuk relasi satu-ke-satu, dan N untuk relasi satu-ke-banyak, atau N dan N untuk relasi banyak-ke-banyak)

    Contoh :

    - Relasi satu-ke-satu (one-to-one)

    realasi satu-ke-satu
    Keterangan :
    Gambar diatas menunjukkan relasi antara himpunan entitas Dosen dengan himpunan entitas Jurusan. Himpunan relasinya diber nama ‘Mengepalai’. Pada relasi ini, setiap dosen paling banyak mengepalai satu jurusan dan setiap jurusan pasti dikepalai oleh paling banyak satu orang dosen.
    Atribut key pada himpunan relasi ‘Mengepalai’ yakni nama dosen dan kode jur disebut sebagai kunci tamu Key Asing (Foreign Key), yang merupakan Primary Key dari masing-masing himpunan entitas.

    - Relasi satu-ke-banyak (one-to-many)

    relasi satu-ke-banyak
    Keterangan :
    Gambar diatas adalah relasi antara himpunan entitas Dosen dengan himpunan entitas Kuliah, dimana himpunan relasinya diberi nama ‘Mengajar’. Pada relasi ini, setiap dosen dapat mengajar lebih dari satu mata kuliah, sedang setiap mata kuliah diajar hanya oleh paling banyak satu orang dosen.
    Kemudian pada himpunan relasi Mengajar, terdapat dua atribut tambahan yang bukan berasal dari salah satu himpunan entitas yang dihubungkannya. Hal ini memang dimungkinkan (umum terjadi), sehingga dengan keempat atribut tersebut pada himpunan relasi mengajar, dapat diketahui jadwal pelaksanaan setiap mata kuliah beserta dosen yang mengajarkannya.

    - Relasi banyak-ke-banyak (many-to-many)

    relasi banyak-ke-banyak
    Keterangan:
    Himpunan relasi diatas dinamakan ‘Mempelajari’ yang menghubungkan
    antara himpunan entitas Mahasiswa dengan himpunan entitas Kuliah. Pada relasi ini, setiap mahasiswa dapat mempelajari lebih dari satu mata kuliah, demikian juga sebaliknya, setiap mata kuliah dapat dipelajari oleh lebih dari satu orang mahasiswa.

TAHAPAN PEMBUATAN DIAGRAM E-R (Preliminary Design)

  1. Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat.


  2. Menentukan atribut-atribut key dari masing-masing himpunan entitas.


  3. Mengidentifikasi dan menetapkan seluruh himpunan relasi diantara himpunan entitas-himpunan entitas yang ada beserta foreign key-nya.


  4. Menentukan derajat/kardinalitas relasi untuk setiap himpunan relasi.


  5. Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut deskriptif (non key).


DIAGRAM E-R DENGAN KAMUS DATA


Kamus Data :
  • Mahasiswa = {NPM, nm_mhs, alamat_mhs, tgl_lahir}
  • Kuliah = {kd_mk, nm_mk, sks, semester}
  • Dosen = {nm_dos, alamat_dos}
  • Mempelajari = {NPM, kd_mk, nilai}
  • Mengajar = {kd_mk, nm_dos, waktu, ruang}

Sumber :
- http://denissopyan2004.blogspot.com/2009/03/entity-relationship-diagram-erd.html
- http://toka-tiki-toki.blogspot.com/2011/12/diagram-entity-relationship-diagram-e-r.html

Membuat Aplikasi Browser Menggunakan Java


Kali ini kita akan mencoba untuk membuat browser sederhana… browsernya emang ga keren-keren amat.. tapi lumayan lah buat percobaan..hehehe… walaupun aga sedikit ribet dan pusing (maklum bukan buatan saya), tapi kita harus tetap semangat untuk membuat program ini :p..
ni contoh Browsernya
gambar1. browser sederhana
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.JTextPane;
public class MyGoogle {
public static void main(String[] args) {
final JFrame frame = new JFrame();
frame.setSize(450, 200);
frame.setTitle(“My Google: ” + frame.getWidth());
//        frame.setSize(450, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setAlwaysOnTop(true);
frame.getContentPane().setBackground(Color.DARK_GRAY);
// frame.setUndecorated(true);
frame.setLocationRelativeTo(null);
frame.setLayout(new FlowLayout());
final JLabel label = new JLabel(“ENTER  THE  URL”);
label.setFont(new Font(“”, 10, 40));// 10->12, 40->80
label.setForeground(Color.MAGENTA);
frame.add(label);
final JTextField field = new JTextField(25);
field.setToolTipText(“http://www.facebook.com”);
frame.add(field);
JButton button = new JButton(“Search !”);
button.setForeground(Color.BLACK);
button.setBackground(Color.ORANGE);
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
if (field.getText().equals(“”)) {
System.out.println(“tidak ada teks yang ditulis!”);
// JOptionPane.showConfirmDialog(frame, label, “nothing”,
// 1);
JOptionPane.showMessageDialog(frame, label,
“Judul Pesannya”, 1);// —> maksudnya 0=x, 1=i,
// 2=!, 3=?
} else {
// frame.setVisible(false);
JFrame frame2 = new JFrame(“Frame Hasil”);
// frame2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame2.setSize(600, 400);
frame2.setLocationRelativeTo(frame);
final JTextPane textPane = new JTextPane();
final JScrollPane scrollPane = new JScrollPane(textPane);
panggilKoneksi(field, textPane);
frame2.add(scrollPane);
frame2.setVisible(true);
}
}
private void panggilKoneksi(final JTextField field,    final JTextPane textPane) {
try {
URL url = new URL(field.getText());
URLConnection con = url.openConnection();
InputStream is = con.getInputStream();
ByteArrayOutputStream os = new ByteArrayOutputStream();
byte[] b = new byte[10];
int len;
while ((len = is.read(b, 0, b.length)) != -1) {
os.write(b, 0, len);
}
textPane.setText(new String(os.toByteArray()));
os.close();
is.close();
} catch (MalformedURLException e) {
// e.printStackTrace();
// System.out.println(“terjadi kesalahan penulisan url!”);
JLabel label2 = new JLabel(“Salah Tulis di URL.”);
JOptionPane.showMessageDialog(frame, label2,
“Kesalahan Tulis”, 1);
} catch (IOException e) {
// e.printStackTrace();
// System.out.println(“terjadi kesalahan penulisan url!”);
JLabel label3 = new JLabel(“Salah Tulis di URL ini.”);
JOptionPane.showMessageDialog(frame, label3,
“Kesalahan Tulis”, 0);
}
}
});
frame.add(button);
JRadioButton radioButton = new
JRadioButton(” penelusuran dengan web “);
frame.add(radioButton);
JRadioButton radioButton2 = new
JRadioButton(” penelusuran dengan gambar “);
frame.add(radioButton2);
JRadioButtonMenuItem item = new JRadioButtonMenuItem(“choose 1″);
item.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println(“helooo…”);
}
});
frame.add(item);
JRadioButtonMenuItem item2 = new JRadioButtonMenuItem(“choose 2″);
item2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println(“test….”);
}
});
frame.add(item2);
JRadioButtonMenuItem item3 = new JRadioButtonMenuItem(“choose 3″);
item3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println(“test heloo..”);
}
});
frame.add(item3);
JRadioButtonMenuItem item4 = new JRadioButtonMenuItem(“choose 4″);
item4.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println(“terima kasih..”);
System.exit(0);
}
});
frame.add(item4);
frame.setVisible(true);
}
}

Sumber : http://tutorialjavanetbeansmysql.blogspot.com/2012/06/membuat-aplikasi-browser-menggunakan.html

JAVA INHERITANCE


Salah satu konsep dasar dari pemrograman berbasis objek pada java adalah Inheritance, berikut ini sedikit gambaran tentang inheritance. Pada dasarnya, kita melakukan inheritance(pewarisan) untuk membuat suatu class baru(class turunan/subclass) yang masih memiliki sifat atau spesifikasi dari superclass.
Di dalam Java untuk mendeklarasikan suatu class sebagai subclass dilakukan dengan cara menambahkan kata kunci extends setelah deklarasi nama class, kemudian diikuti dengan nama parent class-nya. Kata kunci extends tersebut memberitahu kompiler Java bahwa kita ingin melakukan perluasan class.


Contoh implementasi inheritance :
public class Pegawai {
public String nama;
public double gaji;
}

public class Manajer extends Pegawai {
public String departemen;
}


Pada saat class Manajer menurunkan atau memperluas (extend) class Pegawai, maka ia mewarisi data member yang dipunyai oleh class Pegawai. Dengan demikian, class Manajer mempunyai data member yang diwarisi oleh Pegawai (nama, gaji), ditambah dengan data member yang ia punyai (departemen).

Beberapa aturan tentang pewarisan(inheritance) yang perlu diperhatikan :
1. Java hanya memperkenankan adanya single inheritance. Konsep single inheritance hanya memperbolehkan suatu sublass mempunyai satu parent class. Dengan konsep single inheritance ini, masalah pewarisan akan dapat diamati dengan mudah.
2. Subclass juga merupakan class biasa, maka kita tetap dapat melakukan pewarisan pada subclass ini. Misal : class B merupakan subclass dari class A, kita dapat membuat class baru yang diturunkan dari class B sehingga class baru tersebut akan memiliki apa yang dimiliki oleh class A dan class B.
3. Suatu parent class dapat tidak mewariskan sebagian member-nya kepada subclass-nya. Sejauh mana suatu member dapat diwariskan ke class lain, ataupun suatu member dapat diakses dari class lain, sangat berhubungan dengan access control (kontrol pengaksesan). Di dalam java, kontrol pengaksesan dapat digambarkan dalam tabel berikut ini:


4. Kata kunci super dipakai untuk merujuk pada member dari parent class, sebagaimana kata kunci this yang dipakai untuk merujuk pada member dari class itu sendiri. Adapun format penulisannya adalah sebagai berikut:
super.data_member -> merujuk pada data member pada parent class
super.function_member() -> merujuk pada function member pada parent class
super() -> merujuk pada konstruktor pada parent class

Percobaan 1 : Menggunakan kata kunci super
Berikut ini listing penggunaan kata kunci super.

class Parent {
public int x = 5;
}

class Child extends Parent {
public int x = 10;
public void Info(int x) {
System.out.println("Nilai x sebagai parameter = " + x);
System.out.println("Data member x di class Child = " + this.x);
System.out.println("Data member x di class Parent = " +
super.x);
}

}
public class NilaiX {
public static void main(String args[]) {
Child tes = new Child();
tes.Info(20);
}
}


Ketika program tersebut dijalankan, akan tampak hasil seperti dibawah ini :
Nilai x sebagai parameter = 20
Data member x di class Child = 10
Data member x di class Parent = 5

Percobaan 2 : Kontrol pengaksesan
Buatlah class Pegawai seperti dibawah ini:

public class Pegawai {
private String nama;
public double gaji;
}
Kemudian buatlah class Manajer seperti ini dibawah ini.
public class Manajer extends Pegawai {
public String departemen;
public void IsiData(String n, String d) {
nama=n;
departemen=d;
}
}

Sekarang cobalah untuk mengkompilasi class Manajer diatas. Apa yang terjadi?.
Pesan kesalahan akan muncul seperti ini:

Manajer.java:5: nama has private access in Pegawai
nama=n;

Ini membuktikan bahwa class Manajer tidak mewarisi data member nama dari parent
class-nya(Pegawai).

Algoritma Sorting dan Implementasinya

Buat teman-teman yang lagi belajar bahasa pemrograman C++, nih aku ada algoritma bagian pengurutan (sorting) dari berbagai Metode pengurutan diantaranya Selection sort, buble sort dan insertion sort.

Dibawah ini adalah source code implementasi dari algoritma sorting yang digunakan untuk mengetahui nilai tertinggi dan terendah


#include
#include
#include

void masukan(int x[],int n)
{
 for (int i=1;i<=n;i++)//perulangan untuk inputan array
 {
    cout<<"Masukan Nilai " <>x[i];
 }
}

void tinggi(int x[],int n)
{
 int max,min;
 max = x[1];//sebagai acuan
 min = x[1];
 for (int i=2;i<=n;i++)
 {
  if (max < x[i])//x[i] sebagai pembanding
  max = x[i];
  if (min > x[i])
  min = x[i];
 }

cout<<"\nNilai tertinggi = "<
cout<<"Nilai terendah = "<
}


main()
{
 char ulang;
 int p[50],N;
 system("color F2");//warna hijau
 do
 {
    system("cls");
    cout<<"Masukan Banyaknya Data(min 10) : ";cin>>N;
    if (N<10 span="">
         cout<<"\ndata yang anda masukkan kurang"<
    cout<
    if (N>=10)//operasi jalan jika data min. 10
    {
     masukan(p,N);//pemanggilan fungsi masukan
     tinggi(p,N);//pemanggilan fungsi tinggi
    }   
   cout<<"Ulangi program? (Y/T) "; cin>>ulang;
  }
  while(ulang == 'Y' || ulang == 'y');
}



Routing Static

   Pengertian Router

Router bertugas untuk menyampaikan paket data dari satu jaringan ke jaringan lainnya,  jaringan  pengirim  hanya  tahu  bahwa  tujuan  jauh  dari  router.  Dan  routerlah yang mengatur mekanisme pengiriman selain itu router juga memilih jalan terbaik” untuk mencapai tujuan.
Router berfungsi sebagai penghubung antar dua atau lebih jaringan untuk meneruskan data dari satu jaringan ke jaringan lainnya. Router berbeda dengan switch. Switch merupakan penghubung beberapa alat untuk membentuk suatu Local Area Network (LAN). Sebagai ilustrasi perbedaan fungsi dari router dan switch merupakan suatu jalanan, dan router merupakan penghubung antar jalan. Masing-masing rumah berada pada jalan yang memiliki alamat dalam suatu urutan tertentu. Dengan cara yang sama, switch menghubungkan berbagai macam alat, dimana masing-masing alat memiliki alamat IP sendiri pada sebuah LAN.



  • ·         Macam-macam Routing

a.      Static Routing
Static routing merupakan sebuah mekanisme pengisian tabel routing yang dilakukan oleh administrator secara manual pada tiap-tiap router atau PC router.
Static routing adalah metode routing yang tabel jaringannya dibuat secara manual oleh administrator jaringannya. Static routing mengharuskan admin untuk merubah route atau memasukkan command secara manual di router tiap kali terjadi perubahan jalur.

Pentingnya Rute Statik
Rute Statik menjadi sangat penting jika software IOC Cisco tidak bisa membentuk sebuah rute ke tujuan tertentu. Rute Statik juga sangat berguna untuk membuat “gateway” untuk semua paket yang tidak bisa di”routing”.(default route).

“Stub Network”
Rute Statik, umumnya digunakan untuk jalur/path dari jaringan ke sebuah “stub network” (jaringan yang dibelakangnya tidak ada jaringan lain).





Sebuah “stub network’ (kadang di sebut “leaf node”) adalah jaringan yang hanya dapat diakses melalui satu rute. Seringkali, rute statik digunakan sebagai jalan satu-satunya untuk keluar masuk jaringan Stub.
Catatan : Rute statik dapat digunakan untuk koneksi ke suatu network yang tidak terhubung langsung dengan router anda. Untuk koneksi “end-to-end”, rute statik harus dikonfigurasi di dua arah.
  • Konfigurasi Rute Statik

Mengkonfigurasi Rute statik adalah dengan memasukkan tabel routing secara manual. Tidak terjadi perubahan dinamik dalam tabel ini selama jalur/rute aktif.
  • Perintah “ip route”

Perintah “ip route” digunakan untuk mengkonfigurasi sebuah rute statik dalam mode konfigurasi global.

  • ip route Command Syntax

Sintak untuk perintah “ip route” adalah sebagai berikut :
ip route network [mask] {address | interface}[distance] [permanent]
Parameter Perintah “ip route”
network : Network atau subnet tujuan
mask : Subnet mask
address : Alamat IP router Hop berikutnya.(IP address of next-hop router)
interface : Nama interface yang digunakan untuk mencapai network tujuan. Interface dapat berupa interface point-to-point. Perintah tidak akan berfungsi jika interface adalah multiaccess (contoh “shared media Ethernet interface”).
distance (Optional) : Mendefinisikan “administrative distance”.
permanent (Optional) : Menyatakan bahwa rute tidak akan dihapus, ketika interface mati (shuts down).


Contoh rute statik:
Router(config)#ip route 172.16.1.0 255.255.255.0 172.16.2.1
ip route : Identifikasi rute statik
172.16.1.0 : Alamat IP Stub Network
255.255.255.0 : Subnet Mask
172.16.2.1 : Alamat IP Router B
Catatan : Ini adalah sebuah rute “unidirectional”. Anda harus mengkonfigurasi rute dari arah/sisi lawan (Router B).

  • Default Route

“Default route” adalah tipe rute statik khusus. Sebuah “default route” adalah rute yang digunakan ketika rute dari sumber/source ke tujuan tidak dikenali atau ketika tidak terdapat informasi yang cukup dalam tabel routing ke network tujuan.

Contoh “Default Route”
Router(config)#ip route 0.0.0.0 0.0.0.0 172.16.2.2
ip route : Menyatakan rute statik
0.0.0.0 : Rute ke “nonexistent subnet”(mencakup semua IP)
0.0.0.0 : Special mask mengindikasikan “default route”
172.16.2.2: Alamat IP Router A.

Kelebihan dan kekurangan Static Routing
      • Static routing memiliki beberapa kelebihan :
        •  Meringankan kerja processor yang terdapat di router atau PC router.
        • Tidak ada bandwidth yang digunakan untuk pertukaran informasi (isi dari tabel routing) antar router atau PC router.
        • Tingkat keamanan lebih tinggi disbanding dengan mekanisme lainnya.

      • Sedangkan kekurangan yang dimiliki oleh static routing antara lain :
        • Administrator harus mengetahui informasi tiap-tiap router atau PC router yang terhubung dengan jaringan.
        •  Jika terdapat penambahan atau perubahan topologi jaringan, administrator harus mengubah isi tabel routing.
        • Tidak cocok untuk jaringan router atau PC router yang besar.