# IPv4-Subnetting, Routingprotokolle und RIP
## IPv4 Adressierung
### IP-Adressierungsformat
![image_829.png](image_829.png)

### IP-Adressklassen
![image_828.png](image_828.png)
![image_831.png](image_831.png)


## IPv4-Adressierung mit Subnetting
- Zweck: Verringerung Broadcast-Größe

### Idee:
![image_832.png](image_832.png)

### Schreibweise für IPv4-Netzpräfixe
- Abkürzung:
  - ![image_833.png](image_833.png)
- Bsp:
  - Basisnetz: 193.1.1.00 / 24
  - Subnetz: 193.1.1.31 / 27

### Beispiel für Subnetting
#### 2 Bits entleihen
![image_834.png](image_834.png)

#### 3 Bits entleihen
![image_835.png](image_835.png)

## Übung: Subnetzberechnung
Aufgabe:
- Class-C Netzwerk 192.168.10.0
- es sollen vier gleich große Subnetze gebildet werden
- jedes Subnetz soll mind. 60 Rechner enthalten können.


- Netzwerkmaske:
  - 11111111.11111111.11111111.11000000
  - 255.255.255.192
- Subnetze:
  - 192.168.10.0/26
    - Broadcast-Adresse:
      - 192.168.10.63
    - Adressbereich:
      - von 192.168.10.1
      - bis 192.168.10.62
  - 192.168.10.64/26
    - Broadcast-Adresse:
      - 192.168.10.127
    - Adressbereich:
      - von 192.168.10.65
      - bis 192.168.10.126
  - 192.168.10.128/26
    - Broadcast-Adresse:
      - 192.168.10.191
    - Adressbereich:
      - von 192.168.10.129
      - bis 192.168.10.190
  - 192.168.10.192/26
    - Broadcast-Adresse:
      - 192.168.10.255
    - Adressbereich:
      - von 192.168.10.193
      - bis 192.168.10.254
- Anzahl der gesamten möglichen Hosts
  - $(2^6-2)*4 = 62*4 = 248$


## Routing
### Statisches Routing
- IP-Routing-Tabelle wird manuell/teilautomatisiert auf jedem System getrennt verwaltet
- keine automatische Rekonfiguration
- Vorteil:
  - in kleinen Netzwerken leicht pflegbar
  - keine Sicherrheitsprobleme durch Routing Protokolle
- ![image_836.png](image_836.png)

### Dynamisches Routing
- IP-Routing-Tabellen werden automatisch zwischen beteiligten Systemen aktualisiert
  - mithilfe von Routing Protokollen
- Ziel:
  - in allen Systemen möglichst immer aktuell
  - Änderungen (bspw. bei Ausfall) so schnell wie möglich verbreiten
  - Erhöhung Zuverlässigkeit
  - Lastverteilung
- ![image_837.png](image_837.png)

### Anforderungen an Routing-Protokolle
- Kurze Konvergenzzeit
- Skalierbarkeit
- Anpassbare Metrik
- Unterdrückung von Routingschleifen
- Wenig Routing-Traffic
- Einfache Implementierung/Konfiguration
- Robustheit
- Unterstützung von Lastverteilung

### Distance-Vector Algorithmus
> | Vorteile                                | Nachteile                                                       |
> |-----------------------------------------|-----------------------------------------------------------------|
> | Einfach zu implementieren/Konfigurieren | Gefahr von Routing-Schleifen                                    |
> | unterstützt Lastverteilung              | lange Konvergenzzeit                                            |
> | Wartung relativ leicht                  | Skalieren schlecht für große Netzwerke                          |
> | Weit verbreitet                         | Nur Hop-Count-Metrik                                            |
> |                                         | Viel Routing-Traffic                                            |
> |                                         | Routing-Update-Pakete können bei vielen Zielen sehr groß werden |



## RIP
### Split Horizon
> Es werden keine Routing-Update-Nachrichten (von anderen Routern) in die Richtung
> weitergesendet, aus der sie selbst empfangen wurden
> 
> Sende kein Routing-Update zu dem Interface von dem du es bekommen hast
> 
> Verhindert Routing-Schleifen mit direkt benachbarten Routern

### Poisoned Reverse Updates
> Sende Routing-Update mit Count=INFINITE (=16=Netz nicht erreichbar) zu dem Interface von dem du es 
> bekommen hast
> 
> Vermeidung von größeren Routing-Schleifen

### Triggered Updates ("flush updates")
> wird sofort nach Netzwerktopologieänderung gesendet, **unabhängig** vom Update-Timer


### Wie Routing Schleifen bei RIP verhindern?
- Split-Horizon
- Route Poisoning
- Triggered
- Poisoned mit Split Horizon
- Maximale Metrik
- Holddown Timer ("Route Timer")

