YES,I AM

YES,I AM

Senin, 15 Mei 2017

Membangun Aplikasi Client-Server TCP Sederhana

listing program server :

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);
}
}
}


 Penjelasan coding
  
Program SERVER :


ServerSocket checkServer = null;
String line;
BufferedReader is = null;
DataOutputStream os = null;
Socket clientSocket = null;
  
pada coding diatas merupkan seuatu metod dalam java jaringan.

try {
checkServer = new ServerSocket(TESTPORT);
System.out.println("Aplikasi Server hidup ...");
} catch (IOException e) {
System.out.println(e);
}

pada coding diatas digunakan untuk menentukan port yang akan dikoneksi dengan client.

try {
clientSocket = checkServer.accept();
is = new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
os = new DataOutputStream(clientSocket.getOutputStream());
} catch (Exception ei) {
ei.printStackTrace();
}

Pada coding diatas digunakan untuk menentukan soket yang akan dikonkesi ke dalam client.

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);
}

 coding diatas digunakan untuk menbaca client. 

try {
os.close();
is.close();
clientSocket.close();
} catch (IOException ic) {
ic.printStackTrace();
}
}
 coding diatas digunakan untuk menutup  program server 

Program CLIENT :

Socket cl = null;
BufferedReader is = null;
DataOutputStream os = null;
BufferedReader stdin = new BufferedReader(new
InputStreamReader(System.in));
String userInput = null;
String output = null;

 coding diatas merupakan method dalam java jaringan client server.

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);
}

   coding diatas digunakan untuk menremot client ke server.

try {
output = is.readLine();
System.out.println("Dari server: " + output);
} catch (IOException e) {
e.printStackTrace();
}

 codign diatas untuk membaca dan menulis perintah ke server.


try {
is.close();
os.close();
cl.close();
} catch (IOException x) {
System.out.println("Error writing...." + x);
}
}
}

 coding diatas digunakan untuk menutup program aplikasi tersebut.

PEMROGRAMAN JARINGAN NSLOOKUP

pada kesempatan kali ini saya akan menjelaskan listing program nslookup. berikut ini listingn ya :

import java.net.*;
public class NsLookup {
public static void main(String args[]) {
if (args.length == 0) {
System.out.println("Pemakaian: java NsLookup <hostname>");
System.exit(0);
}
String host = args[0];
InetAddress address = null;
try {
address = InetAddress.getByName(host);
} catch(UnknownHostException e) {
System.out.println("Unknown host");
System.exit(0);
}
byte[] ip = address.getAddress();
for (int i=0; i<ip.length; i++) {
if (i > 0) System.out.print(".");
System.out.print((ip[i]) & 0xff);
}
System.out.println();
}
}

berikut ini logika program :

if (args.length == 0) {
System.out.println("Pemakaian: java NsLookup <hostname>");
System.exit(0);
   
      pada coding diatas digunakan untuk mencetak statement java ns lookup jika panjang argsnya sama dengan 0. kemudian sistem berhenti.

String host = args[0];
InetAddress address = null;
try {
address = InetAddress.getByName(host);
} catch(UnknownHostException e) {
System.out.println("Unknown host");
System.exit(0);
       
       pada coding diatas digunakan untuk menentukan InetAddress yang mana akan menentukan jenis hostnya.

byte[] ip = address.getAddress();
for (int i=0; i<ip.length; i++) {
if (i > 0) System.out.print(".");
System.out.print((ip[i]) & 0xff);

     pada coding ini digunakan untuk menentukan byte ip di komputer tersebut. dengan menggunakan pengulanagan for dan percabangan if untuk mendapat alamat ipnya.

PEMROGRAMAN JARINGAN IP TO NAME

Tugas ke-3 kali ini saya akan membahas tentang iptoname pada java. Dibawah ini merupakan coding yang digunakanc ;

import java.net.*;
public class IPtoName {
public static void main(String args[]) {
if (args.length == 0) {
System.out.println("Pemakaian: java IPtoName <IP address>");
System.exit(0);
}
String host = args[0];
InetAddress address = null;
try {
address = InetAddress.getByName(host);
} catch (UnknownHostException e) {
System.out.println("invalid IP - malformed IP");
System.exit(0);
}
System.out.println(address.getHostName());
}
}

Penjelasan coding diatas ;

if (args.length == 0) {
System.out.println("Pemakaian: java IPtoName <IP address>");
System.exit(0);
}
 pada coding diatas menggunakan percabangan if. Perintah dari coding di atas yaitu jika panjang sama dengan 0 maka akan tercetak statement yang berada dalam tanda kurung tersebut dan kemudian program berhenti.

String host = args[0];
InetAddress address = null;
try {
address = InetAddress.getByName(host);
} catch (UnknownHostException e) {
System.out.println("invalid IP - malformed IP");
System.exit(0);
}
System.out.println(address.getHostName());
}
}

jika string hostnya bernilai 0 maka akan masuk ke pengulangan java yang mana ip dalam komputer tersebut tidak valid. 


PEMROGRAMAN JARINGAN GET NAME

Pada materi sebelumnya saya membahas tentang get ip, untuk pertemuan kali ini saya akan menjelaskna tentang coding get name. berikut ini contoh codingnya :

import java.net.
public class getName {
public static void main(String args[]) throws Exception {
InetAddress host = null;
host = InetAddress.getLocalHost();
System.out.println("Nama komputer Anda: " +
host.getHostName());
}
}

Dibawah ini saya akan menjelaskan tentang logika program di atas ;

InetAddress host = null;
host = InetAddress.getLocalHost();
System.out.println("Nama komputer Anda: " +
host.getHostName());

pada coding diatas digunakan untuk mengetahui nama komputer yang kita gunakan. Secara otomatis program akan mencari tau nama komputer yang kita gunan. System.out.println digunakan untuk mencetak data pada ine berikutnya.
x

PEMROGRAMAN JARINGAN GET IP .JAVA

Pada kesempatan kali ini saya akan menjelaskan tentang listing program get ip, sebagai tugas matakuliah pemrograman jaringan.

Berikut ini listingnya :

import java.net.*;
public class getIP {
public static void main(String args[]) throws Exception {
InetAddress host = null;
host = InetAddress.getLocalHost();
byte ip[] = host.getAddress();
for (int i=0; i<ip.length; i++) {
if (i > 0) {
System.out.print(".");
}
System.out.print(ip[i] & 0xff);
}
System.out.println();
}
}

Logika program :

import java.net.*;
        coding diatas merupakan paket dalam pembuatan program jaringan.

public class getIP {
public static void main(String args[]) throws Exception {
        coding diatas digunakan untuk menentukan class dari seluruh program tersebut. dan dibawahnya merupakan metod dalam java.

host = InetAddress.getLocalHost();
byte ip[] = host.getAddress();
       coding diatas digunakan untuk mendapatkan ip secara langsung yang berada di dalam komputer.

for (int i=0; i<ip.length; i++) {
if (i > 0) {
System.out.print(".");
}
System.out.print(ip[i] & 0xff);
}
System.out.println();
}
      coding diatas merupakan bentuk percabangan dari program tersebut, yang mana jika data lebih dari 0, maka pemisah menggunakan titik namun jika tidak seperti dibawahnya.

Sekian penjelasan coding pada tugas pertama ini,