Mobile Computing - UTS

Assalamu'alaikum...

Ketemu lagi deh, selesai UTS langsung upload lagi hasilnya, yah gag bagus-bagus amat sih, tapi kan bisa dijadiin rujukan buat sobat-sobat yang berkecimpung di mata kuliah mobile computing atau sejenisnya... hihihi

Judul project uas ane adalah pencatatan pulsa, jadi bagi yang jualan pulsa trus ada temen yang ngutang, bisa deh langsung dicatat diprogram ini, yah lumayan lah biar gag perlu ribet pake kertas segala untuk mencatat...hehehe

Langsung aja deh kayak begini penampakannya di emulator...

.:: Tampilan awal program ::.

.:: Tampilan program saat mengisi  form tambah data ::.

..:: Tampilan program saat melihat daftar  tagihan pulsa ::.

.:: Tampilan program saat melihat detil daftar tagihan ::.

.:: Tampilan program saat ingin mengubah atau menghapus data ::.
Sekian dulu ya postingan kali ini, semoga bermanfaat. Oh ya kalau ada yang pengen tau source codenya bisa coment aja dibawah, Insya Allah ntar ane bales...

-->> Terima Kasih <<--

 

Mobile Computing - RMS (Record Management System)

Assalamu'alaikum...

Malem sob, tengah malem kayak gini ane mau posting tugas mobile computing lagi nih, tema tugas kali ini adalah tentang presistence, ya ane disuruh buat aplikasi J2ME dengan memanfaatkan RMS (Record Management System) gitu, intinya RMS itu merupakan database sederhana dari J2ME, kalau lebih jelasnya searching aj sob di mbah google... hehe

Baiklah langsung saja ya, contoh scriptnya kayak gini sob dan inget sesuaikan nama classnya dengan project sobat sendiri yeee...
import javax.microedition.lcdui.*;
import javax.microedition.io.*;
import javax.microedition.rms.*;
import javax.microedition.midlet.*;

import java.io.*;

public class rms extends MIDlet implements CommandListener{
    private Display display;
    private List list;
    private Command cmdKeluar;
    private Command cmdKembali, cmdHasil, cmdbalik, cmdSimpan;
    private TextField soal1, soal2, soal3, soal4, soal5, id;
    private Form form;
    int nilai1, nilai2, nilai3, nilai4, nilai5;
    int Nakhir;
    private RecordStore rs;
    private RecordEnumeration re;
    private Alert alert;

    public rms() {
        form = new Form("MENU UTAMA");
        cmdKeluar = new Command("Keluar", Command.EXIT, 0);
        cmdKembali = new Command("Kembali", Command.BACK, 1);
        cmdbalik = new Command("Kembali", Command.BACK, 1);
        cmdHasil = new Command("Hasil", Command.OK, 2);
        cmdSimpan = new Command("Simpan", Command.OK, 2);
        alert = new Alert(null);
        alert.setTimeout(Alert.FOREVER);

        list = new List(null, Choice.IMPLICIT);

        rs = null;
        // membuat atau membuka record store
        try
        {
            rs = RecordStore.openRecordStore("db_KodeBar", true);
        }
        catch (RecordStoreException rse) //check kalau error = exception
        {
            alert.setString("Record store tidak dapat dibuka. " +"Aplikasi akan dihetikan");
            alert.setType(AlertType.ERROR);
            display.setCurrent(alert, null);
            System.exit(1);
        }
    }

    public void startApp() {
        display = Display.getDisplay(this);
        display.setCurrent(form);
        menuList();
    }

    public void pauseApp() {
    }

    public void destroyApp(boolean unconditional) {
        notifyDestroyed();
    }

    public void menuList(){
        list = new List("MENU UTAMA", List.IMPLICIT);
        list.append("UJIAN", null);
        list.append("Nilai Tertinggi", null);
        list.append("Keluar", null);
        list.setCommandListener(this);
        display.setCurrent(list);
    }

    public void UJIAN(){
        form = new Form("UJIAN");
        soal1 = new TextField("1. 1+1 = ?", "", 100, TextField.DECIMAL);
        soal2 = new TextField("2. 10/2 = ?", "", 100, TextField.DECIMAL);
        soal3 = new TextField("3. 2*3 = ?", "", 100, TextField.DECIMAL);
        soal4 = new TextField("4. 10-5 = ?", "", 100, TextField.DECIMAL);
        soal5 = new TextField("5. (7-3)*2 = ?", "", 100, TextField.DECIMAL);
        form.append(soal1);
        form.append(soal2);
        form.append(soal3);
        form.append(soal4);
        form.append(soal5);
        form.setCommandListener(this);
        form.addCommand(cmdKembali);
        form.addCommand(cmdHasil);
        display.setCurrent(form);
    }


    public void nama(){
        form = new Form("SIMPAN HASIL");
        id = new TextField("Masukkan nama anda : ","", 100, TextField.ANY);
        form.append(id);
        form.setCommandListener(this);
        form.addCommand(cmdSimpan);
        form.addCommand(cmdbalik);
        display.setCurrent(form);
    }


    public void commandAction(Command c, Displayable d) {
       if (c == cmdKeluar){
           destroyApp(true);
       }
       if(c.getLabel()=="Simpan"){
           alert.setType(AlertType.INFO);
           if (!id.equals(null)) //cek jika var ada isi nya
           {
               tambahRecord(id.getString());
               alert.setString("Data lengkap !, Data sudah disimpan di RMS, untuk melihat gunakan pilihan menu'nilai tertinggi' pada menu utama");
               display.setCurrent(alert);
               display.setCurrent(alert, list);    
               }
           else //jika data kosong
           {
               alert.setString("Data Kurang !, isikan nama anda terlebih dahulu.");
               display.setCurrent(alert, form);
           }
       }
       if(c.getLabel()=="Nilai Tertinggi"){
       lihatRecord();
       }
       else if (c == cmdHasil){
               nama();
       }
       else if (c == cmdbalik){
           UJIAN();
       }else if (c == cmdKembali){
          menuList();
       }else{
           List menu = (List) display.getCurrent();
           switch (menu.getSelectedIndex()){
               case 0:
                   UJIAN();
                   break;
               case 1:
                   lihatRecord();
                   break;
               case 2:
                   destroyApp(true);
           }
       }
    }

public void tambahRecord(String id)
{
    int a = Integer.parseInt(soal1.getString());
    int b = Integer.parseInt(soal2.getString());
    int c = Integer.parseInt(soal3.getString());
    int d = Integer.parseInt(soal4.getString());
    int e = Integer.parseInt(soal5.getString());
    if(a == 2){
        a=2;
    }
    else if(a != 2){
        a=0;
    }
    if(b==5){
        b=2;
    }
    else if(b != 5){
        b=0;
    }
    if(c==6){
        c=2;
    }
    else if(c != 6){
        c=0;
    }
    if(d==5){
        d=2;
    }
    else if(d !=5 ){
        d=0;
    }
    if(e==8){
        e=2;
    }
    else if(e != 8){
        e=0;
    }


    Nakhir = a + b + c + d + e;
  byte[] temp = null;
  try
  {
      //kosntruktor baos dan dos
      ByteArrayOutputStream baos = new ByteArrayOutputStream();
      DataOutputStream dos = new DataOutputStream(baos);
      //cari fungsi ini ByteArrayOutputStream dan DataOutputStream di internet

      dos.writeUTF(id);// tulis var pada dos
      dos.writeInt(Nakhir);
      temp = baos.toByteArray();
  }
  catch (IOException ioe)
  {
      ioe.printStackTrace();
  }
  try
  {
      rs.addRecord(temp, 0, temp.length); //masukan data pada RecordStore
  } catch (RecordStoreNotOpenException rsnoe) {
    rsnoe.printStackTrace();
  } catch (RecordStoreException rse) {
    rse.printStackTrace();
  }
}
public void lihatRecord() {
    byte[] temp = null;
    list.setTitle("Nilai Tertinggi");
    list.deleteAll();

    try
    {
        re = rs.enumerateRecords(null, null, false); //enumerasi record
        while (re.hasNextElement()) //jk elemen rs lbh dr satu
        {
            int i = re.nextRecordId();
            temp = rs.getRecord(i);
            ByteArrayInputStream bais = new ByteArrayInputStream(temp);
            DataInputStream dis = new DataInputStream(bais);

            try
            {
                String id = dis.readUTF();
                //Integer Nakhir = dis.readUTF();
                list.append(id + " = "+ Nakhir +" \n",null);// tampilkan
            }
            catch (IOException ioe) {ioe.printStackTrace();}
      }
      list.addCommand(cmdKembali);
      list.setCommandListener(this);
      display.setCurrent(list);
    }
    catch (InvalidRecordIDException invID) {invID.printStackTrace();}
    catch (RecordStoreNotOpenException rsnoe) {rsnoe.printStackTrace();}
    catch (RecordStoreException rse) {rse.printStackTrace();}

  }
}
Berikut penampakan program setelah di eksekusi...





 

Mobile Computing - Tugas Aplikasi Form Pengisian

Assalamu'alaikum...

Kali ini saya akan membuat tugas dari mata kuliah mobile computing yaitu membuat form pengisian menggunakan J2ME, untuk software dan plugin nya ada di post sebelu-sebelumnya, so sobat bisa baca sendiri.OK...

Script codenya adalah seperti ini, jadi sesuaikan nama classnya dengan project sobat ya....
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class data_diri extends MIDlet implements CommandListener {
 
    Display tampil;
    Form FormInput, FormHasil;
    TextField name, address, contact, email;
    Command cmdOK, cmdExit,cmdBack;
    ChoiceGroup gender;
    Ticker ticker;
    DateField date;
    Alert alert;
     
    public data_diri() {
        cmdOK = new Command("SIMPAN", Command.OK, 1);
        cmdBack = new Command("KEMBALI", Command.BACK, 1);
        cmdExit = new Command("KELUAR", Command.EXIT, 1);     
      
        FormInput = new Form("Data Diri");
      
        name    = new TextField  ("Nama          : ", null, 50, TextField.ANY);
        gender  = new ChoiceGroup("Jenis Kelamin : ", Choice.POPUP);
        gender.append("Laki-Laki", null);
        gender.append("Perempuan", null);
        address = new TextField  ("Alamat        : ", null, 50, TextField.ANY);
        contact = new TextField  ("Telepon       : ", null, 20, TextField.PHONENUMBER);
        email   = new TextField  ("E-mail        : ", null, 20, TextField.EMAILADDR);
        date    = new DateField  ("Tanggal lahir : ", DateField.DATE);
      
        ticker = new Ticker("5302410074 - Tugas Mobile Computing");
        alert = new Alert("ERROR", "Data yang anda masukkan belum lengkap", null, AlertType.ERROR);

        FormInput.append(name);
        FormInput.append(gender);
        FormInput.append(address);
        FormInput.append(contact);
        FormInput.append(email);
        FormInput.append(date);
        FormInput.addCommand(cmdOK);
        FormInput.addCommand(cmdExit);
        FormInput.setTicker(ticker);
        FormInput.setCommandListener(this);
    }
 
    protected void destroyApp(boolean arg0) {
        notifyDestroyed();
    }
 
    protected void pauseApp() {
        // TODO Auto-generated method stub
    }

    protected void startApp() {
        if (tampil == null){
            tampil = Display.getDisplay(this);
            tampil.setCurrent(FormInput);
        }
    }

    public void commandAction(Command c, Displayable d) {

                if(c == cmdOK){                                      
                        if (name.getString().equals("") || address.getString().equals("")
                                || contact.getString().equals("") || email.getString().equals("")){
                            tampil.setCurrent(alert);
                            alert.setTimeout(Alert.FOREVER);
                            alert.addCommand(cmdBack);
                        }
                        else {
                            FormHasil = new Form("Biodata Anda: ");
                            FormHasil.deleteAll();

                            FormHasil.append ("Nama          : " + name.getString()
                                     + '\n'+'\n' + "Jenis Kelamin : " + gender.getString(gender.getSelectedIndex())
                                     + '\n'+'\n' + "Alamat        : " + address.getString()
                                     + '\n'+'\n' + "Contact       : " + contact.getString()
                                     + '\n'+'\n' + "Email         : " + email.getString()
                                     + '\n'+'\n' + "Tanggal Lahir : " + date.getDate());
                          
                            FormHasil.addCommand(cmdBack);
                            FormHasil.addCommand(cmdExit);
                            FormHasil.setCommandListener(this);
                            tampil.setCurrent(FormHasil);
                        }
                  
                }else if(c==cmdBack){ 
                    Display.getDisplay(this).setCurrent(FormInput);
                }else if(c==cmdExit){
                    destroyApp(true);
                }
            }
    }  

Nah berikut adalah screenshot hasilnya...

Gambar 1: Saat program dijalankan dan formnya diisi

Gambar 2: Apabila salah satu form masih kosong akan muncul peringatan

Gambar 3: Hasil program setelah form diisi semua dan disimpan

-->> Terima Kasih <<--
 

Mobile Computing - Lab Activity 2

Assalamu'alaikum teman...
Tugas kali ini adalah membuat MIDlet sederhana dengan Eclipse dan menjalankannya menggunakan emulator, langsung aja deh...
Eh tapi sebelumnya sobat harus menginstal Java ME, menambahkan plugin EclipseME, dan juga menginstal Java Wireless Toolkit, nah kalau sudah mari kita mulai...

Hmmm??? belum punya Java ME, Eclipse ME, dan Java Wireless Toolkit? haduh, tenang saja ini link downladnya... :)
>> Java Wireless Toolkit <<

OK, kalau syarat di atas sudah terpenuhi mari dimulai... pertama buka eclipse anda, lalu buat project baru, yaitu klik File --> New Project --> J2ME, pilih J2ME Midlet Suite --> Next --> beri nama project terserah sobat --> Next --> pada Dexice ganti pada DefaultColorPhone --> Finish.

Nah sekarang project anda sudah muncul kan di Project Explorer, langkah selanjutnya adalah klik kanan project anda --> pilih New --> Other --> pilih J2ME, dan pilih J2ME Midlet --> Next --> tuliskan nama class nya terserah anda --> klik Finish.

Selamat lembar project baru telah dibuat, tinggal sobat menulis sintaknya...hehe
Nah berikut adalah contoh sintak yang saya buat, cekidot:

import javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.*;

public class Hello extends MIDlet implements CommandListener {
    Display display;
    Command exitCommand = new Command ("Exit", Command.EXIT,1);
    Alert helloAlert;
   
    public Hello() {
        helloAlert = new Alert("Hello Midlet","Hello world! My name is Faza...", null, AlertType.INFO);
        helloAlert.setTimeout (Alert.FOREVER);
        helloAlert.addCommand (exitCommand);
        helloAlert.setCommandListener (this);
    }
    protected void startApp() {
        if (display == null) {
            display = Display.getDisplay(this);
        }
        display.setCurrent(helloAlert);
        }
   
    public void pauseApp() {
    }
   
    public void destroyApp (boolean unconditional) {
    }
   
    public void commandAction (Command c, Displayable d) {
        if (c == exitCommand) {
            destroyApp(true);
            notifyDestroyed();
        }
    }
}


Kalau sudah sobat ketik atau copy script di atas, silahkan dirunning...
Ni contoh hasil running dari saya...


OK sob, selamat mencoba...
 

Mobile Computing - Lab Activity

Assalamu'alaikum...
Posting kali ini adalah untuk memenuhi tugas dari mata kuliah mobile computing, yaitu melakukan percobaan lab activity yang pertama. Sebelum melakukan percobaan, buka dulu Eclipse sobat, lalu buat project baru dan namai sesuka hati, kalau sudah yuk dimulai...

  • PERCOBAAN I
a. Membuat class Bank
seperti ini sintaknya...


b. Membuat class Nasabah
ni lagi sintaknya...

c. Membuat class Budi sebagai turunan dari class Nasabah
ni lagi...

d. Hasil Running I

  • PERCOBAAN II
a. Memodifikasi class Bank dengan mengoverloading constructor
seperti ini...

b. Memodifikasi class Nasabah dengan membuat method baru yang akan dioverride di class Budi
ni juga... 

c. Memodifikasi class Budi dengan mengoverride method dari class nasabah
dan ini... 

d. Hasil Running II

  • PERCOBAAN III
Dan percobaan yang terakhir adalah melakukan modifikasi pada class Nasabah, yaitu dengan menggunakan constructor lain ketika membuat objek dari class bank, ni screnshoot sintaknya...

Dan ini adalah hasilnya ketika dirunning...


--->> SELAMAT MENCOBA <<---

 

Hello World dengan Eclipse

Assalamu'alakum... Selamat sore sobat blogger...
Postingan kali ini saya akan memberikan contoh bagaimana menampilkan kalimat "Hello World" dengan menggunakan program Eclipse. Sebenarnya bisa kalimat yang lain sih, tapi berhubung yang diminta dosen saya adalah kalimat tersebut ya kita ikuti saja. Lagsung aja deh, cekidot...

Pertama buka program eclipse sobat, udah punya kan? kalau belom punya silahkan mampir dulu ke >>sini<<, tunggu sampai halaman eclipse sobat terbuka. Lalu klik File -> New -> Java Project.

Lalu akan muncul kotak dialog New Java Project, pada project name isikan judul project sesuai keinginan sobat, pada gambar di bawah saya contohkan judul projectnya adalah "HelloWord", lalu klik Finish.

Tunggu beberapa saat hingga pada Package Explorer muncul project sobat.

Langkah selanjutnya adalah membuat class, caranya pada file project sobat klik kanan -> pilih New -> Class.

Lalu akan muncul kotak dialog New Java Class, pada kolom name isikan nama class yang sobat inginkan, pada gambar di bawah saya contohkan namanya adalah "Hello", klik finish.

Kemudian akan muncul halaman dari class tersebut yang sobat buat, pada halaman itu isikan perintah sederhana untuk memunculkan kalimat Hello World, ni contoh perintah yang ane buat.

Kalau sudah, silahkan sobat eksekusi/ running tuh perintah, ni hasil yang ane buat.

--->> Selamat Berkreasi <<---
 

Tutorial Instalasi Eclipse

Setelah 3 bulan lebih vakum dari ngeblog, akhirnya kembali blogging lagi dan berkutat dengan tugas-tugas kuliah semester lima ini... Haduh semakin tua saja.. hehehe

Baiklah, postingan kali ini saya akan membahas tentang bagaimana cara instalasi Eclipse untuk windows, tentunya kalian para programmer android tau kan Eclipse itu apa? Bagi yang belum tau searching sendiri ya di google...hehe, intinya eclipse adalah software IDE pemrogramman java yang cukup terkenal.

Sebelum melakukan instalasi Eclipse,  pastikan dulu komputer anda telah terinstal Java SE Development Kit (JDK). Kalau belum punya, anda bisa mengunduhnya di alamat >>ini<<. Ukurannya kurang lebih 80 MB, kurang tau pastinya... :D

Kalau sudah selesai download JDK nya, silahkan diinstal... Tau kan caranya? Gampang kok. Bagi yang belum tau, seperti biasa searching aja... :D

Sekarang saatnya melakukan instalasi eclipse, disini penulis menggunakan Eclipse Classic 4.2:
1. Download file Eclipse Classic (Ukuran file sekitar 180 MB) di alamat >>ini<<

2. File hasil download berbentuk .zip, ekstrak file tersebut dan akan muncul folder eclipse,  pindahkan folder tersebut di hardrive/lokasi yang mudah diakses. Seperti di direktori C:\Program Files, atau di direktori lain.

3. Sebenarnya Eclipse tidak memerlukan instalasi, dalam folder eclipse terdapat file eclipse.exe. Untuk memudahkan dalam mengaksesnya, kita bisa membuat shortcut eclipse tersebut di dekstop. Untuk membukanya tinggal klik 2x pada file eclipse.exe tersebut. Kemudian akan muncul tampilan awal eclipse seperti ini.

4. Selanjutnya lakukan instalasi plugin ADT Eclipse. Pastikan komputer terkoneksi dengan internet. Klik menu Help -> Install New Software.

5. Lalu klik Add dan akan muncul kotak dialog Add repository, masukkan name "ADT Plugin", dan location " https://dl-ssl.google.com/android/eclipse/ ". Klik OK.

6. Tunggu beberapa saat, pada dialog Available Software pilih checkbox Developer Tools, kemudian klik Next dan Next. Tunggu hingga selesai dan klik button Finish.
7. Setelah itu Eclipse akan meminta anda untuk melakukan restart. Klik restart dan tunggu sampai tampilan awal eclipse muncul. Selamat instalasi berhasil...
 

Task 6 - Keamanan Jaringan dan VPN


KONSEP KEAMANAN JARINGAN 
 
Keamanan Komputer seperti yang dikatakan oleh John D. Howard, seorang Analisys Of Security Incidents On The Internet pada tahun 1989-1995, mengatkan bahwa : Computer Security is preventing attackers form achieving objectives through unathorized access or unauthorized use of computers & networks.

     Konsep Keamanan Jaringan yaitu
Tingkat Ancaman (threat)
1.  Ingin mengetahui suatu sistem & data pada sebuah jaringan, penyusup disebut the curious
2.  Membuat sistem jaringan menjadi down/deface tampilan web, penyusup : the malicious
3. Berusaha untuk menggunakan sumber daya di dalam sistem jaringan komputer untuk memperoleh popularitas, penyusup :the high-profile intruder

Policy Keamanan (security policy)
1.  Deskripsi secara detail tentang lingkungan teknis, otoritas dalam implementasi sebuah jaringan
2.  Analisa resiko yang mengidentifikasi resource dari jaringan, ancaman yang dihadapi
3.  Petunjuk bagi administrator sistem untuk mengelola sistem


KONSEP VPN (Virtual Private Network)

Pengertian VPN adalah singkatan dari virtual private network, yaitu jaringan pribadi (bukan untuk akses umum) yang menggunakan medium nonpribadi jaringan public (misalnya internet) untuk menghubungkan antar remote-site secara aman. Perlu penerapan teknologi tertentu agar walaupun menggunakan medium yang umum, tetapi traffic (lalu lintas) antar remote-site tidak dapat disadap dengan mudah, juga tidak memungkinkan pihak lain untuk menyusupkan traffic yang tidak semestinya ke dalam remote-site.
VPN adalah sebuah koneksi Virtual yang bersifat private mengapa disebut demikian karena pada dasarnya jaringan ini tidak ada secara fisik hanya berupa jaringan virtual dan mengapa disebut private karena jaringan ini merupakan jaringan yang sifatnya private yang tidak semua orang bisa mengaksesnya. VPN Menghubungkan PC dengan jaringan public atau internet namun sifatnya private, karena bersifat private maka tidak semua orang bisa terkoneksi ke jaringan ini dan mengaksesnya. Oleh karena itu diperlukan keamanan data.
Konsep kerja VPN pada dasarnya VPN Membutuhkan sebuah server yang berfungsing sebagai penghubung antar PC. Jika digambarkan kira-kira seperti ini
internet <—> VPN Server <—-> VPN Client <—-> Client
Bila digunakan untuk menghubungkan 2 komputer secara private dengan jaringan internet maka seperti ini:
Komputer A <—> VPN Clinet <—> Internet <—> VPN Server <—> VPN Client <—> Komputer B
Jadi semua koneksi diatur oleh VPN Server sehingga dibutuhkan kemampuan VPN Server yang memadai agar koneksinya bisa lancar.

Fungsi dan Manfaat VPN
1. Fungsi VPN
Confidentially (Kerahasiaan)
Teknologi VPN merupakan teknologi yang memanfaatkan jaringan publik yang tentunya sangat rawan terhadap pencurian data. Untuk itu, VPN menggunakan metode enkripsi untuk mengacak data yang lewat. Dengan adanya teknologi enkripsi itu, keamanan data menjadi lebih terjamin. Walaupun ada pihak yang dapat menyadap data yang melewati internet bahkan jalur VPN itu sendiri, namun belum tentu dapat membaca data tersebut, karena data tersebut telah teracak. Jadi, confidentially ini dimaksudkan agar informasi yang ditransmisikan hanya boleh diakses oleh sekelompok pengguna yang berhak.

Data Integrity (Keutuhan Data)
Ketika melewati jaringan internet, sebenarnya data telah berjalan sangat jauh melintasi berbagai negara. Pada saat perjalanan tersebut, berbagai gangguan dapat terjadi terhadap isinya, baik hilang, rusak, ataupun dimanipulasi oleh orang yang tidak seharusnya. Pada VPN terdapat teknologi yang dapat menjaga keutuhan data mulai dari data dikirim hingga data sampai di tempat tujuan.

Origin Authentication (Autentikasi Sumber)
Teknologi VPN memiliki kemampuan untuk melakukan autentikasi terhadap sumber-sumber pengirim data yang akan diterimanya. VPN akan melakukan pemeriksaan terhadap semua data yang masuk dan mengambil informasi dari sumber datanya. Kemudian, alamat sumber data tersebut akan disetujui apabila proses autentikasinya berhasil. Dengan demikian, VPN menjamin semua data yang dikirim dan diterima berasal dari sumber yang seharusnya. Tidak ada data yang dipalsukan atau dikirim oleh pihak-pihak lain.


2. Manfaat VPN
Biaya lebih murah
Pembangunan jaringan leased line khusus atau pribadi memerlukan biaya yang sangat mahal. VPN dapat menjadi alternatif yang dapat digunakan untuk dapat mengatasi permasalahan diatas. VPN dibangun dengan menggunakan jaringan internet milik publik tanpa perlu membangun jaringan pribadi. Dengan demikian bila ingin menggunakan VPN hanya diperlukan koneksi internet.

Fleksibilitas
Semakin berkembangnya internet, dan makin banyaknya user yang menggunakannya membuat VPN juga ikut berkembang. Setiap user dapat tergabung dalam VPN yang telah dibangun tanpa terbatas jarak dan waktu. Fleksibilitas dapat dicapai apabila user tersebut terkoneksi dengan internet dan mendapat ijin menggunakan VPN.

Kemudahan pengaturan dan administrasi
Keseluruhan VPN dapat diatur dalam server VPN sendiri, dan untuk dapat digunakan oleh klien, maka perlu diinstal aplikasi VPN pada klien. Hal ini tentu lebih mudah apabila dibandingkan dengan menggunakan leased line yang masih perlu memonitor modem.

Mengurangi kerumitan pengaturan dengan teknologi tunneling

Tunneling atau terowongan merupakan kunci utama pada VPN. Koneksi pribadi dalam VPN dapat terjadi dimana saja selama terdapat tunnel yang menghubungkan pengirim dan penerima data. Dengan adanya tunnel ini, maka tidak diperlukan pengaturan-pengaturan lain yang ada di luar tunnel tersebut, asalkan sumber dari tunnel tersebut dapat menjangkau tujuannya.





Contoh implementasi VPN 
VPN ini bisa digunakan untuk mempercepat koneksi internasional
Misal kita punya koneksi lokal (IIX) sebesar 1mbps dan koneksi luar 384kbps kita bisa menggunakan VPN agar koneksi internasional menjadi sama dengan koneksi lokal 1mbps. Cara dengan menggunakan VPN Lokal yang diroute ke VPN Luar

internet <—->VPN Luar<—>VPN lokal <—>Client

Model jaringan ini bisa lebih cepat sebab akses ke jaringan luar dilakukan oleh VPN luar lalu kemudian diteruskan oleh VPN lokal nah kita mengakses ke jaringan lokal yang berarti kecepatan aksesnya sebesar 1mbps. Tentunya diperlukan VPN dengan bandwith besar agar koneksinya bisa lancar.
 
 

Task 5 - Routing Dynamic (OSPF)

Alhamdulillah, baru bangun langsung ngerjain ni tugas dan akhirnya kelar juga ni task 5, sampai-sampai belum sempat sarapan (lhoh malah curhat...:D), gag usah pakai penjelasan ya saya udah kelaparan langsung posting aj, ntar deh kalau ada waktu diupdate...(cie...sok sibuk..hehe) pokoknya ini tugas tentang konfigurasi router dengan menggunakan Dynamic Route OSPF , berikut screenshotnya....


Ini dia link untuk downloadnya, silahkan klik disini.
...trimakasih...
 

4 Mei - Shinichi Kudo

Assalamu'alaikum, sebelum berangkat sholat jum'at posting dulu akh... :D, yupz postingan kali ini gag ada hubungannya sama sekali sama tugas kuliah, tugasnya dipending dulu ya...hehe

Semua penggemar anime Detective Conan pasti tau kan tanggal hari ini, yupz hari ini tanggal 4 Mei adalah hari ultahnya tokoh utama anime Detective Conan, yaitu "Shinichi Kudo"... Kalau inget dia pasti para shinichi lovers dan conan lovers (hehe) pengen deh liat aksinya muncul di tv seperti dulu lagi... Yah sebagai penggemar detective conan saya hanya bisa berharap deh ntu anime ditayangkan kembali di tv...hihi.Kalau anda penggemar Detective Conan, tapi belum tau banget sejarah awalnya, ini saya sajikan sinopsis singkatnya, tapi sedikit aja ya coz buru-buru mau shalat Jum'at...^^

Shinichi Kudo adalah detektif SMA yang telah banyak membantu kepolisian Jepang memecahkan berbagai kasus. Putra tunggal dari novelis misteri ternama Yusaku Kudo dan artis terkenal Yukiko Kudo, yang keduanya tinggal di Amerika. Suatu hari setelah berpisah dari Ran (gadis teman sepermainannya sejak kecil) sepulang dari taman hiburan Tropical Land, ia mengikuti dua orang pria berjubah hitam yang dicurigainya sebagai anggota komplotan penjahat semacam mafia. Ternyata ia ketahuan, dipukul hingga lemas dan dipaksa meminum obat hingga tak sadarkan diri.

Saat sadar, kedua orang itu telah pergi dan tubuh Shinichi mengecil seolah kembali menjadi anak SD. Rupanya itulah pengaruh obat yang menurut dua orang berjubah hitam itu belum pernah dicoba pada manusia. Maka Shinichi terpaksa berpura-pura menjadi anak SD bernama Conan Edogawa yang masih keponakan jauh profesor Agasa (tetangga sekaligus sahabatnya) lalu dititipkan di rumah Ran yang tinggal berdua dengan ayahnya, Kogoro Mouri.

Berkat bantuan profesor Agasa dan alat-alat canggih (atau ajaib :) ) buatannya, Conan alias Shinichi berhasil membuat Kogoro Mouri yang semula hanya detektif pemalas menjadi detektif terkenal dengan memecahkan banyak kasus, demi tujuan utamanya mengungkap siapa orang-orang berjubah hitam yang membuat tubuhnya mengecil. Petualangan panjang penuh teka-teki, ketegangan, roman, komedi, serta pelajaran tentang pentingnya keluarga dan persahabatan pun ia lalui dan masih terus bergulir…



sumber: Shimmering Pearl
 

Task 4 - Configure Router dengan Static Route

Alhamdulillah akhirnya selesai juga ini tugas task 4, ya meskipun mepet hampir tengah malam sih....hehe :D, task 4 ini adalah tentang setting routing statik, berikut screenshot pekerjaan saya...





Dan ini link untuk download filenya, silahkan klik disini.
...Trimakasih...

 

Task 3 - VLAN

Alhamdulillah postingan yang ke-3... :D, tugas yang ke 3 ini adalah menentukan ip address, range ip address, VLAN, serta port trunk pada topologi jaringan. Berikut adalah screenshot topologi jaringan yang telah saya buat...



VLAN adalah 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.
Langkah membuat vlan :
1. membuat pool ip addres untuk VLAN
- ip dhcp pool vlan
- network 192.168.1.0 255.255.255.0
- default-router 192.168.1.1
- dns-server 8.8.8.8
2. membuat trunk interface
- interface FastEthernet0/1
- switchport trunk encapsulation dot1q
- switchport mode trunk
3. membuat vlan dan memasang ip addres pada vlan
- interface Vlan1
- description A
- ip address 192.168.1.1 255.255.255.0
- no shutdown
4. memasang ip address pada switch layer 3
- interface GigabitEthernet0/1
- no switchport
- ip address 10.10.10.1 255.255.255.252
5. membuat route
- Ip route 0.0.0.0 0.0.0.0 10.10.10.2

Untuk link download filenya silahkan klik disini
Trimakasih...

 

Core Layer, Distribution Layer, dan Access Layer

POSTINGAN TUGAS KE-2 
Keamanan Jaringan Komputer

Dosen pengampu  : Bpk. Arief Arfriandi
Prodi/Jurusan        : PTIK / Teknik Elektro
Assalamu’alaikum Wr. Wb.,

Ini postingan saya yang kedua, sama seperti postingan sebelumnya ini merupakan tugas kedua mata kuliah Keamanan Jaringan Komputer. Dalam dunia jaringan komputer, kita pasti telah mengenal istilah core layer, distribution layer, dan juga acces layer. Untuk itu disini kita akan bahas tentang istilah tersebut, langsung aja to the point...

  • Core Layer
Yang pertama dan yang menempati posisi teratas dalam jaringan hierarki adalah core layer atau lapisan inti yang merupakan inti dari jaringan, atau banyak yang menyebutnya sebagai tulang punggung (backbone) jaringan. Dalam lapisan ini data – data diteruskan secepatnya dengan menggunakan motode dan protokol jaringan tercepat (high speed). Misalnya fast ethetnet 100Mbps, Gigabit Ethetnet, FDDI atau ATM. Pada lalulintas data digunakan swicth karena penyampaiannya pasti dan cepat.

Dalam lapisan ini tidak boleh melakukan penyaringan / filter paket data karena akan memperlambat transmisi data dan tidak mendukung wordgroup. Untuk toleransi kesalahan digunakan peralatan jalur ganda . Oleh sebab itu swicth dikonfigurasikan dengan menggunakan Spanning Tree Topology dimana dapat diciptakan jalur ganda tanpa harus memiliki resiko terjadi lingkaran jaringan.

Core layer adalah untuk menghubungkan dengan jaringan global, dan bertanggung jawab untuk mengirim traffic secara cepat dan andal dengan model switching (men-switch traffic secepat mungkin (dipengaruhi oleh kecepatan dan latency)). Kegagalan pada core layer dan desain fault tolerance untuk level ini dapat dibuat sbb :
Yang tidak boleh dilakukan
-       tidak boleh menggunakan access list, packet filtering, atau routing VLAN.
-       tidak boleh mendukung akses workgroup.
-       tidak boleh memperluas jaringan dengan kecepatan dan kapasitas yang lebih besar.

Yang boleh dilakukan
-     melakukan desain untuk keandalan yang tinggi ( FDDI, Fast Ethernet dengan link yang redundan atau ATM).
-     melakukan desain untuk kecepatan dan latency rendah.
-     menggunakan protocol routing dengan waktu konvergensi yang rendah.

Beberapa device yang termasuk core layer:
§  Cisco switches seperti seri 7000, 7200, 7500, and 12000 (untuk digunakan pada WAN)
§  Catalyst switches seperti seri 6000, 5000, and 4000 (untuk digunakan pada LAN)
§  T-1 and E-1 lines, Frame relay connections, ATM networks, Switched Multimegabit Data Service (SMDS)
§  Cisco ASR 9000 Series Aggregation Services Routers
§  Cisco ASR 1000 Series Aggregation Services Routers
§  Cisco Carrier Routing System
§  Cisco 7600 Series Routers
§  Cisco XR 12000 Series Router

Cisco switches seri 7200

  • Distribution Layer
Yang kedua dan berada dibawah core layer adalah distribusi layer, disebut juga layer workgroup yang menghubungkan antara akses layer dan layer inti (core layer). Fungsi utama layer distribusi adalah menyediakan routing, filtering, dan untuk menentukan cara terbaik unutk menangani permintaan layanan dalam jaringan. Setelah layer distribusi mentukan lintasan terbaik maka kemudian permintaan diteruskan ke layer inti. Layer inti dengan cepat meneruskan permintaan itu ke layanan yang benar.

Layer distribusi diterapkan kepada setiap fakultas yang memiliki beberapa jurusan untuk menghubungkan beberapa jurusan yang ada kedalam satu workgroup. Dalam lapisan ini diadakan pembagian atau pembuatan segmen-segmen berdasarkan peraturan yang dipakai dalam perusahan atau universitas, dimana jaringan dibagi pada setiap workgroup. Misalnya UNNES sebagai core layer dan Fakultas Teknik sebagai distribution layer.

Yang diterapkan di distribusi layer antara lain adalah:
-       Packet filtering (firewalling)
-       Captive Portal
-       Queue
-       QoS
-       Access Layer Aggregation Point
-       Control Broadcast and Multicast
-       Application Gateways

Beberapa device yang termasuk distribute layer :
§  Cisco Catalyst 6500 Series Switches
§  Cisco ASR 1000 Series Aggregation Services Routers

Cisco Catalyst 6500 Series Switches

  • Acces Layer
Yang ketiga adalah acces layer yang disebut juga desktop layer. Akses layer mengendalikan akses pengguna dengan workgroup ke sumber daya internetwork. Desain Layer akses diperlukan untuk menyediakan fasilitas akses ke jaringan. Fungsi utamanya adalah menjadi sarana bagi suatu titik yang ingin berhubungan dengan jaringan luar. Terjadi juga Penyaringan / filter data oleh router yang lebih spesifik yang dilakukan untuk mencegah akses ke seuatu computer.

Pada layer ini menyediakan aksess jaringan untuk user/workgroup dan mengontrol akses dan end user local ke Internetwork. Resource yang paling dibutuhkan oleh user akan disediakan secara local. Kelanjutan penggunaan access list dan filter, tempat pembuatan collision domain yang terpisah (segmentasi). Teknologi seperti Ethernet switching tampak pada layer ini serta menjadi tempat dilakukannya routing statis.


Fungsi Access Layer antara lain:
· Shared bandwidth
· Switched bandwidth
· MAC layer filtering
· Microsegmentation

Beberapa device yang termasuk Access layer :
§  Cisco 1900 Series Integrated Services Routers
§  Cisco 2900 Series Integrated Services Routers
§  Cisco 3900 Series Integrated Services Routers
§  Cisco 800 Series Routers

Cisco 3900 Series Integrated Services Routers


Demikian sekelumit pembahasan tentang core layer, distribution layer, dan acces layer. Semoga dapat menambah wawasan pengetahuan untuk kita semua, trimakasih...