Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
gf_informatik:web_sca:netzwerke:aufgaben_b [2023-11-05 12:30] – [Lösungen] scagf_informatik:web_sca:netzwerke:aufgaben_b [2023-11-05 12:53] (aktuell) sca
Zeile 44: Zeile 44:
 Subnetzmasken können auch durch CIDR-Suffix kürzer ausgedrückt werden. Dieser Wert gibt die Anzahl Bits an, die in der Subnetzmaske $1$ sind. Z.B. steht $/10$ für $255.192.0.0$. Subnetzmasken können auch durch CIDR-Suffix kürzer ausgedrückt werden. Dieser Wert gibt die Anzahl Bits an, die in der Subnetzmaske $1$ sind. Z.B. steht $/10$ für $255.192.0.0$.
  
-Wandle um $4-$Byte-Notation $\rightarrow$ CIDR-Notation: +a) Wandle um $4-$Byte-Notation $\rightarrow$ CIDR-Notation: 
-   * $255.255.255.255$ +   i) $255.255.255.255$ 
-   * $255.255.255.0$ +   ii) $255.255.255.0$ 
-   * $255.240.0.0$+   iii) $255.240.0.0$
  
-Wandle um CIDR-Notation $\rightarrow$ $4-$Byte-Notation: +b) Wandle um CIDR-Notation $\rightarrow$ $4-$Byte-Notation: 
-   * $/7$ +   i) $/7$ 
-   * $/25$+   ii) $/25$
  
 === Aufgabe B6: Subnetzmasken === === Aufgabe B6: Subnetzmasken ===
  
    1. Wie viele Hosts kann ein Netzwerk mit Subnetzmaske $255.255.255.192$ haben?    1. Wie viele Hosts kann ein Netzwerk mit Subnetzmaske $255.255.255.192$ haben?
 +   1. Wie viele Hosts kann ein Netzwerk mit CIDR /14 haben?
 +   1. Welche Subnetzmaske (normal und CIDR) sollte der Informatiker einer Firma mit ca. $5000$ Geräten für das Netzwerk der Firma wählen?
 +   
 +
  
 === Zusatzaufgaben (Programmieren) === === Zusatzaufgaben (Programmieren) ===
  
-== Aufgabe 1 ==+== a) ==
 Schreibe ein Python-Programm (z.B. eine Funktion), welches für einen gegebenen CIDR-Suffix die entsprechende Subnetzmaske im $4$-Byte-Format (z.B. $255.192.0.0$) bestimmt und umgekehrt. Schreibe ein Python-Programm (z.B. eine Funktion), welches für einen gegebenen CIDR-Suffix die entsprechende Subnetzmaske im $4$-Byte-Format (z.B. $255.192.0.0$) bestimmt und umgekehrt.
  
-== Aufgabe 2 ==+== b) == 
 + 
 +Programmiere nun eine eigene Auswahl der folgenden Funktionen: 
 + 
 +   * Subnetzmaske in andere Formate umwandeln: 
 +     * `subnet_dec_to_bin(subnet)` 
 +     * `subnet_bin_to_dec(subnet_bin)` 
 +     * `subnet_bin_to_cidr(subnet_bin)` 
 +     * `subnet_dec_to_cidr(subnet)` 
 +     * `cidr_to_subnet_bin(cidr)` 
 +     * `cidr_to_subnet_dec(cidr)` 
 +   * Abzahl mögliche Hosts für Subnetzmaske (in versch. Formaten) bestimmen: 
 +     * `nr_hosts_from_subnet_bin(subnet_bin)` 
 +     * `nr_hosts_from_subnet_dec(subnet_dec)` 
 +     * `nr_hosts_from_cidr(cidr)` 
 + 
 +== c) ==
  
-Erweitere deinen Code der vorherigen Zusatzaufgabe und implementiere einen **ultimativen Netzwerk-Rechner** im Stile der folgenden Website: https://www.heise.de/netze/tools/netzwerkrechner/+Erweitere deinen Code aus a) und b) und implementiere einen **ultimativen Netzwerk-Rechner** im Stile der folgenden Website: https://www.heise.de/netze/tools/netzwerkrechner/
 Man soll seine IP-Adresse und CIDR-Suffix angeben können und zurück erhalten: Man soll seine IP-Adresse und CIDR-Suffix angeben können und zurück erhalten:
    * Subnetzmaske (verwende Code von vorheriger Zusatzaufgabe)    * Subnetzmaske (verwende Code von vorheriger Zusatzaufgabe)
Zeile 107: Zeile 127:
 ++++Aufgabe B5| ++++Aufgabe B5|
  
-siehe Tabelle hier: [[https://de.wikipedia.org/wiki/Classless_Inter-Domain_Routing#Übersicht_für_IPv4]]+a) 
 +i) 32, ii) 24, iii) 12 
 + 
 +b) i) 254.0.0.0, ii) 255.255.255.128 
 + 
 +++++ 
 + 
 +++++Aufgabe B6| 
 + 
 +   1. 62 
 +   1. 262142 
 +   1. 19
  
 ++++ ++++
Zeile 151: Zeile 182:
     subnet_bin = cidr_to_subnet_bin(cidr)     subnet_bin = cidr_to_subnet_bin(cidr)
     return subnet_bin_to_dec(subnet_bin)     return subnet_bin_to_dec(subnet_bin)
 +
 +### GET NR HOSTS
 +def nr_hosts_from_subnet_bin(subnet_bin):
 +    zeros = subnet_bin.count('0')
 +    return 2**zeros - 2
 +
 +def nr_hosts_from_subnet_dec(subnet_dec):
 +    subnet_bin = subnet_dec_to_bin(subnet_dec)
 +    return nr_hosts_from_subnet_bin(subnet_bin)
 +
 +def nr_hosts_from_cidr(cidr):
 +    subnet_bin = cidr_to_subnet_bin(cidr)
 +    return nr_hosts_from_subnet_bin(subnet_bin)
  
 ### ###
Zeile 159: Zeile 203:
 print(cidr_to_subnet_dec(10)) print(cidr_to_subnet_dec(10))
 print(cidr_to_subnet_bin(10)) print(cidr_to_subnet_bin(10))
 +
 +print(nr_hosts_from_subnet_bin("11111111.11111111.11111110.00000000"))
 +
 +print(nr_hosts_from_subnet_dec("255.255.255.192"))
 +print(nr_hosts_from_cidr(12))
 +print(nr_hosts_from_cidr(19))
 </code> </code>
 ++++ ++++
  
 </nodisp> </nodisp>
  • gf_informatik/web_sca/netzwerke/aufgaben_b.1699187403.txt.gz
  • Zuletzt geändert: 2023-11-05 12:30
  • von sca