Selasa, 25 April 2017

Tugas Pemrograman Jaringan

#Get IP

Kodingan 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 Kodingan :
Program ini bertujuan untuk mengetahui ip address dari pc yang kita gunakan, disini memerlukan import library untuk menghubungkan jaringan. selanjutnya beri nilai null pada host agar nanti bisa kita masukkan ip pada komputer tersebut.

Output :


#Get Name

Kodingan 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 Kodingan :
Hampir mirip dengan program Get IP, yang membedakannya adalah program ini untuk mengetahui nama dari komputer yang kita gundakan.

Output :


#IP To Name

Kodingan 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 :
untuk menjalankan program ini harus dengan cara java namafile namakomputer. jika tidak sesuai program akan error. fungsi dari program ini untuk mendapatkan informasi ip dan nama komputer yang digunakan.

Output :

#NS LookUp

Kodingan 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:
program ini hampir mirip dengan program IPtoName, yang membedakannya adalah pada program ini untuk menampilkan hostname dari komputer sedangkan pada program IPtoName digunakan untuk mendapatkan IP dari komputer dan nama komputernya .

Output:


# Simple Client Server

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

Kodingan SimpleClient :

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 SimpleServer :
Kodingan simpleserver digunakan sebagai server untuk nantinya bisa chating dengan client, program ini harus dijalankan terlebih dahulu baru setelah itu menjalankan program simpleclient.  di kodingan ini diberikan nilai port yang harus sama dengan port pada client agar bisa terhubung. jika server sudah dijalankan maka client bisa dijalankan setelahnya ,lalu saat client terhubung dengan server maka server akan menampilkan pesan bahwa client telah terhubung.

Logika SimpleClient :
Kodingan SimpleClient digunakan sebagai client untuk nantinya bisa mengirim pesan dengan server. program ini dijalankan setelah simpleserver sudah berjalan.. diprogram ini memiliki nilai port yang harus sama dengan nilai port yang berada di simpleserver agar bisa terhubung dengan baik.


Ouput :



Tidak ada komentar:

Posting Komentar