Saturday, 11 August 2018

Konfigurasi IP Static dan DNS pada ubuntu server dan ubuntu client



        Pada postingan kali ini saya akan menjelaskan bagaimana cara melakukan konfigurasi IP Static dan konfigurasi DNS pada sistem operasi ubuntu server dan ubuntu client dengan menggunakan bantuan VirtualBox. Langkah pertama yang dilakukan adalah jalankan ubuntu server dari virtualbox dengan cara seleksi ubuntu server kemudian klik start seperti pada gambar dibawah ini.
    
           

Setelah sistem operesi ubuntu server selesai booting akan muncul tampilan login, lakukan login dengan mengisikan nama user dan password, kemudian setelah berhasil login, periksa interface apa yang sedang kita gunakan. Caranya dengan mengetikan perintah ifconfig pada terminal seperti pada gambar dibawah. Perintah tersebut akan menampilkan interface apa saja yang sedang digunakan beserta informasi yang ada didalamnya.
 




            Setelah itu kita konfigurasi kan interface enp0s3 dengan IP statis dengan cara mengetikkan perintah seperti yang ada pada gambar dibawah ini
 



Kemudian masukkan password yang digunakan untuk superuser di sistem operasi ini. Maka akan muncul isi dari file konfigurasi tersebut. Lalu rubah isi file konfigurasi seperti pada gambar dibawah ini


     

            Jika sudah merubah file konfigurasi pada interface enp0s3 (dirubah menjadi static) kemudian save file tersebut dengan cara tekan Control+X kemudian akan muncul prompt yang menanyakan apakah benar kita ingin menyimpan perubahan pada file tersebut jika ya kita tinggal mengetik huruf y lalu enter dan file akan tersimpan. Setelah itu kita reboot sistem operasi ubuntu server. Tujuannya agar interface yang telah kita konfigurasikan tadi mendapat IP baru sesuai dengan yang kita isikan di file interfaces caranya  dengan mengetikkan perintah poweroff seperti pada gambar dibawah ini




            Selanjutnya kita konfigurasikan network pada virtualbox untuk sistem operasi ubuntu server. Dengan cara seleksi sistem operasi ubuntu server pada tampilan awal virtualbox kemudian klik settings lalu pilih network dan rubah konfigurasinya dari NAT menjadi Internal network kemudian tekan ok seperti pada gambar dibawah ini
 
  

            Setelah kita konfigurasikan network menjadi internal network, kita jalankan kembali ubuntu servernya. Lakukan login kembali setelah itu kita periksa hasil konfigurasi tadi dengan cara mengetikan perintah ifconfig. Jika semua konfigurasi yang di lakukan benar maka tampilannya akan seperti gambar dibawah ini






            Langkah selanjutnya ialah konfigurasi DNS dengan cara masuk ke folder bind terlebih dahulu. Bind sendiri merupakan perangkat lunak yang digunakan untuk mengkonfigurasikan sebuah DNS. Untuk masuk ke folder bind perintahnya seperti pada gambar dibawah, setelah itu buka file konfigurasi awal pada folder bind dengan cara seperti pada gambar dibawah
 
  

            Kemudian setelah file terbuka, tambahkan beberapa baris konfigurasi di bagian paling bawah seperti pada gambar dibawah ini


           
Kemudian save seperti biasa dengan Control+X dan y. Setelah itu kita bisa langsung membuat file untuk konfigurasi forward nya dimana pada konfigurasi diatas kita telah memberikan beberapa keterangan sebagai berikut. Nama dari DNS yang kita akan gunakan terdapat pada zona pertama dimana pada bagian tersebut kita isikan dengan nama "laporanakhir.labti.ug" dan di dalam konfigurasi tersebut kita mendeklarasikan tipe dari file tersebut lalu kita memberitahukan file konfigurasi nya. Dibawahnya kita memberikan konfigurasi reverse dimana angka 1.168.192 merupakan 3 blok digit nomor IP dari nomor IP Server namun dituliskan secara terbalik, lalu kita kembali memberi tahukan jenis nya dan lokasi file konfigurasi nya.
            Tetap pada folder bind ketikkan perintah seperti pada gambar dibawah ini untuk membuat file konfigurasi forwardnya
 




                                                                                                                        
            Isi file tersebut dengan konfigurasi seperti pada gambar dibawah ini kemudian save.
 

  

            Jika telah di save sekarang konfigurasikan file reverse.labti dengan cara yang sama tetapi isinya berbeda. Isi file reverse dengan konfigurasi seperti pada gambar dibawah ini kemudian save.
 

  

Jika sudah di save sekarang lakukan restart bind9 dengan cara seperti pada gambar dibawah ini



          Dan kalau tidak ada error maka konfigurasi yang telah dilakukan berhasil. Selanjutnya ialah periksa konfigurasi yang telah dibuat dengan cara mengetikkan perintah seperti gambar dibawah ini dan akan menghasilkan output juga seperti pada gambar dibawah ini
 




            Setelah itu coba untuk menghubungi domain yang telah kita konfigurasikan dengan menggunakan perintah ping sebagai berikut.




            Sampai disini berarti untuk membuat koneksi ke target domain yang tadi dibuat telah berhasil.

Sekarang langkah pembuatan IP static untuk client dengan network yang sama caranya ialah, jalankan ubuntu clientnya setelah itu login dengan nama user kita, lalu buka terminal di client kemudian ketikkan perintah seperti pada gambar dibawah ini
 



            Kemudian isi file tersebut dengan konfigurasi seperti pada gambar di bawah ini. Jika sudah save file tersebut dengan cara yang sama seperti pada saat menyimpan file di server.
              




            Jika sudah, keluar dari terminal kemudian shutdown sistem operasi client. Setelah itu konfigurasikan network pada virtualbox untuk sistem operasi ubuntu client. Dengan cara seleksi sistem operasi ubuntu client pada tampilan awal virtualbox kemudian klik settings lalu pilih network dan rubah konfigurasinya dari NAT menjadi Internal network kemudian tekan ok seperti pada gambar dibawah ini
 




            Setelah mengkonfigurasi network jalan kan kembali sistem operasi ubuntu client. Lalu login seperti biasa dan masuk lagi ke terminal yang ada di client, periksa apakah IP static yang kita konfigurasikan tadi sudah berhasil dengan cara mengetikkan perintah ifconfig seperti pada gambar dibawah ini






            Jika tampilan sudah seperti diatas ini berati IP static yang kita konfigurasikan tadi telah berhasil. Kemudian periksa domain yang telah dikonfigurasikan pada server dengan cara mengetikkan perintah seperti pada gambar dibawah
 




            Sekarang coba melakukan ping dari sisi client terhadap domain yang telah dikonfigurasikan pada server dengan cara seperti pada gambar dibawah ini 
 




            Jika berhasil maka prosesnya akan seperti pada gambar diatas. Selesai untuk pembahasan tentang IP Static di sisi server dan client.

Saturday, 4 August 2018

Analisa Program #5 Membangun Aplikasi Client-Server TCP Sederhana


Listing Program

simpleServer.java:

import java.io.*;
import java.net.*;
public class simpleServer {
public final static int TESTPORT = 5000;
public static void main(String args[]) {
ServerSocket checkServer = null;
String line;
BufferedReader is = null;
DataOutputStream os = null;
Socket clientSocket = null;
try {
checkServer = new ServerSocket(TESTPORT);
System.out.println("Aplikasi Server hidup ...");
} catch (IOException e) {
System.out.println(e);
}
try {
clientSocket = checkServer.accept();
is = new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
os = new DataOutputStream(clientSocket.getOutputStream());
} catch (Exception ei) {
ei.printStackTrace();
}
try {
line = is.readLine();
System.out.println("Terima : " + line);
if (line.compareTo("salam") == 0) {
os.writeBytes("salam juga");
} else {
os.writeBytes("Maaf, saya tidak mengerti");
}
} catch (IOException e) {
System.out.println(e);
}

try {
os.close();
is.close();
clientSocket.close();
} catch (IOException ic) {
ic.printStackTrace();
}
}
}


simpleClient.java:

import java.io.*;
import java.net.*;
public class simpleClient {
public final static int REMOTE_PORT = 5000;
public static void main(String args[]) throws Exception {
Socket cl = null;
BufferedReader is = null;
DataOutputStream os = null;
BufferedReader stdin = new BufferedReader(new
InputStreamReader(System.in));
String userInput = null;
String output = null;
// Membuka koneksi ke server pada port REMOTE_PORT
try {
cl = new Socket(args[0], REMOTE_PORT);
is = new BufferedReader(new
InputStreamReader(cl.getInputStream()));
os = new DataOutputStream(cl.getOutputStream());
} catch(UnknownHostException e1) {
System.out.println("Unknown Host: " + e1);
} catch (IOException e2) {
System.out.println("Erorr io: " + e2);
}
// Menulis ke server
try {
System.out.print("Masukkan kata kunci: ");
userInput = stdin.readLine();
os.writeBytes(userInput + "\n");
} catch (IOException ex) {
System.out.println("Error writing to server..." + ex);
}
// Menerima tanggapan dari server
try {
output = is.readLine();
System.out.println("Dari server: " + output);
} catch (IOException e) {
e.printStackTrace();
}
// close input stream, output stream dan koneksi
try {
is.close();
os.close();
cl.close();
} catch (IOException x) {
System.out.println("Error writing...." + x);
}
}
}



Logika Program

simpleServer.java
Program simpleServer.java berfungsi sebagai server yang akan menerima dan memproses data dari client. Nah jika program berhasil dijalankan maka akan muncul sebuah tulisan “Aplikasi server hidup”. Kemudian jika client sudah terhubung dengan server, client akan diminta memasukkan kata kunci berupa kata “salam” tanpa tanda petik. Jika kata kunci tidak sesuai, maka server akan menampilkan tulisan “Maaf, saya tidak mengerti”.

simpleClient.java

Program simpleClient.java berfungsi sebagai Client. Jika program ini berhasil dijalankan, maka Client akan diminta untuk memasuki kata kunci berupa kata “salam”. Kata kunci tersebut akan diproses dan dibalas oleh server berupa tulisan “salam juga”.



Output






source code :