Lokal na DNS server centos 6. Pangunahing DNS server setup. Halimbawa ng mga pandaigdigang setting

DNS- sistema ng domain name - distributed system, na may kakayahang mag-ulat ng IP address nito kapag hiniling na naglalaman ng pangalan ng host. istraktura ng DNS kapareho ng file system Linux, ang buong database ay may istraktura ng puno, sa tuktok nito ay ang ugat ( . ). Ito ay mula sa tuldok na magsisimula ang buong sistema ng domain name. Ang tuldok ay maaaring sundan ng ru, com, net, info, atbp. Mga domain na nagmula sa ugat i.e. ru., com.,net. ay tinatawag unang antas ng mga domain, mga domain ng uri ng website. ay tinatawag pangalawang antas ng mga domain, ngunit ng form file.site. - ikatlong antas ng mga domain at iba pa. Pansinin ang tuldok sa dulo ng mga halimbawa. Ang mga pangalang nakasulat sa ganitong paraan ay tinatawag na absolute names (FQDN). Kung hindi tinukoy ang tuldok, ituturing na kamag-anak ang pangalan. Ibig sabihin, ang website.

Bakit gumagamit ng DNS?

1) Isipin na kailangan mong makipag-ugnayan mapagkukunan ng network sa ilalim ng pangalan host(ito ang file server kung saan nakaimbak ang lahat ng file ng empleyado) pangalan host Mayroon itong IP ang address ay 192.168.200.20 at kung wala kang serbisyo na nagko-convert ng mga IP address sa mga pangalan, dapat mong i-dial ang IP address na 192.168.200.20 para makapunta sa file server. Ano ang mas madaling matandaan ang pangalan ng host o ang hanay ng mga numero 192.168.200.20?

2) Ang pangalawang opsyon ay nauugnay sa pag-access sa Internet, halimbawa, kailangan mong makapunta sa isang FTP server sa Internet na may pangalan ftp.site, at ang IP address ay 89.111.176.87.

Kaya, kung sa unang opsyon ay hindi mo na kailangang mag-install at mag-configure ng DNS server, ngunit maaari mong mabilis na i-set up, halimbawa, ang serbisyong WINS, kailangan mo lang ito upang ma-access ang Internet (namin' t patuloy na naaalala ang mga numero kapag sinubukan naming i-access ang anumang mapagkukunan sa Internet). Ang isa pang tanong ay, kailangan mo bang i-configure ito kung ang provider ay nagbigay sa iyo ng mga DNS server nito?

Ang DNS server ay maaaring gamitin bilang: pangunahin at pangalawa, recursive at query redirector.

Pangunahin Ang (master) ay naglo-load ng data para sa zone mula sa isang file sa server machine, at ang pangalawang (slave) ay tumatanggap ng data mula sa pangunahing DNS. Ang isang DNS server ay maaaring pangunahin para sa isang zone at pangalawa para sa isa pa.

Recursive server nilikha sa malalaking organisasyon kasama mataas na bilis ng koneksyon sa network. Hindi ito nakatali sa mga server ng provider, flexible at secure.

Humiling ng Redirector nagpapadala ng kahilingan mula sa kliyente sa server ng provider. Pinoproseso ng server ng provider ang maraming kahilingan ng kliyente, may malaking cache at high-speed na koneksyon.

Mga pangunahing tala ng DNS.

A - pagsusulatan sa pagitan ng pangalan at IP address
AAAA - pagsusulatan sa pagitan ng pangalan at IPv6 address
CNAME - canonical name (synonym)
MX - nagpapahiwatig mail server para sa domain na ito
NS - DNS server para sa domain
PTR - canonical na pangalan
Ang SOA ay ang paunang talaan na nagsasaad kung saan nakaimbak ang impormasyon tungkol sa server.
SRV - mga server para sa mga serbisyo.

Pag-install ng BIND.
I-install namin ang BIND sa centOs5.
May server na pinangalanang ns1..168.200.1

yum install bind

Mga setting MAGBIGKIS
Gumawa at punan ang configuration file

vi /var/named/chroot/etc/named.conf

mga pagpipilian (
direktoryo na "/var/named/";
dump-file "/var/run/named_dump.bd";
statistics-file "/var/run/named.stats";
};
zone "site" sa (
uri ng master;
file na "site.db";
};
zone "200.168.192.IN-ADDR.ARPA." SA (
uri ng master;
file "192.168.200.db";
};

zone "0.0.127.IN-ADDR.ARPA." SA (
uri ng master;
file na "127.0.0.db";
};

zone "." (
uri ng pahiwatig;
file na "named.ca";
};

Gumagawa kami ng mga zone file para sa site.db, 192.168.0.db, 127.0.0.db, named.ca.

vi /var/named/chroot/var/named/site.db# direktang zone para sa pagmamapa ng mga pangalan sa mga address.

$TTL 1H ; 1 oras
SA website ng SOA ns1.site. root.site (22
3H
1H
1W
1H)

; Mga name server
N.S. ns1.site

Para sa mga caconical na pangalan
ns1.site. SA 1H A 192.168.200.1
host1.site. SA 1H A 192.168.200.154
;Mga alyas
gw1.site. SA 1H CNAME host1.site.
www.site. SA 1H CNAME host1.site.

vi /var/named/chroot/var/named/192.168.200.db# reverse zone para sa pagmamapa ng mga address sa mga pangalan.

$TTL 3600 ; 1 oras
200.168.192.in-addr.arpa SA SOA ns1.site. root.site (21
3H
1H
1W
1H)
; Mga name server
200.168.192.in-addr.arpa SA NS ns1.site

; mga kanonikal na pangalan
1.200.168.192.in-addr.arpa PTR ns1.site.
154.200.168.192.in-addr.arpa PTR host1.site.

vi /var/named/chroot/var/name/127.0.0.db# loopback address para sa pagpapadala ng mga packet sa iyong sarili.

$TTL 3600 ; 1 oras
0.0.127.in-addr.arpa SA SOA ns1.site. root.site (21
3H
1H
1W
1H)

0.0.127.in-addr.arpa SA NS ns1.site
0.0.127.in-addr.arpa. SA PTR localhost.

vi /var/named/chroot/var/named/named.ca#root server

A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4
;
; dating NS1.ISI.EDU
;
. 3600000 NS B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET. 3600000 A 192.228.79.201
;
; dating C.PSI.NET
;
. 3600000 NS C.ROOT-SERVERS.NET.
C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12
;
; dating TERP.UMD.EDU
;
. 3600000 NS D.ROOT-SERVERS.NET.
D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90
;
; dating NS.NASA.GOV
;
. 3600000 NS E.ROOT-SERVERS.NET.
E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10
;
; dating NS.ISC.ORG
;
. 3600000 NS F.ROOT-SERVERS.NET.
F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241
;
; dating NS.NIC.DDN.MIL
;
. 3600000 NS G.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4
;
; dating AOS.ARL.ARMY.MIL
;
. 3600000 NS H.ROOT-SERVERS.NET.
H.ROOT-SERVERS.NET. 3600000 A 128.63.2.53
;
; dating NIC.NORDU.NET
;
. 3600000 NS I.ROOT-SERVERS.NET.
I.ROOT-SERVERS.NET. 3600000 A 192.36.148.17
J.ROOT-SERVERS.NET. 3600000 A 192.58.128.30
;
; pinamamahalaan ng RIPE NCC
;
. 3600000 NS K.ROOT-SERVERS.NET.
K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129
;
; pinamamahalaan ng ICANN
;
. 3600000 NS L.ROOT-SERVERS.NET.
L.ROOT-SERVERS.NET. 3600000 A 198.32.64.12
;
; pinapatakbo ng WIDE
;
. 3600000 NS M.ROOT-SERVERS.NET.
M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33
; Katapusan ng File

Pagsisimula at pagpapahinto sa server/etc/init.d/named (start stop restart)
Mga Utility sa Pagsubok ng DNS: host, nslookup, dig.
Higit pa detalyadong mga setting DNS read man bind, i-book ang DNS at BIND, atbp.

Sa artikulong ito titingnan natin ang Master at Slave deployment BIND DNS server(Berkeley Internet Pangalan ng Domain) sa CentOS 6.4 minimal. Bago mo makumpleto ang lahat ng mga hakbang sa artikulong ito, dapat ay na-configure mo ang iyong network, naka-install ang system-config-firewall-tui, at Midnight Commander. Lahat paunang setup Mababasa ang CentOS.

Sa parehong mga makina:

i-install ang Midnight Commander:

i-install ang system-config-firewall-tui:

yum install system-config-firewall-tui –y

pumasok sa command line

iptables -A INPUT -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT

i-install ang BIND:

yum install bind-chroot bind-utils –y

Ilunsad natin ang firewall configuration utility at i-configure:

system-config-firewall-tui

Markahan ng asterisk DNS

I-click "Pasulong". Markahan ang interface eth0 at i-click "Pasulong"

I-click "Pasulong". Markahan ang interface para sa eth0 masquerade at i-click "Pasulong"

I-click "Pasulong".

I-click "Pasulong".

I-click "Pasulong".

I-click "Pasulong".

I-click "malapit".

I-click "OK".

I-click "Oo". handa na.

Huwag paganahin ang SELINUX:

sa /etc/selinux/config ay itatama namin ito SELINUX=hindi pinagana

Ngayon, buuin natin ang susi:

dnssec-keygen -a HMAC-MD5 -b 128 -n USER rndckey

Ang utos na ito ay lilikha ng dalawang file sa kasalukuyang direktoryo. Sa *.private na file sa ikatlong linya magkakaroon ng susi ng form: wGmtcnMtn9od+ndTc20tGg==

Pagkatapos nito, buksan ang file /etc/resolv.conf at sa pinakasimula ay isusulat namin dito:

nameserver 192.168.0.191

nameserver 192.168.0.192

Master DNS server (IP: 192.168.0.191 host name: ns1.localserver12.ru):

lumikha ng isang direktoryo /etc/named/master

mkdir /etc/named/master

ililipat namin si bindu sa farm

chown -R na pinangalanang:named /etc/named/master

Pagbubukas /etc/named.conf. Sa loob nito, sinusuri namin ang pagkakaroon ng mga opsyon na ipinahiwatig sa ibaba. Kung wala sila roon, idagdag ang mga ito kung iba ang mga ito, itama ang mga ito:

makinig-sa port 53 ( 127.0.0.1; 192.168.0.191; );

allow-transfer (192.168.0.192; );

abisuhan oo;

zone "localserver12.ru" SA (

uri ng master;

file na "/etc/named/master/localserver12.ru";

/* Path sa ISC DLV key */)

dnssec-enable yes;

dnssec-validation yes;

dnssec-lookaside auto;

Gumawa tayo ng file localserver12.ru sa /etc/named/master directory

pindutin ang /etc/named/master/localserver12.ru

Ibigay natin sa bindu farm:

chown -R named:named /etc/named/master/localserver12.ru

Isulat natin ang sumusunod dito (humigit-kumulang tulad ng nasa larawan):

Simulan na natin ang pagtali

Inilalagay namin ang BIND sa startup upang magsimula ito sa panahon ng system boot

Handa na ang master DNS server.

Slave DNS server (IP: 192.168.0.192 host name: ns2.localserver12.ru):

lumikha ng isang direktoryo /etc/named/slave

Ibigay natin sa bindu farm

chown -R na pinangalanang:named /etc/named/slave

Buksan ang /etc/named.conf. Sa loob nito, sinusuri namin ang pagkakaroon ng mga opsyon na ipinahiwatig sa ibaba. Kung wala sila roon, idagdag ang mga ito kung iba ang mga ito, itama ang mga ito:

listen-on port 53 ( 127.0.0.1; 192.168.0.192; );

payagan-recursion ( 192.168.0.0/24; );

recursion oo;

allow-transfer (wala; );

abisuhan hindi;

zone "localserver12.ru" (

uri ng alipin;

file na "/etc/named/slave/localserver12.ru";

masters(192.168.0.191;);

Sinusuri din namin ang pagkakaroon ng mga naturang linya (kung hindi, idagdag bago ang linya /* Path sa ISC DLV key */)

Dnssec-enable yes;

Dnssec-validation yes;

Dnssec-lookaside auto;

Simulan na natin ang pagtali

Inilalagay namin ito sa startup upang magsimula ito sa panahon ng pag-boot ng system

Ang server ng Slave DNS ay handa na. Gayundin, pagkatapos ng pag-restart, ang file ay awtomatikong mapupunta sa /etc/named/slave na direktoryo localserver12.ru

Ngayon suriin natin:

sa alipin ipasok ang utos

dig @ns1.localserver12.ru localserver12.ru axfr

at sa master na ganito

dig @ns2.localserver12.ru localserver12.ru axfr

sa parehong mga kaso ang data ay output at Mga tala ng DNS mula sa file localserver12.ru

Lahat. Ang mga DNS server ay handa na.


Kung nakatulong sa iyo ang artikulong ito, maaari mong pasalamatan ang may-akda:
ilipat sa WMR wallet (WebMoney): R301575071888
ilipat sa Yandex.Wallet: 410011003938168
o sa PayPal:

Ipakita sa iyong pansin bagong kurso mula sa koponan Ang Codeby- "Pagsubok sa pagtagos ng mga Web Application mula sa simula." Pangkalahatang teorya, paghahanda ng kapaligiran sa pagtatrabaho, passive fuzzing at fingerprinting, Active fuzzing, Vulnerabilities, Post-exploitation, Mga gamit, Social Engeneering at marami pang iba.


Ang mga domain ay may hindi bababa sa dalawang DNS server, ang isa ay tinatawag na primary name server (ns1) at ang isa ay tinatawag na pangalawang name server (ns2). Karaniwang ginagamit ang mga pangalawang server kapag may mga problema sa pangunahing DNS server: kung hindi available ang isang server, magiging aktibo ang pangalawa. Mas marami ang posible kumplikadong mga circuit gamit ang load balancing, firewalls at clusters.

Lahat ng DNS record para sa isang partikular na domain ay idinaragdag sa pangunahing server mga pangalan Pangalawang server sini-synchronize lang ang lahat ng impormasyon, tinatanggap ito mula sa pangunahing server, batay sa mga parameter na tinukoy sa pangunahing server.

Ang tagubiling ito ay maglalarawan, paano gumawa ng pangunahing DNS server na tumatakbo sa CentOS. Pakitandaan na ang DNS server na ipinakita sa gabay na ito ay magiging isang pampublikong DNS, na nangangahulugang tutugon ang server sa mga kahilingan mula sa anumang IP address. Kung paano paghigpitan ang pag-access sa server ay inilarawan sa manwal na ito.

Bago tayo magsimula, nais kong banggitin na ang DNS ay maaaring mai-install nang may o walang chroot jail environment. Nililimitahan ng kapaligiran ng chroot jail ang DNS server sa isang partikular na direktoryo sa system, kumpara sa ganap na access ng system sa server. Sa ganitong paraan, hindi makokompromiso ng anumang kahinaan ng DNS server ang buong system. Ang paglilimita sa DNS server sa isang partikular na direktoryo (isang proseso na tinatawag na chrooting) ay kapaki-pakinabang din sa mga kapaligiran ng pagsubok.

Target

Magse-set up kami ng DNS server sa ilalim ng mga kundisyon ng pagsubok para sa example.tst domain, na isang hypothetical (non-existent) na domain. Sa ganitong paraan, hindi kami basta-basta manghihimasok sa anumang totoong domain.

Mayroong tatlong sumusunod na server sa domain na ito.

Server IP address Mga Serbisyong Naka-host FQDN
Server A 172.16.1.1 Mail mail.example.tst
Server B 172.16.1.2 Web, FTP www.example.tst
ftp.example.tst
Server C 172.16.1.3 Pangunahin DNS server ns1.example.tst

Iko-configure namin ang pangunahing DNS server at idagdag ang kinakailangang domain at mga tala ng DNS tulad ng ipinapakita sa talahanayan.

Pagse-set up ng mga hostname

Ang lahat ng mga host ay dapat na matukoy nang tama sa mga tuntunin ng FQDN. Magagawa ito gamit ang sumusunod na pamamaraan.

Yung mga nagmamahal GUI, maaaring gumamit ng mga tool sa NetworkManaget. Upang gawin ito, i-type ang command nmtui. Ang sumusunod na pseudo-graphical na interface ay magbubukas:

Piliin ang "Palitan ang pangalan ng host" at ilagay ang ns1.example.tst

Kapag handa na, i-click ang OK.

Isa pang paraan, sa isang utos lang:

Hostnamectl set-hostname ns1.example.tst

Kapag na-install na, maaaring suriin ang hostname gamit ang sumusunod na command.

# hostname ns1.example.tst

Katayuan ng Hostnamectl

Bago magpatuloy sa susunod na hakbang, siguraduhing ang hostname para sa lahat ng mga server ay nakatakda nang maayos.

Pag-install ng mga pakete

Gagamitin namin ang bind para sa DNS, na madaling itakda sa pamamagitan ng yum command.

Pag-install ng DNS nang walang chroot:

# yum install bind

Pagtatakda ng DNS gamit ang chroot:

# yum install bind bind-chroot

Paghahanda ng mga configuration file

Tulad ng nabanggit kanina, ang bind ay maaaring i-configure nang may o walang chroot. Ang mga landas ay bahagyang nag-iiba depende sa kung ang chroot ay na-install.

Path sa configuration file Path sa zone file
Walang chroot /etc/ /var/named/
Kasama si chroot /var/named/chroot/etc/ /var/named/chroot/var/named/

Maaari mong gamitin ang name.conf configuration file, na ibinibigay bilang default. Gayunpaman, gagamit kami ng ibang halimbawang configuration file para sa kadalian ng paggamit.

Gumagawa ng backup na kopya ng /etc/named.conf file

Cp /etc/named.conf /etc/named.conf.bak

# cp /usr/share/doc/bind-9.9.4/sample/etc/named.rfc1912.zones /etc/named.conf

# cp /usr/share/doc/bind-9.9.4/sample/etc/named.rfc1912.zones /var/named/chroot/etc/named.conf

Ngayong meron backup na kopya configuration file, at ang orihinal na file mismo ay nabago, nagpapatuloy kami.

# vim /etc/named.conf

# vim /var/named/chroot/etc/named.conf

Ang mga sumusunod na linya ay idinagdag/binago.

Mga Pagpipilian ( ## path sa mga zone file ## direktoryo "/var/named"; ## mga kahilingan sa pag-redirect sa pampublikong DNS server ng Google para sa mga hindi lokal na domain ## forwarder ( 8.8.8.8; ); ); ## deklarasyon ng direktang zone halimbawa.tst ## zone "example.tst" IN ( type master; file "example-fz"; ## file para sa direct zone ay matatagpuan sa /var/named ## allow-update (wala;); ## deklarasyon ng reverse zone para sa network 172.16.1.0 ## zone "1.16.172.in-addr.arpa" IN ( type master; file "rz-172-16-1"; ## file para sa reverse zone ay matatagpuan sa /var /named ## allow-update ( wala; );

Paghahanda ng mga zone file

Ang mga file ng default na zone ay awtomatikong nilikha sa /var/named o /var/named/chroot/var/named (para sa chroot).

Ipagpalagay na ang mga default na zone file ay wala, maaari naming kopyahin ang mga sample na file mula sa /usr.

# cp /usr/share/doc/bind-9.9.4/sample/var/named/named.* /var/named/

# cp /usr/share/doc/bind-9.9.4/sample/var/named/named.* /var/named/chroot/var/named

Malaki. Ngayon ang mga default na zone file ay handa na, gumawa kami ng sa amin sariling mga file mga zone halimbawa.tst at network 172.16.1.0. Habang gumagawa kami ng mga zone file, kailangan naming tandaan ang mga sumusunod.

  • Ang simbolo na '@' ay nangangahulugang NULL sa mga zone file.
  • Ang bawat entry na Fully Qualified Domain Name (FQDN) ay nagtatapos sa isang tuldok na '.' mail.example.tst. Kung walang punto, magkakaroon ng mga problema.

1. Direktang sona

Ang direktang zone ay naglalaman ng isang mapa ng mga pagsasalin mula sa mga pangalan hanggang sa mga IP address. Para sa mga pampublikong domain, ang mga DNS domain na naka-host sa mga serbisyo sa pagho-host ay nasa direct zone file.

# vim /var/named/example-fz

# vim /var/named/chroot/var/named/example-fz $TTL 1D @ SA SOA ns1.example.tst. mial.example.tst. (0; serial 1D; i-refresh ang 1H; muling subukan ang 1W; mag-expire 3H); minimum SA NS ns1.example.tst. SA ISANG 172.16.1.3 mail SA A 172.16.1.1 SA MX 10 mail.example.tst. www SA A 172.16.1.2 ns1 SA A 172.16.1.3 ftp SA CNAME www.example.tst.

Paliwanag: Sa loob ng isang zone file, ang SOA ay nagpapahiwatig ng pagsisimula ng awtorisasyon. Kumpleto na ito Pangalan ng domain authoritative name server. Pagkatapos ng buong pangalan ng domain ay dumating ang impormasyon ng contact email address. Dahil hindi natin magagamit ang '@' sa [email protected], muli naming isinusulat ang email address bilang mial.example.tst.

  • N.S.: Pangalan ng server
  • A: Ang record o address record ay isang IP address
  • MX: Mail Exchanger rekord. Dito gumagamit lang kami ng isang MX na may priority 10. Sa kaso ng maraming MX, maaari kaming gumamit ng iba't ibang mga digital na priyoridad. Ibabang numero panalo. Halimbawa, ang MX 0 ay mas mahusay kaysa sa MX 1.
  • CNAME: pangalan sa kanonikal na anyo. Kung ang isang server ay nagho-host ng maraming mga serbisyo, malaki ang posibilidad na maraming mga pangalan ang mareresolba sa isang server. Ang CNAME ay nagpapahiwatig na ang server ay maaaring may iba pang mga pangalan at tumutukoy sa pangalang nakapaloob sa A record.

2. Reverse zone

Ang reverse zone ay naglalaman ng mapa ng mga conversion mula sa mga IP address patungo sa mga pangalan. Dito, lumikha kami ng reverse zone para sa network 172.16.1.0. Sa isang tunay na domain, ang DNS server ng may-ari ng pampublikong IP block ay nakapaloob sa reverse zone file.

# vim /var/named/rz-172-16-1

# vim /var/named/chroot/var/named/rz-172-16-1 $TTL 1D @ SA SOA ns1.example.tst. sarmed.example.tst. (0; serial 1D; i-refresh ang 1H; muling subukan ang 1W; mag-expire 3H); minimum SA NS ns1.example.tst. 1 SA PTR mail.example.tst. 2 SA PTR www.example.tst. 3 SA PTR ns1.example.tst.

Paliwanag: Karamihan sa mga parameter na ginamit sa reverse zone ay magkapareho sa forward zone, maliban sa isa.

  • PTR: PTR o pointer record, tumuturo ito sa ganap na kwalipikadong domain name

Pagkumpleto

Ngayon na handa na ang mga zone file, iko-configure namin ang resolution ng mga zone file.

# chgrp na pinangalanang /var/named/*

# chgrp na pinangalanang /var/named/chroot/var/named/*

Ngayon ay itatakda namin ang IP DNS address server.

# vim /etc/resolv.conf nameserver 172.16.1.3

Sa wakas makakatakbo na tayo serbisyo ng DNS at tiyaking idinagdag ito sa autorun.

# serbisyo na pinangalanang i-restart ang # chkconfig na pinangalanan sa

Pagsubok sa DNS

Maaari naming gamitin ang dig o nslookup upang subukan ang DNS. Una, i-install namin ang mga kinakailangang pakete.

# yum install bind-utils

1. Direktang pagsubok sa zone gamit ang dig

# dig example.tst ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31184 ;; QUESTION SECTION: ;example.com. IN A ;; ANSWER SECTION: example.com. 86400 IN A 172.16.1.3 ;; AUTHORITY SECTION: example.com. 86400 IN NS ns1.example.com. ;; ADDITIONAL SECTION: ns1.example.com. 86400 IN A 172.16.1.3

2. Suriin ang PTR gamit ang dig

Kapag gumamit ka ng dig para sa pagsubok, dapat mong laging hanapin ang katayuang "NOERROR". Anumang ibang kundisyon ay nangangahulugan na may mali.

# dig -x 172.16.1.1 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27415 ;; QUESTION SECTION: ;1.1.17.172.in-addr.arpa. IN PTR ;; ANSWER SECTION: 1.1.16.172.in-addr.arpa. 86400 IN PTR mail.example.tst. ;; AUTHORITY SECTION: 1.16.172.in-addr.arpa. 86400 IN NS ns1.example.tst. ;; ADDITIONAL SECTION: ns1.example.tst. 86400 IN A 172.16.1.3

3. Sinusuri ang MX gamit ang dig

# dig example.tst mx ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35405 ;; QUESTION SECTION: ;example.tst. IN MX ;; ANSWER SECTION: example.tst. 14366 IN MX 10 mail.example.tst.

Mga Tip sa Paglutas ng Problema

  1. Na-disable ko ang SELinux.
  2. Tiyaking hindi hinaharangan ng iyong firewall ang UDP port 53
  3. Ang /var/log/messages ay dapat maglaman ng kapaki-pakinabang na impormasyon kung sakaling may mali
  4. Tiyaking 'pinangalanan' ng user ang may-ari ng mga zone file
  5. Tiyaking nakalista muna ang IP address ng DNS server sa /etc/resolv.conf
  6. Kung gumagamit ka ng example.tst sa isang lab environment, tiyaking idiskonekta ang server mula sa Internet dahil ang example.tst ay isang hindi umiiral na domain.

Upang buod, ang tutorial na ito ay nakatuon sa pagho-host ng example.tst na domain sa isang setting ng lab para sa mga layunin ng pagpapakita. Pakitandaan na hindi ito gabay sa paggawa ng pampublikong DNS server, gaya ng DNS server na tumutugon sa mga kahilingan mula sa anumang IP address. Kung nagse-set up ka ng production DNS server, tiyaking suriin kung aling mga patakaran ang nalalapat sa pampublikong DNS. Ang isa pang aralin ay sumasaklaw sa paglikha ng pangalawang DNS, paghihigpit sa pag-access sa DNS server, at pagpapatupad ng DNSSEC.

Ang Guarantor ay isang pinagkakatiwalaang tagapamagitan sa pagitan ng mga Kalahok sa panahon ng transaksyon.


Sa materyal na ito ay hahawakan ko ang isang kasalukuyang paksa kung saan magsisimula ang halos anumang paunang trabaho sa server. Pag-configure ng mga pangunahing parameter ng network sa CentOS - ip address, dhcp, ipv6, dns, hostname, static na ruta, network card at iba pang mga parameter ng network. Susunod kami sa paksa nang sunud-sunod mula sa simple hanggang sa kumplikado, sinusuri ang lahat ng mga nuances sa pagkakasunud-sunod at pagsagot sa mga pinakasikat na tanong.

Mga setting ng network sa isang server ng CentOS 7

Ang unang pagkakataon na makaharap namin ang mga setting ng network ng isang server ng CentOS ay kapag ginawa namin ang pag-install. Sa paunang screen ng pag-setup mayroong isang hiwalay na item tungkol sa pag-set up ng mga interface ng network:

Sa pagpasok nito, nakikita namin ang isang listahan ng mga konektadong network card. Ang bawat isa sa kanila ay maaaring i-on gamit ang kaukulang slider (point 1 sa larawan). Kapag na-activate ang interface, awtomatiko itong tumatanggap ng mga setting sa pamamagitan ng dhcp. Maaari mong makita ang resulta ng dhcp work doon. Kung hindi ka nasisiyahan sa mga setting na ito, maaari mong i-edit ang mga ito sa pamamagitan ng pag-click i-configure(point 3 sa larawan). Dito maaari mo ring itakda hostname(point 2 sa larawan):


Sa pamamagitan ng pagbubukas ng window ng karagdagang mga setting ng Ehernet, maaari mong baguhin ang pangalan ng interface ng network, tukuyin ang mga setting ng IP (item 1 sa larawan), piliin manu-manong mga setting(punto 2 sa larawan), italaga IP address(point 3 sa larawan), i-install dns server (point 4 sa larawan) at i-save ang network settings (point 5 sa larawan):


Matapos makumpleto ang natitirang mga setting, magsisimula ang pag-install. Pagkatapos ng pag-install, magkakaroon ka ng server na may mga setting ng network na iyong tinukoy.

Ngayon isaalang-alang natin ang isa pang sitwasyon. Hindi mo nilikha ang server, at samakatuwid ay ang pagsasaayos ng network, ngunit ngayon kailangan mong tingnan ito o baguhin ito. Ang server console ay nasa iyong pagtatapon, at kami ay gagana dito. Kung nag-install ka mula sa isang distribution kit minimal, pagkatapos ay kapag sinubukan mong tingnan ang mga setting ng network gamit ang command ifconfig sa console makikita mo ang sumusunod:

Bash: ifconfig: command not found

o sa bersyong Ruso:

Bash: hindi nahanap ang utos ng ifconfig

Upang gumana sa ifconfig at iba pang mga utility sa network kailangan mong i-install ang package net-tools. Gawin natin:

# yum -y i-install ang net-tools.x86_64

Ngayon ay makikita mo ang mga setting ng network:

mtu 1500 inet 192.168.159.129 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) RX packet 319 bytes 36709 (35.8 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 256 bytes 148817 (Ki10s overruns) 148817 (Ki10s overrun) 0 carrier 0 banggaan 0 lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6::1 prefixlen 128 scopeid 0x10 loop txqueuelen 0 (Local Loopback) RX packet 6 bytes 624 (624.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 6 bytes 624 (624.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions

Kung ayaw mong mag-install ng karagdagang package, maaari kang gumamit ng mas simpleng command ip may mga parameter:

# ip addr 1: lo: mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6::1 128 scope host valid_lft forever preferred_lft forever 2: eno16777728: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:7d:59:3f brd ff:ff:ff:ff:ff:ff inet 192.168.159.129 /24 brd 192.168.159.255 saklaw global dynamic eno16777728 valid_lft 1709sec preferred_lft 1709sec inet6 fe80::20c:29ff:fe7d:593f/64 scope link valid_lft forever preferred_lft forever preferred_lft

Nakita natin ang configuration ng network, ngayon ay i-edit natin ito. Sabihin nating kailangan nating baguhin ang IP address. Upang gawin ito, pumunta sa /etc/sysconfig/network-scripts directory at buksan ang file para sa pag-edit ifcfg-eth0. Ang file na ito ay may tinatayang sumusunod na nilalaman:

Gamit ang mga setting mula sa file na ito, nakukuha namin ang IP address sa pamamagitan ng dhcp. Upang manu-manong magrehistro ng isang static na IP, dinadala namin ang file sa sumusunod na nilalaman:

Binago namin ang mga parameter:

Para magkabisa ang mga pagbabago, kailangan mong muling basahin ang mga setting ng network:

I-restart ang network (sa pamamagitan ng systemctl): [OK]

Suriin kung nailapat ang bagong configuration ng network:

# ifconfig: eno16777728: flags=4163 mtu 1500 inet 192.168.159.129 netmask 255.255.255.0 broadcast 192.168.159.255 inet6 fe80::20c:29ff:fe7d:593f prefixlen 64 scopeid 0x20 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) RX packets 672 bytes 71841 (70.1 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 572 bytes 290861 Ki284861 (Ki20.1 KiB) errors. 0 carrier 0 banggaan 0

Maayos ang lahat, naka-install ang mga bagong setting ng interface ng network.

Paano makakuha ng mga setting ng network sa pamamagitan ng DHCP

Ngayon isaalang-alang natin ang kabaligtaran na sitwasyon. Sabihin nating may ilang setting na nakatakda nang manu-mano ang iyong network card. Ngunit gusto mong makatanggap ang iyong computer ng mga setting ng network sa pamamagitan ng dhcp bilang isang kliyente. Upang gawin ito, kailangan mong gawin ang kabaligtaran na operasyon sa kung ano ang ginawa namin noon. Iyon ay, buksan ang file /etc/sysconfig/network-scripts/ifcfg-eth0 at tanggalin ang mga linya doon na may mga parameter na DNS, IPADDR, PREFIX, GATEWAY at tukuyin ang halaga sa BOOTPROTO parameter "dhcp". I-save ang file at i-restart ang network:

# /etc/init.d/network restart

Pagkatapos ay tinitingnan namin kung natanggap ng aming kliyente ang mga setting sa pamamagitan ng dhcp.

Paano i-configure ang DNS sa CentOS 7

Ang kasalukuyang mga setting ng dns server sa CentOS ay maaaring matingnan sa dalawang lugar:

  1. Sa file na may mga setting ng network card ifcfg-eth0, na dati naming na-edit nang maraming beses.
  2. Sa /etc/resolv.conf file

Bakit sila ngayon ay nasa dalawang lugar, hindi ko alam, ngunit dati, ang mga setting ng DNS server sa ilang mga distribusyon, hindi ko maalala nang eksakto kung alin, ay ipinahiwatig lamang sa resolv.conf, ngunit sa ilang mga punto ay nagbago ito. At ang lahat ng mga setting ng network ay nagsimulang maimbak sa isang file kasama ang address, gateway, mask, at iba pa. Kung i-edit mo na ngayon ang resolv.conf file at magdagdag ng ilang server dns doon, pagkatapos ay pagkatapos ng reboot ay papalitan sila ng mga value mula sa ifcfg-eth0 file.

Kaya't upang maitakda ang mga parameter ng DNS server, kailangan mong i-edit ang file ng mga setting ng network ng ifcfg-eth0, pagdaragdag ng maraming server kung kinakailangan. Halimbawa tulad nito:

DNS1="192.168.159.2" DNS2="8.8.8.8" DNS3="8.8.4.4"

Upang ilapat ang mga setting, i-save ang file at i-restart ang network, ang lahat ay gaya ng dati. Pagkatapos i-reboot ang server, isusulat ang mga setting ng dns sa resolv.conf file

# cat /etc/resolv.conf # Binuo ng NetworkManager nameserver 192.168.159.2 nameserver 8.8.8.8 nameserver 8.8.4.4

Paano i-disable ang ipv6 sa CentOS 7

Kasalukuyang aktibong ginagamit ang protocol ipv6 hindi, at hindi ito kailangan sa normal na trabaho. Bagama't natakot kami sa loob ng maraming taon na halos wala nang mga libreng IP address na natitira, sa totoo lang ay sapat pa rin para sa lahat. Kaya para sa mga praktikal na dahilan, kasalukuyang hindi kailangan ang ipv6 sa server at maaaring hindi paganahin.

Bago i-disable ang ipv6, kung sakali, kailangan mong suriin kung aling mga program ang gumagamit nito sa kanilang trabaho. Ito ay kinakailangan upang maiwasan ang mga error sa kanilang operasyon sa pamamagitan ng unang hindi pagpapagana ng ipv6 sa mga pagsasaayos. Upang makita kung anong mga programa ang nakabitin sa ipv6 interface, gamitin ang netstat command:

# netstat -tulnp Mga aktibong koneksyon sa Internet (mga server lamang) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2317/master tcp 0 0 0.0.0.0 :22 0.0.0.0:* MAKINIG 1333/sshd tcp6 0 0::1:25:::* MAKINIG 2317/master tcp6 0 0:::22:::* MAKINIG 1333/sshd udp 0 0 0.0.0.0. 0.0.0.0:* 694/avahi-daemon: r udp 0 0 0.0.0.0:123 0.0.0.0:* 715/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0:* 694/avahi r 0 127.0.0.1:323 0.0.0.0:* 715/chronyd udp6 0 0:::123:::* 715/chronyd udp6 0 0::1:323:::* 715/chronyd

Lahat ng linya na may ::: ay ipv6 protocol. Sa aking kaso ito ay sshd, postfix at chronyd. Huwag paganahin ang ipv6 para sa kanila at iwanan lamang ang ipv4.

Magsimula tayo sa sshd. Buksan ang file ng mga setting /etc/ssh/sshd_config at hanapin ang mga linya:

#AddressFamily any #ListenAddress 0.0.0.0

I-uncomment natin sila at palitan natin. Dapat itong magmukhang ganito:

AddressFamily inet ListenAddress 0.0.0.0

Ngayon buksan ang file ng mga setting ng postfix /etc/postfix/main.cf. Hinahanap namin ang linya doon:

#inet_protocols = lahat

Baguhin sa:

Inet_protocols = ipv4

Huwag paganahin ang ipv6 sa chronyd. Upang gawin ito, lumikha ng file /etc/sysconfig/ chronyd at idagdag ang linya:

MGA OPSYON=-4

Ngayon hindi namin pinagana ang ipv6 sa CentOS. Buksan ang file /etc/ sysctl.conf at idagdag ang mga linya doon:

Net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

Pag-edit ng /etc/sysconfig/ file network, idinagdag doon:

NETWORKING_IPV6=walang IPV6INIT=no

I-reboot at suriin ang resulta:

# reboot # ifconfig eno16777728: flags=4163 mtu 1500 inet 192.168.159.129 netmask 255.255.255.0 broadcast 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet 2300) (Ethernet 230) mga error 0 bumaba 0 overruns 0 frame 0 TX packets 2138 bytes 1327955 (1.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 loop txqueuelen 0 (Lokal na Loopback) RX packet 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes TX overrun 0 byte errors 0 carrier 0 banggaan 0

Walang binanggit na inet6 at ipv6 format na mga address kahit saan. Kaya lahat ay maayos, na-disable namin ang ipv6 sa CentOS. Ngayon tingnan natin ang listahan ng mga bukas na port:

# netstat -tulnp Mga aktibong koneksyon sa Internet (mga server lamang) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2291/master tcp 0 0 0.0.0.0 :22 0.0.0.0:* MAKINIG 1322/sshd udp 0 0 0.0.0.0:123 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0/ava udp:* 69 127.0.0.1:323 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:57259 0.0.0.0:* 697/avahi-daemon: r

Ang lahat ng mga port ay ipv4. Ang lahat ay maayos, ang aming gawain ay natapos.

Paano baguhin ang hostname sa CentOS 7

Bilang default, sa panahon ng pag-install, inilalagay ng CentOS ang hostname localhost.localdomain. Kung hindi mo ito binago, maaari mo itong gawin sa ibang pagkakataon. Una, tingnan natin kung anong hostname ang itinakda mo. Ginagawa ito gamit ang command sa console hostname, o gamit uname:

# hostname localhost.localdomain # uname -n localhost.localdomain

Upang mapalitan ang hostname sa CentOS, kailangan mong i-edit ang file /etc/hostname. Suriin natin ang nilalaman nito:

# cat /etc/hostname localhost.localdomain

I-edit natin ang file na ito para mapalitan ang hostname:

# mcedit /etc/hostname centos.localhost

I-save ang file at suriin:

# hostname centos.localhost

Mayroong isang handa na utos na agad na nagtatakda ng kinakailangang pangalan ng server:

# hostnamectl set-hostname centos.localhost

Ok na ang lahat, binago namin ang hostname sa centos.localhost

Itakda ang default na gateway sa CentOS 7

Kung sa ilang kadahilanan ay hindi mo itinakda ang default na gateway kapag nagse-set up ng mga parameter ng network, magagawa mo ito nang manu-mano. Una, tingnan natin kung aling default na gateway ang kasalukuyang naka-install sa system:

# netstat -nr Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 149.154.71.254 0.0.0.0 UG 0 0 0 eth0 10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0 10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 149.0.5.0.54 0 0 0 eth0 192.168.1.0 10.8.0.2 255.255 UG 0 0 0 tun0

Tinutukoy ng linya na may Destination 0.0.0.0 ang address ng gateway. Kung wala ka nito, o ang maling gateway ay nakatakda sa field ng Gateway, maaari mo itong baguhin. Itakda ang default na gateway:

ruta magdagdag ng default gw 192.168.0.1

Network Manager sa CentOS 7

Ang CentOS bilang default ay may serbisyong namamahala sa lahat ng koneksyon sa network - NetworkManager. Patuloy nitong sinusubaybayan ang mga setting ng network at, gamit ang isang configuration management daemon, gumagawa ng mga naaangkop na pagbabago sa mga aktibong network device. Sinusuportahan nito ang karaniwang mga file ng pagsasaayos ng ifcfg.

Listahan ng mga utility at application ng network:

Hindi direktang nakikipag-ugnayan ang mga user sa NetworkManager sa CentOS; Ang isa sa gayong utility ay system config network tui.

System config network tui sa CentOS 7

Upang pamahalaan ang mga setting ng network sa CentOS, maaari kang gumamit ng isang graphical na utility nmtui. Napakadaling suriin ang presensya nito sa system. Patakbuhin lang ito sa console:

Kung hindi mo ito na-install, napakadaling ayusin. I-install sa CentOS system config network tui:

# yum i-install ang NetworkManager-tui

Sa pamamagitan ng paggamit tui maaari mong tukuyin ang anumang mga setting ng network na ginawa namin dati sa pamamagitan ng command line at pag-edit ng mga configuration file. Gawin natin yan. Tawagan ang programa:

Piliin ang unang item Mag-edit ng koneksyon, pagkatapos ay piliin ang interface ng network at i-click ang “I-edit”:

Dito maaari naming baguhin ang pangalan ng network card, mac address, tukuyin ang uri ng mga setting ng network - manu-mano o dhcp, manu-manong tukuyin ang ip address, gateway address, dns server, magdagdag ng mga ruta at ilang iba pang mga setting:


Pagkatapos makumpleto ang pag-edit, i-save ang mga setting sa pamamagitan ng pag-click sa OK.
Kung pinili mo ang item sa unang screen ng utility Itakda ang System Hostname, maaari mong mabilis na tukuyin ang hostname. Ang resulta ay magiging katulad ng ginawa namin dati sa console.

Paano magdagdag ng isang static na ruta sa CentOS 7

Upang makontrol ang pagruruta sa CentOS, maaaring kailanganin mong magdagdag ng static na ruta. Ito ay medyo madaling gawin gamit ang console command. Una, suriin natin ang mga kasalukuyang rutang ginagamit netstat:

# netstat -nr Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.159.0.0 5.0.2.0 5.0.5.0.0 6777728

Sa kasong ito, mayroon kaming isang ruta para sa address na 0.0.0.0/0.0.0.0 ang gateway ay 192.168.159.2, na siya ring default na gateway. Iyon ay, sa esensya, walang mga static na ruta. Idagdag natin ang isa sa kanila.

Sabihin nating mayroon tayong subnet 192.168.8.0 mask 255.255.255.0, ang trapiko papunta sa subnet na ito ay dinadaanan ng gateway 192.168.159.5 Magdagdag ng ruta:

# ruta add -net 192.168.8.0/24 gw 192.168.159.5

Suriin kung ang idinagdag na ruta ay lumitaw sa routing table:

# netstat -nr Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.8.0 192.168.8.0 192.168.8.08.15.16 0 0 eno16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 0 eno16777728

Ang lahat ay ok, ang ruta ay naidagdag. Ngunit pagkatapos i-reboot ang static na rutang ito ay tatanggalin. Upang maiwasang mangyari ito at upang mai-save ang mga idinagdag na ruta, kailangan mong isulat ang mga ito sa isang espesyal na file. Sa folder na /etc/sysconfig/network-scripts, gumawa ng file na tinatawag ruta-eth0 sumusunod na nilalaman:

# mcedit /etc/sysconfig/network-scripts/route-eth0 192.168.8.0/24 sa pamamagitan ng 192.168.159.5

I-reboot at tingnan kung nasa lugar ang ruta:

# reboot # netstat -nr Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.2.16 5.5.5.0 UG 0 0 0 eno16777728 192.168.159.0 0.0 .0.0 255.255.255.0 U 0 0 0 eno16777728

Maayos ang lahat, naidagdag ang static na ruta.

Paano i-configure ang 2 IP address sa isang interface

Kung kailangan mong i-configure 2 IP mga address sa isang interface sa CentOS, kung gayon ang paggawa nito ay medyo simple. Gamitin natin ang ifconfig command. Una, tingnan natin ang listahan ng mga interface ng network:

# ifconfig eno16777728: flags=4163 mtu 1500 inet 192.168.159.129 netmask 255.255.255.0 broadcast 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet 259.2x) (Ethernet 3 X pax) R4X s 0 bumaba 0 overruns 0 frame 0 TX mga packet 204 bytes 27658 (27.0 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73

Magdagdag tayo ng isa pang IP address 192.168.159.120 sa interface ng eno16777728:

# ifconfig eno16777728:1 192.168.159.120 pataas

Suriin natin kung ano ang nangyari:

# ifconfig eno16777728: flags=4163 mtu 1500 inet 192.168.159.129 netmask 255.255.255.0 broadcast 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet 259.2x) (Ethernet 3 X pax) R4X s 0 bumaba 0 overruns 0 frame 0 TX mga packet 204 bytes 27658 (27.0 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 eno16777728:1: flags=4163 mtu 1500 inet 192.168.159.120 netmask 255.255.255.0 broadcast 192.168.159.255 eter 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet73) lo: MTU 65536 INET 127.0.0.1 NetMask 255.0.0.0 Loop Txqueuelen 0 (Local Loopback) Rx Packets 11 Bytes 940 (940.0 B) RX Errors 0 Drops 0 Overruns 0 Frame 0 Tx Packets 11 Bytes 940 (940.0 B) Tx Error 0 Drops 0 Overruns 9 0 carrier 0 banggaan 0

Maayos ang lahat, nagdagdag kami ng pangalawang IP address sa parehong interface. Ngunit pagkatapos ng pag-reboot, hindi mase-save ang karagdagang address. Upang i-save ito, kailangan mong lumikha ng isang file ng mga setting ng interface sa folder na /etc/sysconfig/network-scripts

# mcedit /etc/sysconfig/network-scripts/ ifcfg-eno16777728:1 DEVICE=eno16777728:1 BOOTPROTO=static IPADDR=192.168.159.120 NETMASK=255.255.255.0 ONBOOT=oo

I-save ang file, i-reboot at suriin kung ano ang nangyari. Ang pangalawang IP address ay dapat na nasa lugar.

Paano mag-restart ng network sa CentOS 7

Nasabi ko na ang isyung ito kanina, pero kung sakali, uulitin natin ito nang hiwalay. Sabihin nating nakagawa ka ng ilang pagbabago sa configuration ng iyong network. Paano ko mailalapat ang mga setting na ito nang hindi nire-reboot ang server? Napakasimple. Upang i-restart ang network sa CentOS, gamitin lamang ang command:

# /etc/init.d/network restart

Ang serbisyo ng NetworkManager ay muling magbabasa ng lahat ng mga setting ng network at ilalapat ang mga pagbabago.

Paano malalaman ang IP address sa CentOS 7

Upang mabilis na malaman ang kasalukuyang IP address sa CentOS, kailangan mong gamitin ang mga sumusunod na command:

# ifconfig | grep inet inet 192.168.159.129 netmask 255.255.255.0 broadcast 192.168.159.255 inet 127.0.0.1 netmask 255.0.0.0

O ang pangalawang opsyon para sa pagtukoy ng lokal na IP address:

# ip addr | grep inet inet 127.0.0.1/8 scope host lo inet 192.168.159.129 /24 brd 192.168.159.255 saklaw global eno16777728

Ang parehong mga utos ay nagbibigay-daan sa iyo upang mabilis na malaman ang iyong IP address.

Ano ang gagawin kung hindi makita ng CentOS ang network card?

Na-install mo ang server, nag-boot up at natuklasan na walang isang network card sa system. Ano ang gagawin sa kasong ito? Una sa lahat, tingnan ang output ng dmesg command at hanapin ang memorya ng iyong card doon. Marahil ito ay nasa system, hindi lamang na-activate. Maaari mong i-activate ito gamit ang nmtui, na sinabi ko sa itaas.

May menu item I-activate ang koneksyon, kailangan mong pumasok dito at i-activate ang iyong network card. Pagkatapos nito maaari mo itong i-configure.

Kung ang iyong network card ay wala sa system, kailangan mong maghanap sa Internet para sa impormasyon tungkol sa network card na ito ayon sa modelo. Marahil ay magkakaroon ng mga driver para dito sa mga repositoryo. Ito ay isang medyo pangkaraniwang sitwasyon. Kadalasan, mahahanap ang mga driver at kakailanganin nilang mai-install nang tama.

May posibilidad pa rin na hindi mo makikita ang iyong card kapag nag-output ng ifconfig command kung hindi nakasaksak ang network wire sa card na ito. Upang matiyak na tingnan ang lahat ng mga interface, dapat mong gamitin ang -a switch:

# ifconfig -a

May isa pang paraan upang maghanap ng network card sa system. I-install ang package pciutils:

# yum -y mag-install ng pciutils

At tingnan ang output ng command:

#lspci | grep Ethernet

Kung ang network card ay nakikita ng system, dapat mayroong ganito:

02:00.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01)

Kung walang laman ang output, hindi tinukoy ang network card.

Ano ang gagawin kung hindi available ang network sa CentOS?

Sabihin nating sinusubukan mong i-ping ang ilang address, halimbawa 8.8.8.8, at nakatanggap ka ng tugon na hindi available ang network:

#ping 8.8.8.8

At bilang tugon makakakuha ka ng:

Kumonekta: Hindi available ang network

Maaaring lumitaw ang sitwasyong ito kung wala kang naka-install na default na gateway. Maaari mo itong idagdag gamit ang utos:

# ruta magdagdag ng default gw 192.168.0.1

Kung ang problema ay wala sa gateway, kailangan mong suriin ang mga setting ng mga adapter ng network. Kung walang aktibong adaptor, makakatanggap ka rin ng mensahe na hindi gumagana ang network. Kinakailangan na hindi bababa sa isang network adapter ang wastong na-configure sa system. Kung paano gawin ito ay nakasulat sa itaas.

Gamit ang network utilities traceroute, maghukay sa CentOS

Upang masuri ang mga koneksyon sa network sa CentOS, kapaki-pakinabang na gumamit ng mga espesyal na kagamitan. Ngunit kung ginamit mo ang kaunting pag-install, malamang na wala sila sa system. Halimbawa, ang sikat na utility traceroute Kapag sinubukan mong ilunsad ito, ipapakita nito ang sumusunod na mensahe:

# traceroute ya.ru bash: traceroute: command not found

Kailangan itong mai-install nang hiwalay mula sa imbakan:

# yum -y i-install ang traceroute

Parehong bagay sa sikat na programa maghukay upang gumana sa mga DNS server at talaan:

# dig ya.ru bash: dig: command not found

Para gumana ang network utility na ito, dapat mong i-install ang package bind-utils:

# yum -y i-install ang bind-utils

Pag-configure ng 802.1Q VLAN sa CentOS 7

Upang itaas ang isang naka-tag na interface sa CentOS, kailangan mo munang suriin ang suporta sa kernel 8021q:

#modprobe8021q

Kung walang mga mensahe ng error, kung gayon ang lahat ay nasa ayos, na-load ang module. Kung hindi natagpuan ang module, kailangan mong buuin muli ang mga kernel module, na nagbibigay-daan sa suporta para sa kinakailangang module. Suriin natin, kung sakali, kung nag-load ang module:

# lsmod | grep 8021q 8021q 29022 0 garp 14384 1 8021q mrp 18542 1 8021q

Maayos ang lahat, na-load ang 8021q module, idagdag natin ito sa startup:

# echo 8021q >> /etc/modules-load.d/8021q.conf

Ngayon lumikha ng isang configuration file para sa vlan sa /etc/sysconfig/network-scripts:

# mcedit ifcfg-eth0.2000 VLAN=oo DEVICE=eth0.2000 BOOTPROTO=static ONBOOT=oo TYPE=Vlan IPADDR=192.168.100.2 NETMASK=255.255.255.0

Iginuhit ko ang iyong pansin sa kung ano ang naka-highlight sa bold. Sa lahat ng mga tagubilin sa Internet na nakita ko, ang parameter na ito ay ipinahiwatig bilang TYPE=Ethernet, ngunit sa setting na ito ang interface na may vlan ay hindi tumaas, lumitaw ang isang error:

Error: walang nakitang device para sa koneksyon "System eth0.2000".

Pagkatapos ko lamang ayusin ito ay gumana ang lahat ayon sa nararapat. Kaya i-save at i-activate ang interface:

# ifup eth0.2000 Matagumpay na na-activate ang koneksyon (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)

Sinusuri ang aming vlan:

# ip l ls 1: narito: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000 link/ether 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff 3: eth0.2000@eth0: mtu 1500 qdisc noqueue state UP mode DEFAULT link/ether 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff

Maayos na ang lahat, tapos na ang naka-tag na interface. Sa pamamagitan ng pagkakatulad, maaari kang lumikha ng ilang higit pang katulad na mga interface, hindi nakakalimutang baguhin ang kanilang mga pangalan at address.

Ito ay nagtatapos sa aking malaking materyal sa paksa ng pag-setup ng network sa CentOS. Lubos akong ikalulugod na makatanggap ng mga komento, komento, at pagwawasto. Malamang gagawin nila. Sa pamamagitan ng paglikha ng mga naturang materyales, una sa lahat ay natututo ako sa aking sarili at pinagbubuti ang aking kaalaman sa lugar ng paksa. Maaaring may mga error at typo dito sa isang lugar, bagaman sinusuri ko ang lahat sa mga live na system kapag nagsusulat ng mga manual, ngunit posible pa rin ang mga kamalian at typo.

Online na kursong "Linux Administrator"

Kung mayroon kang pagnanais na matutunan kung paano bumuo at magpanatili ng mataas na magagamit at maaasahang mga sistema, inirerekumenda ko na pamilyar ka sa online na kursong "Linux Administrator" sa OTUS. Ang kurso ay hindi para sa mga nagsisimula; pangunahing kaalaman sa mga network at Pag-install ng Linux sa virtual machine. Ang pagsasanay ay tumatagal ng 5 buwan, pagkatapos kung saan ang mga matagumpay na nagtapos ng kurso ay maaaring sumailalim sa mga panayam sa mga kasosyo. Subukan ang iyong sarili sa pagsusulit sa pasukan at tingnan ang programa para sa higit pang mga detalye.

Sa simpleng salita. Mga bersyon ng software na ginamit: CentOS 7, BINВ 9.

Paghahanda ng server

I-install ang lahat ng mga update:

I-install ang time synchronization utility:

# yum i-install ang ntpdate

Pag-set up ng time zone:

# \cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime

* V sa halimbawang ito Pinili ang oras ng Moscow.

At pagsabayin ang oras sa panlabas na server:

# ntpdate ru.pool.ntp.org

Buksan ang port sa firewall:

# firewall-cmd --permanent --add-port=53/udp

At muling basahin ang mga setting firewall:

# firewall-cmd --reload

Pag-install at Pagpapatakbo ng BIND

I-install namin ang DNS server gamit ang sumusunod na command:

# yum install bind

Payagan ang autostart:

# systemctl enable ang pangalan

Simulan natin ang serbisyo ng pangalan:

# systemctl simula pinangalanan

At sinusuri namin kung gumagana ito nang tama:

# systemctl status na pinangalanan

Pangunahing pag-setup ng DNS server

Buksan ang file ng pagsasaayos ng bind para sa pag-edit:

# vi /etc/named.conf

at i-edit ang sumusunod:

listen-on port 53 ( 127.0.0.1; localhost; 192.168.166.155; );
...
allow-query ( any; );

* Saan 192.168.166.155 — IP address ng aming NS server kung saan makakatanggap ito ng mga kahilingan; allow-query nagbibigay-daan sa lahat na magsagawa ng mga kahilingan, ngunit para sa mga kadahilanang pangseguridad maaari mong limitahan ang pag-access sa tiyak na network, halimbawa, sa halip na anuman magsulat 192.168.166.0/24 .

Upang ilapat ang mga setting, patakbuhin ang command:

# systemctl restart pinangalanan

Upang suriin ang pag-andar ng server mula sa isa pang computer sa network (halimbawa, sa Windows), patakbuhin ang command:

> nslookup site 192.168.166.155

* sa utos na ito sinusubukan naming malaman ang mga IP address ng site website sa pamamagitan ng server 192.168.166.155 .

Dapat itong magmukhang ganito:

Paglalarawan ng mga pandaigdigang opsyon

Ang mga sumusunod na setting ay pandaigdigan sa DNS at lahat ng naka-configure na zone. Naka-set in na sila configuration file named.conf, options() directive.

Mga pagpipilian Mga paglalarawan
direktoryo Tinutukoy ang gumaganang direktoryo ng bind server. Kung hindi tinukoy, /var/named
mga nagpapasa Inililista ang mga server kung saan ililipat ang kahilingan kung hindi ito maproseso ng aming server (walang kaukulang zone.)
pasulong Ino-override kung paano pinoproseso ang kahilingan. Tumatanggap ng dalawang value - ONLY o FIRST. Ang una ay nagpapahiwatig na ang server ay hindi susubukan na maghanap ng mga tugma mga lokal na sona. Pangalawa, ire-redirect muna ng server ang kahilingan at kung hindi ito matagumpay na naproseso, maghanap ng mga tugma sa panloob na database.
makinig-sa Sa anong mga interface ang magbubuklod sa pakikinig?
payagan-transfer Indikasyon ng listahan ng mga server kung saan papayagan ang mga paglilipat ng zone (pagtitiklop sa pangalawang NS)
allow-query Listahan ng mga node kung saan pinapayagan ang pag-access sa server. Kung hindi tinukoy, lahat ay pinapayagan.
allow-notify Nagbibigay-daan sa mga nakalistang server na magpadala ng mga abiso tungkol sa mga pagbabago sa mga setting ng zone.
payagan-recursion Tinutukoy ang isang listahan ng mga host kung saan recursive na mga query, ang natitira ay papayagang umuulit. Kung hindi tinukoy, recursively para sa lahat.

Halimbawa ng mga pandaigdigang setting

mga pagpipilian (
direktoryo na "/var/named";
mga forwarder (192.168.0.10; 77.88.8.8; 8.8.8.8; );
makinig-on (127.0.0.1; localhost; 192.168.166.155; );
allow-transfer ( 192.168.1.15; 192.168.0.0/24; );
allow-query ( 192.168.1.0/24; 192.168.0.2; 192.168.0.3; );
allow-notify ( 192.168.0.15; );
allow-recursion ( any; );
}

magbigkis ng mga zone

Upang makapaghanap ng mga tugma sa sariling database mga domain, kailangan mong gumawa at mag-configure ng mga zone. Mayroong mga sumusunod na uri ng zone:

  1. Pangunahin, kilala rin bilang master, kilala rin bilang lokal. Isang database na ina-update at na-edit sa kasalukuyang server. Matuto nang higit pa tungkol sa kung paano i-configure ang pangunahing bind zone.
  2. Pangalawa o alipin. Kinokopya ng database ang mga setting mula sa pangunahing zone sa isa pang server. Matuto pa tungkol sa kung paano mag-set up ng pangalawang bind zone.
  3. stub o usbong. Nag-iimbak lamang ng mga tala ng NS, ayon sa kung saan ang lahat ng mga kahilingan ay inililipat sa naaangkop na mga server ng NS.
  4. Pag-cache o pahiwatig. Hindi ito nag-iimbak ng anumang mga tala sa network - ang mga resulta lamang ng mga naprosesong kahilingan upang mapabilis ang mga tugon sa mga paulit-ulit na kahilingan.

Paglutas ng mga Problema Gamit ang Log Files

Bilang default, ang Bind server ay nag-iimbak ng mga log sa isang file
/var/named/data/named.run.

Upang patuloy itong tingnan, ipasok ang sumusunod na command:

tail /var/named/data/named.run

Maaaring i-configure ang antas ng detalye ng log sa configuration file:

pagtotroso (
channel default_debug (
file na "data/named.run";
dynamic na kalubhaan;
};
};

* Saan file— landas sa log file; kalubhaan— antas ng pagiging sensitibo sa mga umuusbong na kaganapan. Maaari ang mga sumusunod na opsyon para sa kalubhaan:

  • mapanganib- mga kritikal na pagkakamali.
  • pagkakamali— mga pagkakamali at mas mataas (kritikal).
  • babala- mga babala at higit pa. Ang mga babala ay hindi nagpapahiwatig ng mga problema sa serbisyo gayunpaman, ito ay mga kaganapan na maaaring humantong sa mga error, kaya hindi mo dapat balewalain ang mga ito.
  • pansinin- mga abiso at mas mataas.
  • impormasyon- impormasyon.
  • i-debug- debugging (detalyadong log).
  • pabago-bago- ang parehong pag-debug.