Guten morgen zusammen,
momentan bin ich noch dabei mein Java Subnetzberechnungsprogramm zu schreiben und da ich noch ein ziemlicher anfänger bin brauch ich noch etwas hilfe.
Das Programm läuft ansich schon aber die berechnung der NetID und der Broadcast ist mir noch ein kleines rätsel. Wäre Top wen Ihr mal drüber schauen könntet
Vielen Dank!
momentan bin ich noch dabei mein Java Subnetzberechnungsprogramm zu schreiben und da ich noch ein ziemlicher anfänger bin brauch ich noch etwas hilfe.
Das Programm läuft ansich schon aber die berechnung der NetID und der Broadcast ist mir noch ein kleines rätsel. Wäre Top wen Ihr mal drüber schauen könntet
Java:
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class SUBCALC{
public static void main(String[] args) {
int mask1 = 0;
//START
System.out.println();
System.out.println("Willkommen!");
System.out.println();
System.out.println("Sie haben die Vollautomatische DEMO Subnetz Berechnung's Einheit /SUBCALC/ gestartet");
System.out.println("Bitte geben sie die erste Zahl Ihrer IP-Adresse an");
System.out.println();
System.out.println("Beispiel: -> 192 <- .168.10.2");
System.out.println();
//Eingabe
Scanner eingabe = new Scanner(System.in); //Eingabe1 //Abfrage
String Wert1 = eingabe.nextLine();
if(Integer.valueOf(Wert1) > 255 && Integer.valueOf(Wert1) > 0)
{
System.out.println("Deine Eingabe war Fehlerhaft");
}
System.out.println();
System.out.println("Sie haben " + Wert1 + " eingegeben.");
System.out.println();
System.out.println("Bitte geben Sie die zweite Zahl ein");
System.out.println();
System.out.println("Beispiel: 192. -> 168 <- .10.2");
System.out.println();
String Wert2 = eingabe.nextLine(); //Eingabe2
if(Integer.valueOf(Wert2) > 255 && Integer.valueOf(Wert1) > 0)
{
System.out.println("Deine Eingabe war Fehlerhaft");
}
System.out.println();
System.out.println("Sie haben " + Wert2 + " eingegeben.");
System.out.println();
System.out.println("Bitte geben Sie die dritte Zahl ein");
System.out.println();
System.out.println("Beispiel: 192.168. -> 10 <- .2");
System.out.println();
String Wert3 = eingabe.nextLine(); //Eingabe3
if(Integer.valueOf(Wert3) > 255 && Integer.valueOf(Wert1) > 0)
{
System.out.println("Deine Eingabe war Fehlerhaft");
}
System.out.println();
System.out.println("Sie haben " + Wert3 + " eingegeben.");
System.out.println();
System.out.println("Bitte geben Sie die letzte Zahl ein");
System.out.println();
System.out.println("Beispiel: 192.168.10. -> 2 <- ");
System.out.println();
String Wert4 = eingabe.nextLine(); //Eingabe4
if(Integer.valueOf(Wert4) > 255 && Integer.valueOf(Wert1) > 0)
{
System.out.println("Deine Eingabe war Fehlerhaft");
}
System.out.println();
System.out.println("Sie haben " + Wert4 + " eingegeben.");
System.out.println();
System.out.println("Ihre Eingebene IP-Adresse lautet:");
System.out.println(Wert1 + "." + Wert2 + "." + Wert3 + "." + Wert4); //Ausgabe
System.out.println();
System.out.println("Um Fortzufahren Bitte -Enter- Druecken"); //Enter abfrage
Scanner E = new Scanner(System.in);
String Enter = E.nextLine();
System.out.println();
System.out.println("Bitte geben sie jetzt die Mask Bits an ");
System.out.println(); //Mask Bits
System.out.println("Beispiel: 192.168.10.2 -> /24 <- im Bereich von 24 bis 30");
System.out.println();
String maskbits = eingabe.nextLine();
if(Integer.valueOf(maskbits) >= 31 || Integer.valueOf(maskbits) > 24)
{
System.out.println("Deine Eingabe war Fehlerhaft");
}
System.out.println();
System.out.println("Sie haben " + maskbits + " Mask Bits angegeben.");
System.out.println();
System.out.println();
System.out.println("Um Fortzufahren Bitte -Enter- Druecken"); //Enter2 Abfrage
Scanner N = new Scanner(System.in);
String Enter2 = N.nextLine();
;
System.out.println("Ihre Vollstaendige IP-Adresse lautet " + Wert1 + "." + Wert2 + "." + Wert3 + "." + Wert4 + "/" + maskbits);
System.out.println("Um die Berechnung durchzufuehren Bitte -Enter- Druecken"); //Enter4 Abfrage
Scanner P = new Scanner(System.in);
String Enter4 = P.nextLine();
//Rechnung
System.out.println();
System.out.println();
//Binär umwandlung
String binaryString = String.format("%8s", Integer.toBinaryString(Integer.valueOf(Wert1))).replace(" ", "0");
System.out.print(binaryString); // Auflösung 1
System.out.print(".");
String binaryString2 = String.format("%8s", Integer.toBinaryString(Integer.valueOf(Wert2))).replace(" ", "0");
System.out.print(binaryString2); // Auflösung 2
System.out.print(".");
String binaryString3 = String.format("%8s", Integer.toBinaryString(Integer.valueOf(Wert3))).replace(" ", "0");
System.out.print(binaryString3); // Auflösung 3
System.out.print(".");
String binaryString4 = String.format("%8s", Integer.toBinaryString(Integer.valueOf(Wert4))).replace(" ", "0");
System.out.print(binaryString4); // Auflösung 4
System.out.println();
System.out.println();
if (Integer.valueOf(Wert1) <= 127) //Klasse oder CIDR
{
System.out.println("Du befindest dich Wahrscheinlich in einem Klasse A Netz");
}
if(Integer.valueOf(Wert1) >= 128 && Integer.valueOf(Wert1) <= 191)
{
System.out.println("Du befindest dich Wahrscheinlich in einem Klasse B Netz");
}
if(Integer.valueOf(Wert1) >= 192 && Integer.valueOf(Wert1) <= 223)
{
System.out.println("Du befindest dich Wahrscheinlich in einem Klasse C Netz");
}
System.out.println();
int mask = Integer.valueOf(maskbits); //Subnetzmaske ausgeben
int value = 256 - (int)Math.pow(2, 32 - mask);
System.out.println("Deine Subnetzmaske ist 255.255.255." + value);
System.out.println();
System.out.println();
System.out.println();
System.out.println("Leider konnte das Programm nicht fertig geschrieben werden"); // Fehlendes Wissen
System.out.println("aber ich hoffe das Sie trotzdem einen ersten eindruck erhalten haben");
System.out.println();
System.out.println("Vielen Dank und Auf Wiedersehen");
System.out.println();
System.out.println("--Ende des Programms--");
//Ende
}
}