CentOS we Ubuntu-da DHCP serwerini we müşderisini nädip sazlamaly


DHCP (Dynamic Host Configuration Protocol üçin gysga) müşderi/serwer protokoly bolup, serwere torda bir müşderä IP adresi we beýleki degişli konfigurasiýa parametrlerini (subnet maskasy we deslapky şlýuz ýaly) awtomatiki bellemäge mümkinçilik berýär.

DHCP möhümdir, sebäbi ulgam ýa-da tor administratorynyň tora goşulan täze kompýuterler ýa-da bir subnetden beýlekisine geçirilýän kompýuterler üçin IP adreslerini el bilen düzmeginiň öňüni alýar.

DHCP serweri tarapyndan DHCP müşderisine bellenen IP adresi kärendede bolýar, kärende wagty adatça müşderi kompýuteriniň birikmäni ýa-da DHCP konfigurasiýasyny näçe wagt talap etjekdigine baglylykda üýtgeýär.

Bu makalada, IP adresi müşderi maşynyna awtomatiki bellemek üçin CentOS we Ubuntu Linux paýlamalarynda DHCP serwerini nädip sazlamalydygyny düşündireris.

CentOS we Ubuntu-da DHCP serwerini gurmak

DCHP serwer bukjasy esasy Linux paýlanyşynyň resmi ammarlarynda bar, gurmak gaty aňsat, diňe aşakdaky buýrugy işlediň.

# yum install dhcp		        #CentOS
$ sudo apt install isc-dhcp-server	#Ubuntu

Gurnama tamamlanandan soň, DHCP daemonynyň konfigurasiýa faýlynda/etc/default/isc-dhcp-server ýa-da/etc/sysconfig/dhcpd konfigurasiýa faýlynda isleglere hyzmat etmegini isleýän interfeýsi düzüň.

# vim /etc/sysconfig/dhcpd		 #CentOS
$ sudo vim /etc/default/isc-dhcp-server	 #Ubuntu

Mysal üçin, DHCPD daemonynyň eth0 diňlemegini isleseňiz, aşakdaky görkezmäni ulanyp düzüň.

DHCPDARGS=”eth0”

Faýly ýazdyryň we çykyň.

CentOS we Ubuntu-da DHCP serwerini sazlamak

Esasy DHCP konfigurasiýa faýly /etc/dhcp/dhcpd.conf -da ýerleşýär, bu ýerde näme etmelidigini, bir zady nirede etmelidigini we müşderilere hödürlemek üçin ähli ulgam parametrlerini öz içine almalydyr.

Bu faýl esasan iki giň kategoriýa bölünen jümleleriň sanawyndan durýar:

  • Global parametrler: bir meseläni nädip ýerine ýetirmelidigini, bir işi ýerine ýetirmelidigini ýa-da DHCP müşderisine haýsy tor konfigurasiýa parametrlerini bermelidigini kesgitläň.
  • Jarnamalar: tor topologiýasyny kesgitläň, müşderiniň bardygyny görkeziň, müşderiler üçin salgylary teklip ediň ýa-da beýannamalar toparyna parametrler toparyny ulanyň.

Indi, DHCP serweriňizi düzmek üçin konfigurasiýa faýlyny açyň we redaktirläň.

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

------------ On Ubuntu ------------
$ sudo vim /etc/dhcp/dhcpd.conf				

Faýlyň ýokarsyndaky ähli goldanýan ulgamlar üçin umumy bolan global parametrleri kesgitlemekden başlaň. Thehli beýannamalara degişlidirler:

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

Ondan soň, görkezilişi ýaly içerki subnet, ýagny 192.168.1.0/24 üçin kiçi tor kesgitlemeli.

subnet 192.168.1.0 netmask 255.255.255.0 {
        option routers                  192.168.1.1;
        option subnet-mask              255.255.255.0;
        option domain-search            "tecmint.lan";
        option domain-name-servers      192.168.1.1;
        range   192.168.10.10   192.168.10.100;
        range   192.168.10.110   192.168.10.200;
}

Specialörite konfigurasiýa opsiýalaryny talap edýän öý eýeleriniň host beýannamalarynda görkezilip bilinjekdigine üns beriň (dhcpd.conf adam sahypasyna serediň).

DHCP serwer daemonyny düzeniňizden soň, hyzmaty ortaça başlamaly we indiki ulgam ýüklemesinden awtomatiki başlamaga mümkinçilik bermeli we aşakdaky buýruklary ulanyp işleýändigini ýa-da işlemeýändigini barlamaly.

------------ On CentOS ------------ 
# systemctl start dhcpd
# systemctl enable dhcpd
# systemctl enable dhcpd

------------ On Ubuntu ------------
$ sudo systemctl start isc-dhcp-server
$ sudo systemctl enable isc-dhcp-server
$ sudo systemctl enable isc-dhcp-server

Ondan soň, 67/UDP portunda diňleýän Firewall-daky DHCP daemonyna haýyş bilen rugsat beriň.

------------ On CentOS ------------ 
# firewall-cmd --zone=public --permanent --add-service=dhcp
# firewall-cmd --reload 

#------------ On Ubuntu ------------
$ sudo ufw allow 67/udp
$ sudo ufw reload

DHCP müşderilerini sazlamak

Netijede, DHCP serweriniň gowy işleýändigini barlamaly. Torda birnäçe müşderi maşynlaryna giriň we serwerden IP adresleri awtomatiki almak üçin sazlaň.

Müşderileriň IP adreslerini awtomatiki aljak interfeýsi üçin degişli konfigurasiýa faýly üýtgediň.

CentOS-da/etc/sysconfig/network-scripts/-de ýerleşýän interfeýs konfigurasiýa faýllary.

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

Aşakdaky wariantlary goşuň:

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

Faýly ýazdyryň we ulgam hyzmatyny täzeden açyň (ýa-da ulgamy täzeden açyň).

# systemctl restart network

Ubuntu 16.04-de, konfigurasiýa faýlynda/etc/network/interfeýslerde ähli interfeýsi düzüp bilersiňiz.

   
$ sudo vi /etc/network/interfaces

Oňa şu setirleri goşuň:

auto  eth0
iface eth0 inet dhcp

Faýly ýazdyryň we ulgam hyzmatlaryny täzeden açyň (ýa-da ulgamy täzeden açyň).

$ sudo systemctl restart networking

Ubuntu 18.04-de tor ulgamy Netplan programmasy tarapyndan dolandyrylýar. Mysal üçin/etc/netplan/katalogynyň aşagyndaky degişli faýly redaktirlemeli.

$ sudo vim /etc/netplan/01-netcfg.yaml 

Soňra belli bir interfeýsde dhcp4-i işlediň, mysal üçin ethernets, ens0 we statiki IP bilen baglanyşykly sazlamalary düşündiriň:

network:
  version: 2
  renderer: networkd
  ethernets:
    ens0:
      dhcp4: yes

Üýtgeşmeleri ýazdyryň we üýtgeşmeleri amala aşyrmak üçin aşakdaky buýrugy işlediň.

$ sudo netplan apply 

Has giňişleýin maglumat üçin dhcpd we dhcpd.conf adam sahypalaryna serediň.

$ man dhcpd
$ man dhcpd.conf

Bu makalada CentOS we Ubuntu Linux paýlamalarynda DHCP serwerini nädip sazlamalydygyny düşündirdik. Islendik nokatda has anyk düşündiriş gerek bolsa, aşakdaky seslenme formasy arkaly sorag berip bilersiňiz ýa-da teswirleriňizi biziň bilen paýlaşyp bilersiňiz.