commit 179f16d99378ee6df02b686e180a44e9de82f71f Author: 0qln <0qln@proton.me> Date: Wed Nov 12 22:31:09 2025 +0100 aufgabe 3 diff --git a/praktikum-5/.gitignore b/praktikum-5/.gitignore new file mode 100644 index 0000000..43cad3d --- /dev/null +++ b/praktikum-5/.gitignore @@ -0,0 +1,2 @@ +build +result diff --git a/praktikum-5/aufgabe1/InternetAdresse.java b/praktikum-5/aufgabe1/InternetAdresse.java new file mode 100644 index 0000000..26d749b --- /dev/null +++ b/praktikum-5/aufgabe1/InternetAdresse.java @@ -0,0 +1,32 @@ +// DK, 18.11.2022 + +import java.net.UnknownHostException; +import java.net.InetAddress; + +public class InternetAdresse { + public static void main( String args[] ) { + try { + InetAddress iaddr1 = InetAddress.getByName("www.fh-dortmund.de"); + InetAddress iaddr2 = InetAddress.getLocalHost(); + InetAddress iaddr3 = InetAddress.getByName("localhost"); + System.out.println(iaddr1.getHostName() + ": " + iaddr1.getHostAddress()); + System.out.println(iaddr2.getHostName() + ": " + iaddr2.getHostAddress()); + System.out.println(iaddr3.getHostName() + ": " + iaddr3.getHostAddress()); + System.out.println(); + + byte[] ip = iaddr3.getAddress(); + for(int i = 0; i < ip.length; i++) { + System.out.println(i + ": " + ip[i]); + } + System.out.println(); + + InetAddress[] iaddr4 = InetAddress.getAllByName("www.adeso.de"); + for (int i = 0; i < iaddr4.length; i++) { + System.out.println(i + ": " + iaddr4[i].getHostName() + ": " + iaddr4[i].getHostAddress()); + } + } + catch (UnknownHostException e) { + System.out.println( "Host nicht bekannt" ); + } + } +} diff --git a/praktikum-5/aufgabe2/MACAdresse.java b/praktikum-5/aufgabe2/MACAdresse.java new file mode 100644 index 0000000..172e21d --- /dev/null +++ b/praktikum-5/aufgabe2/MACAdresse.java @@ -0,0 +1,43 @@ +import java.net.InetAddress; +import java.net.UnknownHostException; +import java.net.SocketException; +import java.net.NetworkInterface; + +public class MACAdresse { + public static void main( String args[] ) { + try { + InetAddress iaddr1 = InetAddress.getByName("www.fh-dortmund.de"); + InetAddress iaddr2 = InetAddress.getLocalHost(); + InetAddress iaddr3 = InetAddress.getByName("localhost"); + System.out.println(iaddr1.getHostName() + ": " + iaddr1.getHostAddress()); + System.out.println(iaddr2.getHostName() + ": " + iaddr2.getHostAddress()); + System.out.println(iaddr3.getHostName() + ": " + iaddr3.getHostAddress()); + System.out.println(); + + byte[] ip = iaddr3.getAddress(); + for(int i = 0; i < ip.length; i++) { + System.out.println(i + ": " + ip[i]); + } + System.out.println(); + + InetAddress[] iaddr4 = InetAddress.getAllByName("www.adeso.de"); + for (int i = 0; i < iaddr4.length; i++) { + System.out.println(i + ": " + iaddr4[i].getHostName() + ": " + iaddr4[i].getHostAddress()); + } + System.out.println(); + + var net = NetworkInterface.getByName("eth0"); + byte[] macAdress = net.getHardwareAddress(); + for (int i = 0; i < macAdress.length; i++) { + System.out.println(i + ": " + macAdress[i]); + } + } + catch (UnknownHostException e) { + System.out.println( "Host nicht bekannt: " + e ); + } + catch (SocketException e) { + System.out.println("Socket exception: " + e); + } + } + +} diff --git a/praktikum-5/aufgabe3/Client.java b/praktikum-5/aufgabe3/Client.java new file mode 100644 index 0000000..7f90937 --- /dev/null +++ b/praktikum-5/aufgabe3/Client.java @@ -0,0 +1,38 @@ +package aufgabe3; + +import java.net.Socket; +import java.net.UnknownHostException; +import java.util.Scanner; +import java.io.OutputStreamWriter; +import java.io.IOException; + +public class Client { + private int port; + + public Client(int port) { + this.port = port; + } + + public void send(String msg) throws IOException { + var socket = new Socket("localhost", port); + var out = socket.getOutputStream(); + var writer = new OutputStreamWriter(out); + writer.write(msg); + writer.flush(); + writer.close(); + } + + public static void main(String[] args) { + try { + int port = 4711; + var client = new Client(port); + var reader = new Scanner(System.in); + while (true) { + var msg = reader.nextLine(); + client.send(msg); + } + } catch (Exception e) { + System.out.println(e); + } + } +} diff --git a/praktikum-5/aufgabe3/Server.java b/praktikum-5/aufgabe3/Server.java new file mode 100644 index 0000000..148d5a8 --- /dev/null +++ b/praktikum-5/aufgabe3/Server.java @@ -0,0 +1,42 @@ +package aufgabe3; + +import java.io.IOException; +import java.io.InputStreamReader; +import java.net.ServerSocket; +import java.net.Socket; + +public class Server { + private ServerSocket socket; + + public Server(ServerSocket socket) { + this.socket = socket; + } + + public String receive() throws IOException { + var client = socket.accept(); + var in = client.getInputStream(); + var reader = new InputStreamReader(in); + var result = ""; + var curr = reader.read(); + while (curr != -1) { + result += (char)curr; + curr = reader.read(); + } + return result; + } + + public static void main(String[] args) { + try { + int port = 4711; + var socket = new ServerSocket(port); + var server = new Server(socket); + System.out.println("Listening on port " + port); + while (true) { + var msg = server.receive(); + System.out.println("Received message: " + msg); + } + } catch (Exception e) { + System.out.println(e); + } + } +} diff --git a/praktikum-5/build.xml b/praktikum-5/build.xml new file mode 100644 index 0000000..c430d7a --- /dev/null +++ b/praktikum-5/build.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/praktikum-5/shell.nix b/praktikum-5/shell.nix new file mode 100644 index 0000000..0f505db --- /dev/null +++ b/praktikum-5/shell.nix @@ -0,0 +1,13 @@ +with import {}; + mkShell { + packages = [ + openjdk + ant + astyle + jdt-language-server + ]; + + shellHook = '' + echo "Usage Example: ant run -Dmain-class=aufgabe3.Server" + ''; + }