\subsection{DHCP}

\subsubsection{Server}

\begin{sloppypar}
Wir haben uns für {\tt dhcpd} als DHCP-Server entschieden. Zur Konfiguration haben wir in {\tt /etc/dhcpd.conf} (siehe {\tt aufgabe3.2}) den Domain-Namen {\tt zotac} eintragen und den Headnode als DNS-Server eingestellt.
\end{sloppypar}

Des Weiteren haben wir das Subnet {\tt 10.20.0.0/24} deklariert und wiederum den Headnode als verantwortlichen Router eingetragen.

Die Pro-Host-Konfiguration sieht bei uns wie folgt aus:

\begin{lstlisting}
host zotac<X> {
    hardware ethernet <MAC-Adresse>;
    fixed-address zotac<X>.zotac;
    use-host-decl-names true;
}
\end{lstlisting}

Damit ist sichergestellt, dass die Hosts die im Cluster-Layout spezifizierte IP-Adresse entsprechend ihrer MAC-Adresse zugewiesen bekommen und gleichzeitig ihren Hostnamen gesagt bekommen. (Die IP-Adresse holt sich der DHCP-Server vom lokalen DNS-Server.)

Zusätzlich haben wir das bereits in der Installation enthaltene {\tt systemd}-Service-File entsprechend so angepasst, dass man beim Starten und Aktivieren des Dienstes spezifizieren kann, auf welchem Netzwerk-Interface der Dienst hören soll. (siehe {\tt aufgabe3.2/dhcpd4@.service})

Starten kann man den Dienst nun mit:

\shellcmd{systemctl start dhcpd4@eth1}

wobei {\tt eth1} das Interface ist, das am internen LAN angeschlossen ist.

\subsubsection{Client}

\begin{sloppypar}

Als Client verwenden wir {\tt dhcpcd}. \\

Um den Hostnamen richtig vom DHCP-Server abholen zu können, mussten wir in {\tt /usr/lib/dhcpcd/dhcpcd-hooks/30-hostname} (siehe {\tt aufgabe3.2/30-hostname}) noch die Option {\tt hostname\_fqdn=false} setzen, damit der kurze Hostname ({\tt zotac<X>} statt {\tt zotac<X>.zotac}) verwendet wird. \\

Außerdem haben wir noch die Zeile:
\begin{center}
{\tt hostname \grqq{\$}1\grqq}
\end{center}
durch:
\begin{center}
{\tt hostnamectl set-hostname \grqq{\$}1\grqq}
\end{center}
ersetzt, damit der bezogene Hostname automatisch persistent ({\tt /etc/hostname}) gesetzt wird.

\end{sloppypar}

\subsection{DNS}
\label{ssub:dns}

Als DNS-Server haben wir {\tt Bind} installiert und eingerichtet.
Die Konfiguration ist in {\tt aufgabe3.2/named.conf} zu finden.
Für das Auflösen der Hostnames haben wir die Domaine zotac {\tt aufgabe3.2/zotac.zone} angelegt und
ein Zonefile für die Reverse-DNS-Auflösung {\tt aufgabe3.2}.
Schließlich musste noch die /etc/resolv.conf angepasst werden, so dass der eingerichtete Server
auch von der Head-Node zur Adress-Auflösung benutzt wird ({\tt aufgabe3.2/resolv.conf}).
Die Nodes bekommen die DNS-Einstellungen per dhcp.
