Kapitel 13. Dynamisk tildeling af IP-adresser

Af: Søren Ulrik

I et skolenetværk er det blevet standard at sætte arbejdsstationerne op til at kommunikere via TCP/IP-protokollen. Denne protokol indebærer, at alle maskiner har en unik adresse, en IP-adresse. IP-adressen har formen xxx.xxx.xxx.xxx, hvor xxx er tal mellem 0 og 255. Er skolen koblet pg Internet via Sektornet, er skolen blevet tildelt en eller flere rækker sammenhængende adresser, som så skal fordeles mellem PC'erne. Ved andre opkoblinger kan det være, at man internt på skolens netværk skal bruge adresser fra et af de områder, der er reserveret til internt brug.

Under alle omstændigheder er det en lettelse for administratoren, hvis tildeling af IP-adresser foregår "automatisk", fremfor at hver enkelt maskine har en fast adresse, som man skal huske pg, fx ved geninstallering o.lign.

Den automatiske tildeling af adresser varetages af en DHCP-server (Dynamic Host Configuration Protocol).

13.1. DHCP-server

I RedHat 7.0 hedder den medfølgende DHCP-server dhcp-2.0-12. Undersøg om den er installeret med kommandoen

[root@gnuskole /]# rpm -q dhcp

Er den ikke det, installeres den med kommandoen

[root@gnuskole /]# rpm -Uvh /sti/til/filen/dhcp-2.0-12.i386.rpm

13.1.1. Opsætning af DHCPD

Opsætningen af DHCPD sker i filen /etc/dhcpd.conf. Den oprettes ikke ved installationen, og man skal derfor selv lave tekstfilen med de ønskede indstillinger og gemme den som /etc/dhcpd.conf.

DHCPD kan bruges til at tildele maskinerne oplysninger om IP-adresse, gateway, DNS-servere, domænenavne, WINS-server mm. Hver gang en PC, der er sat op til at modtage en IP-adresse fra en DHCP-server, starter op, får den tildelt et "lease". I konfigurationsfilen for serveren kan det også angives, hvor lang tid, maskinerne som standard skal beholde deres lease. Slutteligt er det muligt at knytte faste IP-adresser til bestemte netkort (identificeret ved den unikke MAC-adresse), så det heller ikke er nødvendigt at lave IP-indstillinger på eksempelvis servere.

13.1.2. dhcpd.conf

Efter installation af dhcp-rpm'en skal conf-filen oprettes. Der følger altså ikke en "standard"-konfigurationsfil med distributionen.

Åbn din favoritteksteditor og gem en fil ved navn /etc/dhcpd.conf, eller hent en skabelon her.

Filen skal nu bygges op som nedenstående eksempel:

#Denne fil er tilrettet til GnuSkole - ret den til med oplysninger
#fra din egen skole.
shared-network undervisning     
{
	default-lease-time 3600;
	max-lease-time 7200;
	option domain-name-servers 193.162.240.6, 130.226.1.2;
	option domain-name "gnuskole.dk";
	option nis-domain gnuskole;
	option nis-servers 192.168.100.2;
	option netbios-name-servers 192.168.100.2;
	option smtp-server 192.168.100.2;
	option pop-server 192.168.100.2;

	subnet 192.168.100.0 netmask 255.255.255.0
        {
            option routers 192.168.100.1;
            range 192.168.100.2 192.168.100.254;
            
            	host server.gnuskole.dk 
		{
            	hardware ethernet  00:01:02:03:0E:0F;
            	fixed-address 192.168.100.2;
            	}
        }
        
	subnet 172.17.100.240 netmask 255.255.255.240 
	{
            option routers 172.17.100.241;
            range 172.17.100.242 172.17.100.254;
        }
}

I ovenstående eksempel er der uddeles der to subnets. I første subnet (192.168.100.0) er IP-adressen 192.168.100.2 låst til maskinen server.gnuskole.dk, der har MAC-adressen 00:01:02:03:0E:0F. MAC-adressen på et netkort kan i Linux findes ved at skrive /sbin/ifconfig -a - ud for hver enhed står den efter HWaddr:. I Windows 95 kan man vælge Start -> Kør -> skriv: winipcfg - i det fremkomne vindue kan MAC-adressen aflæses, og på en Windows NT workstation åbnes en dos-prompt: Start > Programmer > MS-DOS prompt, og der skrives ipconfig -all. MAC-adressen står som "fysisk adresse".

Optionen "router" svarer til gateway i Win95-opsætningen, optionen "netbios-name-servers" angiver adressen på en WINS-server på et Microsoft-netværk og "smtp-server" sætter adressen på en mailserver. Der findes mange flere options man kan sætte. Dem kan du læse om i

[root@gnuskole /root]# man dhcp-options

Det er ikke alle der virker i praksis på Windows-klienter, men prøv dig frem!

13.1.3. Start af dhcpd

Når /etc/dhcpd.conf er lavet færdig og gemt, skal der køres to kommandoer før dhcp-serveren kører:

[root@gnuskole /root]# touch /var/lib/dhcp/dhcpd.leases

for at oprette et arkiv over uddelte adresser, og

[root@gnuskole /root]# /etc/init.d/dhcpd start

for at starte serveren. Hvis der er fejl eller mangler i dhcpd.conf-filen, kommer der en fejlmeddelelse, der fortæller hvad problemet er - det er især vigtigt at være opmærksom på, om der er det rigtige antal tuborg-parenteser, altså om der er en "slut" til hver "start".

Når serveren kører får man den til at starte automatisk efter reboot med:

[root@gnuskole /root]# /sbin/chkconfig dhcpd on

Når serveren kører, er det ikke længere nødvendigt at angive IP-adresser på hver enkelt klient. I Win95 kan man under indstillinger for TCP/IP angive, at maskinen får tildelt en IP-adresse dynamisk, og det er ikke nødvendigt at angive hverken DNS-servere eller Gateway-adresse.