Program Jaringan (Get Ip, Get Name, Ip to Name, and NsLookup) Server-client

Listing program java Get IP :

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=""> 0) {
System.out.print(".");
}
System.out.print(ip[i] &amp; 0xff);
}
System.out.println();
}
}


Logika Program :
Program untuk mengetahui alamat ip address yang digunakan pada komputer yang sedang digunakan. Pemanggilan method untuk mengetahui alamat ip pada komputer tersebut dapat menjalankan perintah impor java.net ialah package java Networks library. Pendeklarasian variabel host = InetAddress akan dipanggil menggunakan method getLocalHost() untuk mendapatkan alamat ip komputer. Setelah perulangan for terpebuhi maka akan menjalankan pencetakan alamat  ip yang sedang digunakan oleh komputer tersebut. Cara menjalankan program buka cmd ketikkan Javac namafile.java kemudian nama classnya atau java namaclassmain lalu program akan mencatak  alamat ip.

Output :


Listing program java Get Name :

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

Logika Program :
Program memakai paket java.net yang mempunyai fungsi dengan memperbolehkan program untuk berkomunikasi melalui jaringan. kemudian program membuat nama class yang bernama getName. Pendeklarasikan InetAddress host bernilai null dan deklarasi host dengan mendapat nilai localhost kemudian byte akan memanggil host dengan getAddress. InetAddress.getLocalHost(); didapat melalui nilai InetAddress dari localhost. Program melakukan pencetakkan Ip komputer dengan karakter string sesuai nama PC dengan memanggil nilai variable host.getHostName();

Output :



Listing program java IP to Name :

1. Buat program di bawah dengan nama IPtoName.java


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

Logika Program :
Program untuk mengetahui nama pc dengan menggunakan alamat ip address pada pc tersebut. Kondisi if dimana jika panjang string host == 0, maka cetak pernyataan. Pendeklarasian String host yaitu 0 dan InetAddress address bernilai null. Perintah try dan catch digunakan untuk menangkap kesalahan, try akan memanggil nama host kemudian disimpan didalam variabel address, jika ada kesalahan maka program akan mencetak invalid IP – malformed ip, jika program tidak terjadi kesalahan maka program akan mencetak nilai nama address host.


Output :


Listing program java NsLookup :


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

Logika Program :
Program untuk mengetahui alamat ip address dengan menggunakan nama pc yang ingin diketahui. Program mencetak “Pemakaian: java NsLookup <IP hostname>” lalu program akan terhenti walaupun setelahnya terdapat perintah untuk mencetak alamat IP yang didapat dengan mencari nama host.

Output :



Client-Server TCP

Listing program java 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();
}
}
}

Logika Program :
Program ini berfungsi sebagai server. Untuk bisa menggunakan method yang berhubungan dengan jaringan (network), maka library untuk network di-import terlebih dahulu dengan menggunakan perintah import java.net.*. Pada aplikasi ini juga terdapat perintah untuk meminta masukkan dari user, maka untuk menggunakan perintah yang berhubungan dengan input-output, maka package java.io.* di-import terlebih dahulu. Aplikasi ini di-compile terlebih dahulu. Kemudian akan menunggu pesan dan koneksi dari program client. Jika client berhasil mengirimkan pesannya, kemudian server akan mencetak pesan, lalu server akan langsung menutup koneksi dan program akan berhenti. Pesan yang akan dicetak adalah kata kunci “salam” yang disimpan pada variabel “line”, jika pesan yang dikirim sesuai, maka program pada client akan mencetak “salam juga”, 

Listing program java Client :
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 :
Program ini berfungsi sebagai client. Untuk bisa menggunakan method yang berhubungan dengan jaringan (network), maka library untuk network di-import terlebih dahulu dengan menggunakan perintah import java.net.*. Pada aplikasi ini juga terdapat perintah untuk meminta masukkan dari user, maka untuk menggunakan perintah yang berhubungan dengan input-output, maka package java.io.* di-import terlebih dahulu. Aplikasi ini di-compile setelah server dan pastikan server sedang berjalan. Program ini akan meminta kata kunci yang telah ditetapkan pada program client. Kemudia akan mencetak “Dari server :” diikuti dengan “salam juga” maupun “Maaf, saya tidak mengerti”, tergantung dari masukkan dari user. Jika pesan dari server sudah dicetak, maka koneksi akan terputus dan program akan terhenti.

Output :

Server



Client


Komentar

Postingan populer dari blog ini

Perkembanga Jaringan Telekomunikasi G

Cloud Computing