CentOS, RHEL we Fedora-da DHCP serwerini nädip gurmaly


DHCP (Dynamic Host Configuration Protocol), serwere IP adresini awtomatiki bellemäge we torda müşderä öňünden kesgitlenen IP howuzdan beýleki ulgam konfigurasiýa parametrlerini bermäge mümkinçilik berýän tor protokolydyr.

Bu, her gezek bir müşderi (tora birikdirilen) açylanda, hiç haçan üýtgemeýän “statiki” IP adresinden tapawutlylykda\“dinamiki” IP adresi alýandygyny aňladýar. DHCP serweri tarapyndan DHCP müşderisine berlen IP adresi\kärende boýunça, kärende wagty müşderiniň näçe wagtlap birikmäni ýa-da DHCP konfigurasiýasyny talap etjekdigine baglylykda üýtgäp biler.

Bu gollanmada, CentOS/RHEL we Fedora paýlamalarynda DHCP serwerini nädip gurmalydygyny we sazlamalydygyny öwreneris.

Bu gurnama üçin aşakdaky synag gurşawyny ulanarys.

DHCP Server - CentOS 7 
DHCP Clients - Fedora 25 and Ubuntu 16.04

Has öňe gitmezden ozal, DHCP-iň işleýşini gysgaça düşündireliň:

  • Müşderi kompýuter (DHCP ulanmak üçin düzülen) we tora birikdirilende, DHCPDISCOVER habaryny DHCP serwerine ugradýar.
  • DHCP serweri DHCPDISCOVER haýyş habaryny alandan soň, DHCPOFFER habary bilen jogap berýär.
  • Soňra müşderi DHCPOFFER habaryny alýar we serwere DHCPREQUEST habary iberýär, DHCPOFFER habarynda teklip edilýän tor konfigurasiýasyny almaga taýýardygyny görkezýär.
  • Iň soňkusy, iň bolmanda, DHCP serweri müşderiden DHCPREQUEST habaryny alýar we müşderiniň özüne berlen IP adresi ulanmaga rugsat berilendigini görkezýän DHCPACK habaryny iberýär.

1-nji ädim: CentOS-da DHCP serwerini gurmak

1. DCHP gurmak gaty göni, aşakdaky buýrugy işlediň.

# yum -y install dhcp

Üns beriň: Ulgamda birden köp tor interfeýsi bar diýip çaklaýarys, ýöne DHCP serweriniň diňe interfeýsleriň birinde başlamagyny isleýärsiňiz, DHCP serwerini diňe şol interfeýsde aşakdaky ýaly başlamagyny düzüň.

2./etc/sysconfig/dhcpd faýly açyň, ýörite interfeýsiň adyny DHCPDARGS sanawyna goşuň, mysal üçin interfeýs eth0 bolsa, goşuň:

DHCPDARGS=eth0

Faýly ýazdyryň we çykyň.

2-nji ädim: CentOS-da DHCP serwerini sazlamak

3. Başlaýanlar üçin DHCP serwerini gurmak üçin ilkinji ädim dhcpd.conf konfigurasiýa faýly döretmekdir we esasy DHCP konfigurasiýa faýly adatça /etc/dhcp/dhcpd.conf (bu tertip boýunça boş), müşderilere iberilen ähli ulgam maglumatlary saklaýar.

Şeýle-de bolsa, DHCP serwerini düzmek üçin gowy başlangyç nokady bolan /usr/share/doc/dhcp*/dhcpd.conf.sample konfigurasiýa faýly bar.

DHCP konfigurasiýa faýlynda kesgitlenen jümleleriň iki görnüşi bar:

  • parametrleri - meseläni nädip ýerine ýetirmelidigini, bir işi ýerine ýetirmelidigini ýa-da DHCP müşderisine haýsy tor konfigurasiýa opsiýalaryny ibermelidigini görkeziň.
  • beýannamalar - tor topologiýasyny kesgitläň, müşderileri kesgitläň, müşderiler üçin salgylary teklip ediň ýa-da beýannamalar toparyna parametrler toparyny ulanyň.

Şonuň üçin nusga konfigurasiýa faýlyny esasy konfigurasiýa faýly hökmünde göçürip başlaň:

# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 

4. Indi esasy konfigurasiýa faýlyny açyň we DHCP serwer opsiýalaryňyzy kesgitläň:

# vi /etc/dhcp/dhcpd.conf 

Faýlyň ýokarsyndaky ähli subnet işlerine (senariýaňyza degişli bahalary görkeziň) aşakdaky global parametrleri bellemekden başlaň:

option domain-name "tecmint.lan";
option domain-name-servers ns1.tecmint.lan, ns2.tecmint.lan;
default-lease-time 3600; 
max-lease-time 7200;
authoritative;

5. Indi, subnet işini kesgitläň; bu mysalda, DHCP-ni 192.168.56.0/24 LAN ulgamy üçin düzeris (senariýaňyza degişli parametrleri ulanmagy ýatdan çykarmaň):

subnet 192.168.56.0 netmask 255.255.255.0 {
        option routers                  192.168.56.1;
        option subnet-mask              255.255.255.0;
        option domain-search            "tecmint.lan";
        option domain-name-servers      192.168.56.1;
        range   192.168.56.10   192.168.56.100;
        range   192.168.56.120  192.168.56.200;
}

3-nji ädim: DHCP Müşderisine statiki IP belläň

Torda belli bir müşderi kompýuterine statiki IP adresi belläp bilersiňiz, diňe /etc/dhcp/dhcpd.conf faýlyndaky bölümi kesgitläň, bu ýerde onuň MAC salgylaryny we bellenmeli IP-ni aç-açan görkezmeli:

host ubuntu-node {
	 hardware  ethernet 00:f0:m4:6y:89:0g;
	 fixed-address 192.168.56.105;
 }

host fedora-node {
	 hardware  ethernet 00:4g:8h:13:8h:3a;
	 fixed-address 192.168.56.110;
 }

Faýly ýazdyryň we ýapyň.

Bellik: Aşakdaky buýrugy ulanyp Linux MAC salgysyny tapyp ýa-da görkezip bilersiňiz.

# ifconfig -a eth0 | grep HWaddr

6. Indi ortaça wagt üçin DHCP hyzmatyny başlaň we aşakdaky buýruklary ulanyp, indiki ulgam ýüklemesinden awtomatiki başlamaga mümkinçilik beriň:

---------- On CentOS/RHEL 7 ---------- 
# systemctl start dhcpd
# systemctl enable dhcpd

---------- On CentOS/RHEL 6 ----------
# service dhcpd start
# chkconfig dhcpd on

7. Ondan soň, DHCP hyzmatyna (DHCPD daemon 67/UDP portda diňleýär) rugsat bermegi ýatdan çykarmaň:

---------- On CentOS/RHEL 7 ----------
# firewall-cmd --add-service=dhcp --permanent 
# firewall-cmd --reload 

---------- On CentOS/RHEL 6 ----------
# iptables -A INPUT -p tcp -m state --state NEW --dport 67 -j ACCEPT
# service iptables save

4-nji ädim: DHCP müşderilerini sazlamak

8. Indi, DHCP serwerinden IP adresleri awtomatiki almak üçin tordaky müşderileriňizi sazlap bilersiňiz. Müşderi maşynyna giriň we Ethernet interfeýs konfigurasiýa faýlyny aşakdaky ýaly üýtgediň (interfeýsiň adyny/belgisini almaň):

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

Aşakdaky wariantlary goşuň:

DEVICE=eth0
BOOTPROTO=dhcp
TYPE=Ethernet
ONBOOT=yes

Faýly ýazdyryň we çykyň.

9. Şeýle hem, iş stolunyň kompýuterinde GUI ulanyp, sazlamalary ýerine ýetirip, aşakdaky skrinshotda görkezilişi ýaly usuly awtomatiki (DHCP) edip bilersiňiz (Ubuntu 16.04 iş stoly).

10. Soňra tor hyzmatlaryny aşakdaky ýaly täzeden açyň (ulgamy täzeden açyp bilersiňiz):

---------- On CentOS/RHEL 7 ----------
# systemctl restart network

---------- On CentOS/RHEL 6 ----------
# service network restart

Bu pursatda, ähli sazlamalar dogry bolsa, müşderileriňiz DHCP serwerinden IP adresleri awtomatiki almalydyrlar.

Şeýle hem okap bilersiňiz:

  1. Debian Linux-da Multihomed ISC DHCP serwerini nädip gurmaly we sazlamaly
  2. Tor interfeýslerini sazlamak üçin 10 peýdaly\IP buýrugy

Bu gollanmada, RHEL/CentOS-da DHCP serwerini nädip gurmalydygyny görkezdik. Üstümize ýazmak üçin aşakdaky teswir formasyny ulanyň. Geljekki makalada size Debian/Ubuntu-da DHCP serwerini nädip gurmalydygyny görkezeris. Oňa çenli hemişe TecMint bilen baglanyşykda boluň.