1. 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 (i > 0) {
System.out.print(".");
}
System.out.print(ip[i] & 0xff);
}
System.out.println();
}
}
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();
}
}
Listing program diatas digunakan untuk menampilkan
IP address dari PC. InetAddress host = null artinya terdapat object InetAddress
yang bernilai kosong/null, host = InetAddress.getLocalHost(); artinya perintah
InetAddress.getLocalHost(); ini untuk mengambil IP dari local host lalu
disimpan dengan variabel host. byte ip[] = host.getAddress(); artinya
host.getAddress(); untuk mengambil IP address lalu disimpan dengan variabel ip
berbentuk array dan bertipe data byte. lalu Terdapat perulangan untuk dikoreksi
untuk dicetak.
2. 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());
}
}
Listing program diatas digunakan untuk menampilkan IP address dari PC.
InetAddress host = null artinya terdapat object InetAddress yang bernilai
kosong/null, host = InetAddress.getLocalHost(); artinya perintah
InetAddress.getLocalHost(); ini untuk mengambil IP dari local host lalu
disimpan dengan variabel host. host.getHostName(); untuk mengambil nama host
lalu dicetak.
3. IP to
Name
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());
}
}
Listing program diatas digunakan untuk menampilkan Nama PC saat kita sudah
mengetahui IPnya. Pada program ini terdapat percabangan if untuk mengecek
panjang array pada fungsi utama jika sama dengan 0 maka program
akan mencetak "pemakaian : java IPtoName <IP address>".
Program akan keluar/dimatikan dan mendeklarasikan kembali nilai variabel host
yaitu array 0 dan untuk variabel address pada object InetAddress bernilai null.
Pada program ini juga terdapat try dan catch. Jika terdapat kesalahan maka
program akan mencetak Invalid IP - malformed IP dan program akan
keluar/dimatikan. Namun jika tidak ditemukan kesalahan maka program akan
mencetak nama komputer user.
4. 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();
}
}
Listing program diatas digunakan untuk menampilkan IP saat kita sudah mengetahui
Nama PCnya. Pada program ini terdapat percabangan if untuk mengecek panjang
array pada fungsi utama jika sama dengan 0 maka program
akan mencetak "pemakaian : java NsLookup <hostname>".
Program akan keluar/dimatikan dan mendeklarasikan kembali nilai variabel host
yaitu array 0 dan untuk variabel address pada object InetAddress bernilai null.
Pada program ini juga terdapat try dan catch. Jika terdapat kesalahan maka
program akan mencetak Unknown host dan program akan keluar/dimatikan. Namun
jika tidak ditemukan kesalahan maka program akan mencetak IP Address.
5. Membangun
aplikasi server dan client
a. Simple
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();
}
}
}
b. Simple
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);
}
}
}
Tidak ada komentar:
Posting Komentar