Home Map Index Search News Archives Links About LF
[Top bar]
[Bottom bar]
Bu makalenin farklı dillerde bulunduğu adresler: English  Castellano  Deutsch  Francais  Italiano  Nederlands  Russian  Turkce  

[Photo de l'auteur]
Eric SEIGNE

Yazar hakkında:

Eric ücretsiz yazılım dünyasında çalışmaktadır.Sanal doku üzerinde veri tabanına ulaşıma adanmış uygulamaları PostGreSQL ,MySQL and PHP3 gıbı araçlarla programlamak onun günlük görevidir.



İçindekiler:

Otomatik DHCP yapılandırılması

Çeviri: Cem Yıldız

[Illustration]

Özet:

Bu makale bir ağda DHCP'nin kolay bir şekilde nasıl ayarlanacağını anlatmaktadır.




 

Giriş

Bu makalenin amacı şunları sunmaktır:

Bu makale için kullanılan sunucu Paul Vixie/ISC DHCPd'dir.  

Bır boş DHCP yapılandırılması

İlk adımımız bir ağ üzerindeki bütün istemcileri kabul edebilecek boş bir biçimlendirim dosyası yaratmaktır.
Burada uygun bir Linux sunucusunu yapılandırmak için çabaladığım Slash Party #2'nin ağ ayarlarını kullanıyorum.

<file dhcpd.conf>
default-lease-time 86400;
max-lease-time 604800;
get-lease-hostnames true;
option subnet-mask 255.255.255.0;
option domain-name "slach2-100.party";
option domain-name-servers 192.168.12.1;
option interface-mtu 1500;

subnet 192.168.12.0 netmask 255.255.255.0 
        # default gateway
        option routers 192.168.12.1;
        option broadcast-address 192.168.12.255;
        range 192.168.12.50 192.168.12.200;

</file>

Bir kez DHCP sunucunuz çalışmaya başladığı zaman (dhcp start kullanarak yada Linux çeşidinize göre değişebilecek benzer bir komut), ağ üzerinde istemci istasyonlarını başlatabilirsiniz. Onlar otomatik olarak bir IP adresi edinmek için ayarlanmış olmak zorundadırlar.
İstemciler DHCP sunucusundan bir IP adresi istediği zaman, dhcpd.leases dosyasına bunun gibi bir blok eklenecektir:

<bloc attributed to a dhcp client>
lease 192.168.12.58 
        starts 2 1999/08/24 06:28:48;
        ends 3 1999/08/25 06:28:48;
        hardware ethernet 00:10:5a:2e:56:a7;
        uid 01:00:10:5a:2e:56:a7;
        client-hostname "KLUSTER";

</bloc>

Bu nedenle, bütün istemciler sunucudan bir kez bir IP adresi edindiği zaman, dhcpd.leases dosyası şöyle görünecek:

<file dhcpd.leases>
lease 192.168.12.58 
        starts 2 1999/08/24 06:28:48;
        ends 3 1999/08/25 06:28:48;
        hardware ethernet 00:10:5a:2e:56:a7;
        uid 01:00:10:5a:2e:56:a7;
        client-hostname "KLUSTER";

lease 192.168.12.53 
        starts 2 1999/08/24 05:42:22;
        ends 3 1999/08/25 05:42:22;
        hardware ethernet 00:80:ad:97:e1:76;
        uid 01:00:80:ad:97:e1:76;
        client-hostname "ceddz";

lease 192.168.12.54 
        starts 2 1999/08/24 03:07:26;
        ends 3 1999/08/25 03:07:26;
        hardware ethernet 00:80:ad:97:e1:7d;
        uid 01:00:80:ad:97:e1:7d;
        client-hostname "SDS";

lease 192.168.12.67 
        starts 2 1999/08/24 02:52:19;
        ends 3 1999/08/25 02:52:19;
        hardware ethernet 00:50:04:45:e1:65;
        uid 01:00:50:04:45:e1:65;
        client-hostname "HOMER";

lease 192.168.12.64 
        starts 2 1999/08/24 01:26:05;
        ends 3 1999/08/25 01:26:05;
        hardware ethernet 00:80:ad:97:e2:1c;
        uid 01:00:80:ad:97:e2:1c;
        client-hostname "chAwArmA";

lease 192.168.12.59 
        starts 2 1999/08/24 01:14:06;
        ends 3 1999/08/25 01:14:06;
        hardware ethernet 00:00:21:2c:30:e7;
        uid 01:00:00:21:2c:30:e7;
        client-hostname "WOOKIE";

</file>
 

DHCP ayarlarının korunması

Bundan sonra, "açık" DHCP'mizi daha durağan ve daha güvenli hale çevirmek gereklidir. Bu, henuz yarattığımız ve onu benim durağan dhcp olarak isimlendirdiğim şeye dönüştüreceğimiz uygun bir dhcp.lease dosyası kullanarak yapılır.

Bir durağan ve bir açik DHCP arasındaki farklılıklar nelerdir? Endişenlendiğim kadarıyla, bir açık DHCP, bir IP adresi ve kullanılabılır ağ parametrelerini elde etmek için ağa bağlanmış herhangi bir bilgisayara izin verir. Bu büyük bir güvenlik açığıdır, herhangi bir izinsiz korsan fiziksel olarak kendini ağa bağlayabilir ve iyi ağ parametrelerini elde edebilir :( Karşı saldırılar için, ben durağan DCHP kullanıyorum. Herbir IP adresi, birleştirilmiş Ethernet adaptör Mac'ına benzer bir şekilde sadece istemcilere verilir.O bu nedenle bir zorla sokulmayı farketmek için daha kolaydır.

<file dhcpd.conf>
default-lease-time 86400;
max-lease-time 604800;
get-lease-hostnames true;
option subnet-mask 255.255.255.0;
option domain-name "slach2-100.party";
option domain-name-servers 192.168.12.1;
option lpr-servers 192.168.12.1;
option interface-mtu 1500;

subnet 192.168.12.0 netmask 255.255.255.0 
        # default gateway
        option routers 192.168.12.1;
        option broadcast-address 192.168.12.255;
	# Those not in the dhcp
	# will get ip between .10 et .50
        range 192.168.12.10 192.168.12.50;


host 
        hardware ethernet 00:10:5a:2e:56:a7;
        fixed-address "kluster.slach2-100.party";

host 
        hardware ethernet 00:80:ad:97:e1:76;
        fixed-address "ceddz.slach2-100.party";
host 
        hardware ethernet 00:80:ad:97:e1:7d;
        fixed-address "sds.slach2-100.party";

host 
        hardware ethernet 00:40:95:49:0b:a5;
        fixed-address "saigneur.slach2-100.party";

host 
        hardware ethernet 00:50:04:45:e1:65;
        fixed-address "homer.slach2-100.party";

</file>

UYARI: Eğer çalışan bir DNS sunucunuz yoksa, dhcp.conf dosyası IP adreslerini kullanmalı, makine isimleri ise kullanılmamalıdır.

<extracted from dhcpd.conf whithout dns>
host 
        hardware ethernet 00:40:95:49:0b:a5;
        fixed-address "192.168.12.57";

host 
        hardware ethernet 00:50:04:45:e1:65;
        fixed-address "192.168.12.67";

</extract>

Ben dhcp.lease dosyasını durağan dhcp biçimlendirim dosyasına dönüştüren ufak bir Perl betiği yazdım.  

DNS'in otomatik olarak yapılışı

DNS sunucusunu yapılandırabildiğimiz zaman neden uzun yola artık bir son vermiyoruz?

Aynı Perl betiği, -dns özelliği ile, named.$domaine.ajouter ve named.$domaine.rev.ajouter dosyalarını yapılandıracaktır. Bu dosyaları onları sızın kendı dns ters dns dosyalarınıza eklemeden önce kontrol etmeniz gerekir.

Bundan başka, sizin kendi alanınızdan parametrelerle named.conf dosyasını doldurmak gerekir. Örneğin:

<add to file named.conf>
zone "slach2-100.party" 
        type master;
        file "named.slach2-100";
;

zone "12.168.192.in-addr.arpa" 
        type master;
        file "named.slach2-100.rev";
;
</add>

Kendinizi kutlayın, şimdi çalışan bir dhcp ve dns ayarlarına sahipsiniz.  

Ağ Komşuluğu

Pencere makinelerinden " Ağ Komşuluğunun " ayarları, aynı fiyata mümkün (ücretsiz olduğunda hatta daha iyi :) İşte ufak bir çizim ve açıklamalarla birlikte bir hikaye:

Slach 2'de (Bir demo bölümü), iki ağ kurdum, biri 10 Mbit'di, digeri ise 100 Mbit ( aynı zamanda ayrıcalıklı kullanıcılar için ... ). En sık karşılaşılan sorun şuydu: her iki ağ da birbirlerini pencerelerinin "Ağ Komşuluğu" olduğu halde "göremiyordu"

Çözüm WINS dir. Ağda, WINS, IPler ve "birkaç alanın adi" arasındaki bağlarin bir listesini tutan bir sunucu beyan etmeye izin verir. O R1 ve R2 ağları için bir çeşit müdürdür.

Bu nedenle bir WINS sunucuyu ve istemcileri yapılandırmak gereklidir, öyle ki onlar bunu kullanır ve iki ağ arasında bir IP geçityolu yaratırlar.

Wins Samba tarafindan çok iyi desteklenir :)

Şematik olarak:

-------------------
I                 I
I    R1 Ağı       I
I                 I
I  192.168.0.0    I
I  255.255.255.0  I
-------+-----------
       |
  -----|-----
 eth0: 192.168.0.1

     Linux
     Sunucu

 eth1: 192.168.100.1
  -----|-----
       |
-------+-----------
I                 I
I    R2 Ağı       I
I                 I
I  192.168.100.0  I
I  255.255.255.0  I
-------------------

dhcp.conf, wins sunucumuzu kullanan istemcileri otomatik olarak yapılandırmak için değiştirilir :). Dhcp kullanılmasaydı herbir istemciyi onların wins sunucusuna erişimini etkin hale getirmek için teker teker yapılandırmak gerekecekti !

UYARİ: WINS SUNUCUNUZUN İSTEMCİLER TARAFİNDAN DUZGUN BİR ŞEKILDE KULLANİLMASİ IÇIN SİRADAKI SATİRLARİ DHCP.CONF DOSYANİZA EKLEMEİ UNUTMAYİN

<file dhcpd.conf>
[...]
option routers 192.168.0.1;
option netbios-name-servers 192.168.0.1;
option netbios-dd-server 192.168.0.1;
option netbios-node-type 8;
[...]
</file>

Çalışan bir wins sunucusunun olması için, çalısan ve aşağıdaki gibi yapılandırılmış bir Samba'm var.

<file smb.conf>
; validated with samba 2.0.5
[global]
   workgroup = rycks.com
   server string = Linux Box
   comment = Linux Box
   netbios name = pantoufle
   volume = pantoufle
   guest only = yes

   guest account = nobody
   log file = /var/log/samba-log.%m
   max log size = 50

   share modes = yes
   security = share
   socket options = TCP_NODELAY 
   os level = 33

   ; Configured as network master
   domain master = yes
   local master = yes
   preferred master = yes

   ; Activate wins support
   wins support = yes
   wins proxy = yes

 ; FTP sharing
 [ftp]
   path = /home/ftp/pub
   public = yes
   printable = no
   guest ok = yes

</file>

Eğer değisiklikler yapılırsa, dhcp, samba, ve dns sunucularını yenıden başlatmak gereklidir. Yeni düzenlemeleri hesaba katan dhcp istemcilerini de yenıden başlatın. "Ağ komşuluğundaki" "diğer" ağdaki grupları bekleyin.
Verilmiş olağan gecikme pencereleri yeni makineleri, bir bilgisayarı onun ismini kullanarak aramanızı tavsiye edeceğim "ağ komşuluğu" içine getirmelidir.

Dışardan makinelere erişmek değil de onları "görebilmek" istiyorsanız, geçit yolunu yapılandırmaya ihtiyacınız var oyle ki o iki ağ arasında gerçek bir geçit yolu gibi davranmalıdır.
Bu konu hakkında daha fazla bilgi almak için, ipchains'e bir göz atın.

Genellikle şuna benzer şeyleri kullanmak gereklidir:

#Reset chains
ipchains -F
#Activate masquerading
#to check according to default etc.
ipchains -A forward -i eth0 -j MASQ
 

Hatalar ve Sınırlamalar

Dikkatli olun, eğer dhcp sunucusu iki alanda aynı zamanda kullanılırsa, programın çıktısında sadece bir dns dosyası var olacaktır. Dosyayı el ile sınıflandırmak daha sonra gerekli olacaktır.

Ümit ederim ki bu belge faydalı olacaktır. Açıklamalar ve sorular için benimle iletişim kurmak için kendinizi lütfen özgür hissedin.  

Referanslar

Çeşitli bölümleri daha derin anlamak için,şunlara danışın:

 

Bu belgenin son sürümünü nerde bulabilirim?

Güncellemeler çok sık yapılmaktadır, sitede bulunan en son Fransızca sürümü için şu adresi kontrol edin http://www.rycks.com/erics/linux/  

Bu makale için bize yazın

Her makale kendi bize yazın sayfasına sahiptir. Bu sayfada bir açıklama sunabilirsiniz yada diğer okuyuculardan açıklamalara bakabilirsiniz:
 bize yazın sayfası 

Webpages maintained by the LinuxFocus Editor team
© Eric SEIGNE
LinuxFocus.org 2000

Click here to report a fault or send a comment to Linuxfocus
Translation information:
fr -> -- Eric SEIGNE
fr -> en John Perr

2000-05-01, generated by lfparser version 1.5