336 |
|
|
337 |
\section{Lilo} |
\section{Lilo} |
338 |
Het allereerste dat een computer doet bij het opstarten is (na enkele zelftests |
Het allereerste dat een computer doet bij het opstarten is (na enkele zelftests |
339 |
in de \sc{bios}) het inladen van het zogenaamde Master Boot Record van op |
in de {\sc bios}) het inladen van het zogenaamde Master Boot Record van op |
340 |
de harde schijf. Hierop dient een klein programmaatje te staan dat de rest |
de harde schijf. Hierop dient een klein programmaatje te staan dat de rest |
341 |
van het besturingssysteem inlaadt. Voor Linux zijn enkele zulke |
van het besturingssysteem inlaadt. Voor Linux zijn enkele zulke |
342 |
\begrip{boot loader}s ontwikkeld; de populairste zijn \begrip{Lilo} |
\begrip{boot loader}s ontwikkeld; de populairste zijn \begrip{Lilo} |
1126 |
\chapter{Printserver} |
\chapter{Printserver} |
1127 |
|
|
1128 |
\chapter{DHCP} |
\chapter{DHCP} |
1129 |
|
\index{DHCP}% |
1130 |
|
DHCP staat voor Dynamic Host Configuration Protocol en zoals de naam al een beetje |
1131 |
|
aangeeft wordt dit protocol gebruikt om computers dynamisch te configureren: |
1132 |
|
de DHCP-clients vragen aan de DHCP-server welke configuratie-instellingen ze moeten |
1133 |
|
gebruiken. We kunnen de DHCP-server bijvoorbeeld IP-adressen en hostnamen laten |
1134 |
|
``uitdelen'' aan de computers op het netwerk, zodat de configuratie centraal kan gebeuren. |
1135 |
|
Deze aanpak spaart ook een hoop vervelend werk uit bij het configureren van de computers |
1136 |
|
op het netwerk: instellingen zoals netmasker, domeinnaam, nameserver,~\ldots hoeven |
1137 |
|
we nu maar \'e\'en keer te doen (op de DHCP server) in plaats van op elke computer apart. |
1138 |
|
|
1139 |
|
\section{Installatie} |
1140 |
|
[[[ installatie van dhcpd ]]] |
1141 |
|
|
1142 |
|
\section{Configuratie} |
1143 |
|
\subsection{Statische configuratie} |
1144 |
|
De DHCP daemon {\tt dhcpd} wordt geconfigureerd in het bestand \file{/etc/dhcpd.conf}, |
1145 |
|
dat er zo zou kunnen uitzien:\\ |
1146 |
|
{\small\tt option domain-name "schrootnet";\qquad\textit{\# Domeinnaam} |
1147 |
|
option domain-name-servers 157.193.53.8;\qquad\textit{\# IP adres van de nameserver(s)} |
1148 |
|
\strut\\\ |
1149 |
|
option subnet-mask 255.255.255.0;\qquad\textit{\# subnet masker}\\ |
1150 |
|
default-lease-time 600;\qquad\textit{\# clients krijgen normaal instellingen voor 10~min}\\ |
1151 |
|
max-lease-time 7200;\qquad\textit{\# clients kunnen tot 120 minuten instellingen houden}\\ |
1152 |
|
\strut\\ |
1153 |
|
subnet 10.1.1.0 netmask 255.255.255.0 \{\qquad\textit{\# instellingen voor subnet 10.1.1.x}\\ |
1154 |
|
\strut\qquad server-name "10.1.1.1";\qquad\textit{\# naam van onze DHCP server}\\ |
1155 |
|
\strut\qquad option subnet-mask 255.255.255.0;\\ |
1156 |
|
\strut \qquad host xterm1 \{\qquad\textit{\# instellingen voor computer "xterm1"}\\ |
1157 |
|
\strut\qquad\qquad hardware ethernet 00:00:a7:13:54:F8;\\ |
1158 |
|
\strut\qquad\qquad fixed-address 10.1.1.2;\qquad\textit{\# "xterm1" krijgt altijd dit IP adres}\\ |
1159 |
|
\strut\qquad\qquad option host-name "xterm1";\\ |
1160 |
|
\strut\qquad \}\\ |
1161 |
|
\strut \qquad host pcklas01 \{\qquad\textit{\# instellingen voor computer "pcklas01"}\\ |
1162 |
|
\strut\qquad\qquad hardware ethernet 00:00:a4:4d:54:9f;\\ |
1163 |
|
\strut\qquad\qquad fixed-address 10.1.1.3;\qquad\textit{\# "pcklas01" krijgt altijd dit IP adres}\\ |
1164 |
|
\strut\qquad\qquad option host-name "pcklas01";\\ |
1165 |
|
\strut\qquad \}\\ |
1166 |
|
\strut\qquad\textit{\# enzovoort, voor elke computer van het netwerk}\\ |
1167 |
|
\}\\ |
1168 |
|
} |
1169 |
|
|
1170 |
|
Met het commando \commando{/etc/init.d/dhcp restart} herstarten we de DHCP deamon |
1171 |
|
zodat die onze gewijzigde instellingen overneemt. |
1172 |
|
|
1173 |
|
Als alles goed is verlopen, moet de DHCP daemon draaien, hetgeen we kunnen controleren |
1174 |
|
door \commando{ps aux|grep dhcpd} te typen en te zien of er een lijn |
1175 |
|
{\small\begin{verbatim} |
1176 |
|
root 29942 0.0 4.5 2172 836 ? S 11:56 0:00 /usr/sbin/dhcpd-2.2.x -q |
1177 |
|
\end{verbatim}} |
1178 |
|
tussen staat. |
1179 |
|
|
1180 |
|
Als we twee netwerkkaarten in onze server hebben, kan het gebeuren dat we in plaats daarvan |
1181 |
|
de volgende foutmelding zien in \file{/var/log/daemon.log}: |
1182 |
|
\begin{verbatim} |
1183 |
|
No subnet declaration for eth0 (157.193.53.222). |
1184 |
|
Please write a subnet declaration in your dhcpd.conf file for the |
1185 |
|
network segment to which interface eth0 is attached. |
1186 |
|
exiting. |
1187 |
|
\end{verbatim} |
1188 |
|
We hebben wel informatie gegeven over wat de DHCP deamon moet doen met aanvragen |
1189 |
|
van de ene netwerkkaart (die op subnet 10.1.1.x) maar er hangt ook nog een andere |
1190 |
|
netwerkkaart (eth0, op subnet 157.193.53.x) aan onze computer. We moeten dus nog iets |
1191 |
|
toevoegen aan ons configuratiebestand: |
1192 |
|
\begin{verbatim} |
1193 |
|
subnet 157.193.53.222 netmask 255.255.255.0 { |
1194 |
|
not authoritative; |
1195 |
|
} |
1196 |
|
\end{verbatim} |
1197 |
|
Normaal gezien geeft de DHCP server aan onbekende clients een foutmelding terug |
1198 |
|
(``er is geen configuratie-info voor jou beschikbaar''). Maar omdat we op |
1199 |
|
het subnet 157.193.53.x, waar we onze internettoegang vandaan halen, helemaal niets |
1200 |
|
te zeggen hebben, schrijven we \texttt{not authoritative}, zodat de DHCP server |
1201 |
|
niets zal doen als hij ziet dat een client om informatie vraagt. Het is immers goed |
1202 |
|
mogelijk dat op het subnet van onze provider al een DHCP server draait, en zou het goed |
1203 |
|
kunnen dat onze DHCP server anders tegen andere klanten van de provider |
1204 |
|
zou zeggen ``er is geen configuratie voor jou beschikbaar'' en dat zal die provider niet |
1205 |
|
echt leuk vinden~\ldots |
1206 |
|
|
1207 |
|
We hebben een \texttt{default-lease-time} van 600 seconden ingesteld, zodat alle |
1208 |
|
computers van het netwerk om de tien minuten opnieuw hun configuratie zullen |
1209 |
|
opvragen. Als je netwerk redelijk statisch is en er niet direkt elke tien minuten computers |
1210 |
|
van configuratie veranderen, kan je gerust waarden als 86400 (een dag) of hoger invullen. |
1211 |
|
|
1212 |
|
\subsection{Dynamische configuratie} |
1213 |
|
Het is ook mogelijk dynamisch IP adressen uit te delen. Met |
1214 |
|
\begin{verbatim} |
1215 |
|
range 10.1.1.100 10.1.1.200; |
1216 |
|
\end{verbatim} |
1217 |
|
in plaats van of tussen de \texttt{host} regels, zorg je ervoor dat voor de computers |
1218 |
|
die niet gekend zijn met zulke \texttt{host} regels, dynamisch IP adressen van |
1219 |
|
10.1.1.100 tot en met 10.1.1.200 worden uitgedeeld. De DHCP server zorgt ervoor |
1220 |
|
dat geen twee computers hetzelfde IP krijgen. Bij dynamische IP's kan het handig zijn |
1221 |
|
de \texttt{default-lease-time} kort te houden (10 minuten bijvoorbeeld) zodat |
1222 |
|
IP's snel vrijkomen als een computer wordt uitgeschakeld. |
1223 |
|
|
1224 |
|
Je kan statische en dynamische configuratie mengen zoals je wil, of enkel \'e\'en van de |
1225 |
|
twee systemen gebruiken. Een praktijkvoorbeeld van een gemengde configuratie |
1226 |
|
is alle vaste computers statisch configureren en een aantal adressen dynamisch uitdelen |
1227 |
|
aan laptops. Iemand die zijn laptop meebrengt krijgt dan vanzelf een eigen IP adres, |
1228 |
|
terwijl de vaste computers een gekend IP adres hebben (hetgeen in geval van problemen |
1229 |
|
te verkiezen kan zijn boven dynamisch uitgedeelde adressen). |
1230 |
|
|
1231 |
|
\section{Configuratie van de client} |
1232 |
|
[[[ installatie van dhcpcd op de client ]]] |
1233 |
|
|
1234 |
\chapter{Een 486 als X-terminal} |
\chapter{Een 486 als X-terminal} |
1235 |
|
|