---
format: markdown
categories: Netz-Infrastruktur, Backbone, Supernodes
title: DHCP
...

# Konfiguration Ruhr

## IPv4

Im Ruhrgebiet wird Dnsmasq als DHCP-Server für IPv4 (und als [DNS-Forwarder](dns)) genutzt. 

[Dnsmasq](http://www.thekelleys.org.uk/dnsmasq/doc.html)

* DHCPv4-Server
    * Es sind Ranges, keine Subnetze konfiguriert, weil im selben `/16` mehrere DHCP-Servern (mit unterschiedlichen Ranges) betrieben werden.
    * Jeder Supernode teilt Adressen aus einem anderen Range aus, die aber alle im selben `/16` liegen. Es laufen also vier DHCP-Server im selben Pseudo-Layer2 des Meshs. Damit ist es möglich, zwischen Nodes zu roamen, die unterschiedliche Supernodes nutzen. Falls man vom Node wegroamt auf einen Node, der mit einem anderen Supernode verbunden ist werden die Daten in batman-adv vom den Tunnel terminierenden weitergericht an den Supernode, der Default-Gatway für den Client ist. Das geschieht transparent in batman-adv's "Layer 2".
    * Alle Interfaces, von denen clients kommen sind in `dnsmasq` kofiguriert, weil die `bat0` keine transparente Bridge ist.
    * Lease Time steht im Ruhrgebiet auf fünf Minuten, können wir im kleineren Dortmund-Mesh aber wieder auf zwei Stunden setzen.

## IPv6

Für IPv6 wird radvd benutzt. 

[radvd](http://www.litech.org/radvd/)

* Kündigt IPv6 Prefix und Router an.
    * Die Intervalle weichen vom Standard ab, sonst ist nichts besonderes konfiguriert.
    * Einige Communities teilen `fe80::1` als Gateway aus, wir teilen die normale Link-Local Adresse des Interfaces aus.
        * ToDo: Best Practices überprüfen und ggf. einsetzen. 
* RDNSS

Es müssen nicht zwingend auf allen Supernodes `radvd` und ein DHCP-Server laufen, im Ruhrgebiet gibt's nur zwei RA/DHCP-Server. Alle DHCP und RA laufen im selben Layer 2. Die RAs anderer Supernodes werden durch `ebtables` gefiltert, somit gelangen nur die RAs vom verbundenen Supernode durchs VPN zum Node. Auf DHCP-Requests antworten aber alle DHCP-Server (???).

# Konfiguration Dortmund

## IPv4

Auf den Dortmunder Supernodes wird isc-dhcp benutzt. 

Config: 

  * Range: [s. Übersichtsseite](supernodes)
  * Lease-Time: 600
  * Max-Lease-Time: 7200
  * option routers: Mesh-IP der jeweiligen Supernodes
  * option domain-name-servers: Mesh-IP der jeweiligen Supernodes + der anderen Supernode im gleichen RZ
  * option ntp-servers: wie domain-name-servers

## IPv6

Wie auf den Ruhrgebiets-Nodes wird auch radvd genutzt. Auf jeder Supernode läuft ein Radvd, welcher Adressen mit eigenem Prefix verteilt. 

Config: 

  * MaxRtrAdvInterval 600
  * Prefixes: [s. Übersichtsseite](supernodes)
