Get
IP
Berikut
akan dijelaskan program untuk menampilkan ip address host komputer melalui
program java. Program tersebut dapat di running melalui command prompt dengan
meng compilenya terlebih dahulu menggunakan perintah javac nama_file.java kemudian ketik java nama_file.
Listring Program
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
Pertama dimulai dengan
memanggil library atau paket yamg membuat suatu program ini dapat melalukan
aktivitas ataupun komunikasi melalui jaringan sehingga proses pencarian alamat
ip dari suatu host komputer dapat dilakukan yaitu menggunakan library “java.net.*:.
Selanjutnya dibuatlah kelas dari program tersebut dengan nama getIP yang di
dalamnya terdiri dari beberapa perintah untuk melakukan pencarian serta
pencetakan alamat ip tersebut. Proses pencetakan alamat ip ini dilakukan
melalui perulang for dengan kondisi bahwa perulangan dilakukan sebanyak 0
sampai tidak lebih dari panjang pada nilai yang terdapat pada variabel ip. Jika
variabel I lebih dari 0 maka alamat ip akan tercetak. Variabel array ip di
dapat melalui nilai pada variabel host yang di dapatkan alamatnya melalui
perintah getAddress.
Output
Get
Name
Berikut
akan dijelaskan program untuk menampilkan nama dari host komputer melalui
program java. Program tersebut dapat di running melalui command prompt dengan
meng compilenya terlebih dahulu menggunakan perintah javac nama_file.java kemudian ketik java nama_file.
Listing
Program
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
Listing
di atas merupakan proses untuk menampilkan nama dari komputer host dalam sutu
jaringan. Untuk dapat melakukan proses tersebut, pertama dilakukan pemanggilan
library java.net.* yaitu dengan melakukan import kedalam program tersebut.
Dengan adanya library tersebut, membuat program dapat melakukan aktivitas pencarian
nama dari host komputer. Selanjutnya dibuatlah class yang di dalamnya
berlangsung proses-proses bagaimana pencarian tersebut dan pencetakan di
lakukan yaitu dengan nama class getName. Pencarian nama host diperlukan yang
namanya perintah inetAddress dengan membuat variabelnya dengan nama host yang
di definisikan dengan nilai null. Melalui variabel host tersebutlah nantinya di
dapat melalui perintah “getHostName()” yaitu memanggil nama host dari nilai
variabel tersebut yang nantinya akan dicetak.
Output
IP
to Name
Berikut
akan dijelaskan program untuk menampilkan nama dari ip address host komputer
melalui program java. Program tersebut dapat di running melalui command prompt
dengan meng compilenya terlebih dahulu menggunakan perintah javac nama_file.java kemudian ketik java nama_file.
Listing
Program
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
Proses
pertama dimulai dengan mengimport library java.net.* untuk dapat melakukan
sambungan atau aktivitas dalam suatu jaringan. Selanjutnya dibuatlah class
dengan nama IPtoName yang bersifat public yang membuatnya dapat di akses di
luar class. Pencarian imulai dengan menentukan kondisi dari string pada
variabel host. Jika sama dengan maka ia akan mencetak nama dari ip address
tersebut namun jika tidak ia akan mengecek ke statement catch untuk menangani
kesalahan. Nama dari ip address tercetak melalui perintah “System.out.println(address.getHostName())”
Output
Nslookup
Berikut
akan dijelaskan program untuk menampilkan ip address dengan nama host komputer
melalui program java. Program tersebut dapat di running melalui command prompt
dengan meng compilenya terlebih dahulu menggunakan perintah javac nama_file.java kemudian ketik java nama_file.
Listing
Program
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
Proses
pertama dimulai dengan mengimport library java.net.* untuk dapat melakukan
sambungan atau aktivitas dalam suatu jaringan. Selanjutnya dibuatlah class
dengan nama NsLookup yang bersifat public yang membuatnya dapat di akses di
luar class. Proses pertama dimulai
dengan pembuatan variabel host dengan tipe data string yang di definisikan
engan nilai pada variabel array “args[0]”. Jika kondisi nilai pada variabel
tersebut sama dengan 0 maka proses pencetakan nama host akan di lakukan dan
proses pencarian berakhir serta pencetakan alamat ip melalui variabel ip dengan
mengambil nilai dari variabel address melalui perintah “getAddress” akan di
lakukan jika kondisi nilai pada variabel I lebih dari 0. Jika terjadi kesalahan
program akan beralih ke statement catch dan melakuan pencetakan yang menyatakan
host tidak terdeteksi.
Output
Client-Server
Berikut
akan dijelaskan program untuk membuat program komunikasi jaringan antara client
dan server melalui program java. Program tersebut dapat di running melalui
command prompt dengan meng compilenya terlebih dahulu menggunakan perintah javac nama_file.java kemudian ketik java nama_file.
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();
}
}
}
Listing Program 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
Lisitng di atas menjelaskan proses komunikasi program antar
server dengan klien dalam suatu jaringan. Program dimulai dengan penimport an
library java.io.* agar klien dan server dapat saling berkomunikasi yaitu proses
input dan output. Selanjutnya adalah import library java.net.*
untuk dapat melakukan sambungan atau aktivitas dalam suatu jaringan. Class pada
program ini bernama simpleServer yang di dalamnya berlangsung proses jalannya
komunikasi antara server dengan klien. Komunikasi di lakukan melalui port 5000
yang di simpan ke dalam variabel TESTPORT. Program akan melalukukan pemeriksaan
pada port tersebut apakah program server sudah tersambung atau belum melalui
statement try. Jika tersambung program akan mencetak keterangan yang menyatakan
bahwa program server telah aktif. Proses penerimaan input dari klien di tampung
melalui variabel line pada program server yang nantinya pesan masuk dalam
variabel tersebut akan di panggil dan di cetak menggunakan perintah “System.out.println("Terima
: " + line);”. Begitu juga dengan program klien proses input dilakukan
melalui variabel userInput serta pencetakan pesan yang dikirim melalui variabel
output.
Output

