Lokale DNS-server centos 6. Basisconfiguratie van de DNS-server. Voorbeeld van globale instellingen

DNS- domeinnaamsysteem - gedistribueerd systeem, die op verzoek zijn IP-adres kan rapporteren met daarin een hostnaam. DNS-structuur vergelijkbaar met bestandssysteem Linux heeft de hele database een boomstructuur, met bovenaan de root ( . ). Vanaf de punt begint het hele domeinnaamsysteem. De punt kan worden gevolgd door ru, com, net, info, etc. Domeinen die afkomstig zijn van de root, d.w.z. Ru., com.,netto. worden genoemd domeinen op het eerste niveau, websitetype domeinen. worden genoemd domeinen op het tweede niveau, maar van de vorm file.site. - domeinen op het derde niveau enzovoort. Let op de punt aan het einde van de voorbeelden. Namen die op deze manier worden geschreven, worden absolute namen (FQDN) genoemd. Als de punt niet is opgegeven, wordt de naam als relatief beschouwd. Dat wil zeggen: de website.

Waarom DNS gebruiken?

1) Stel je voor dat je contact moet opnemen netwerkbron onder de naam gastheer(dit is de bestandsserver waarin alle medewerkersbestanden worden opgeslagen) naam gastheer heeft IP het adres is 192.168.200.20 en als u niet over een service beschikt die IP-adressen in namen omzet, moet u het IP-adres 192.168.200.20 bellen om bij de bestandsserver te komen. Wat is gemakkelijker om de hostnaam of de reeks cijfers 192.168.200.20 te onthouden?

2) De tweede optie heeft betrekking op toegang tot internet. U moet bijvoorbeeld naar een FTP-server op internet gaan met de naam ftp.site, en het IP-adres is 89.111.176.87.

Dus als u bij de eerste optie helemaal geen DNS-server hoeft te installeren en configureren, maar u eenvoudigweg snel bijvoorbeeld de WINS-service kunt instellen, dan heeft u deze eenvoudigweg nodig om toegang te krijgen tot internet (we zullen ' We onthouden voortdurend cijfers wanneer we toegang proberen te krijgen tot bronnen op internet). Een andere vraag is: moet u dit configureren als de provider u zijn DNS-servers heeft geleverd?

De DNS-server kan worden gebruikt als: primaire en secundaire, recursieve en query-redirector.

Primair(master) laadt gegevens voor de zone vanuit een bestand op de servermachine, en secundair (slave) ontvangt gegevens van de primaire DNS. Een DNS-server kan primair zijn voor de ene zone en secundair voor een andere.

Recursieve server aangemaakt in grote organisaties met hogesnelheidsverbinding naar het netwerk. Het is niet gebonden aan de servers van de provider, is flexibel en veilig.

Redirector aanvragen stuurt een verzoek van de client naar de server van de provider. De server van de provider verwerkt veel klantverzoeken, heeft een grote cache en een snelle verbinding.

Basis DNS-records.

A - correspondentie tussen naam en IP-adres
AAAA - correspondentie tussen naam en IPv6-adres
CNAME - canonieke naam (synoniem)
MX - geeft aan mailserver voor dit domein
NS - DNS-server voor het domein
PTR - canonieke naam
SOA is het initiële record dat aangeeft waar informatie over de server is opgeslagen.
SRV - servers voor services.

BIND installeren.
We zullen BIND installeren op centOs5.
Heeft een server met de naam ns1..168.200.1

yum installeren binden

Instellingen BINDEN
Maak het configuratiebestand aan en vul het in

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

opties (
map "/var/named/";
dumpbestand "/var/run/named_dump.bd";
statistiekenbestand "/var/run/named.stats";
};
zone "site" in (
type meester;
bestand "site.db";
};
zone "200.168.192.IN-ADDR.ARPA." IN (
type meester;
bestand "192.168.200.db";
};

zone "0.0.127.IN-ADDR.ARPA." IN (
type meester;
bestand "127.0.0.db";
};

zone "." (
type hint;
bestand "genaamd.ca";
};

We maken zonebestanden voor site.db, 192.168.0.db, 127.0.0.db, genaamd.ca.

vi /var/named/chroot/var/named/site.db# directe zone voor het toewijzen van namen aan adressen.

$TTL 1H; 1 uur
IN SOA-website ns1.site. root.site (22
3H
1H
1W
1 uur)

; Naamservers
NS ns1.site

;Voor caconische namen
ns1.site. IN 1U A 192.168.200.1
host1.site. IN 1H EEN 192.168.200.154
;Aliassen
gw1.site. IN 1H CNAME host1.site.
www.site. IN 1H CNAME host1.site.

vi /var/named/chroot/var/named/192.168.200.db# omgekeerde zone voor het toewijzen van adressen aan namen.

$ TTL 3600; 1 uur
200.168.192.in-adr.arpa IN SOA ns1.site. root.site (21
3H
1H
1W
1 uur)
; Naamservers
200.168.192.in-addr.arpa IN NS ns1.site

; canonieke namen
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-adres voor het verzenden van pakketten naar uzelf.

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

0.0.127.in-addr.arpa IN NS ns1.site
0.0.127.in-adr.arpa. IN PTR localhost.

vi /var/named/chroot/var/named/named.ca#rootservers

A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4
;
; voorheen NS1.ISI.EDU
;
. 3600000 NS B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET. 3600000 A 192.228.79.201
;
; voorheen C.PSI.NET
;
. 3600000 NS C.ROOT-SERVERS.NET.
C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12
;
; voorheen TERP.UMD.EDU
;
. 3600000 NS D.ROOT-SERVERS.NET.
D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90
;
; voorheen NS.NASA.GOV
;
. 3600000 NS E.ROOT-SERVERS.NET.
E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10
;
; voorheen NS.ISC.ORG
;
. 3600000 NS F.ROOT-SERVERS.NET.
F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241
;
; voorheen NS.NIC.DDN.MIL
;
. 3600000 NS G.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4
;
; voorheen AOS.ARL.ARMY.MIL
;
. 3600000 NS H.ROOT-SERVERS.NET.
H.ROOT-SERVERS.NET. 3600000 A 128.63.2.53
;
; voorheen 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
;
; beheerd door RIPE NCC
;
. 3600000 NS K.ROOT-SERVERS.NET.
K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129
;
; beheerd door ICANN
;
. 3600000 NS L.ROOT-SERVERS.NET.
L.ROOT-SERVERS.NET. 3600000 A 198.32.64.12
;
; beheerd door WIDE
;
. 3600000 NS M.ROOT-SERVERS.NET.
M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33
; Einde van bestand

De server starten en stoppen/etc/init.d/named (start stop herstart)
DNS-testhulpprogramma's: host, nslookup, graven.
Meer gedetailleerde instellingen DNS lees man bind, boek DNS en BIND, enz.

In dit artikel zullen we kijken naar de Master- en Slave-implementatie BIND DNS-servers(Berkeley-internet Naam Domein) op CentOS 6.4 minimaal. Voordat u alle stappen in dit artikel kunt voltooien, moet uw netwerk zijn geconfigureerd, system-config-firewall-tui zijn geïnstalleerd en Middernacht commandant. Alle initiële installatie CentOS kan worden gelezen.

Op beide machines:

installeer MidnightCommander:

installeer system-config-firewall-tui:

yum installeer system-config-firewall-tui –y

voer in op de opdrachtregel

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

BIND installeren:

yum installeer bind-chroot bind-utils –y

Laten we het fstarten en configureren:

systeem-config-firewall-tui

Markeer met een asterisk DNS

Klik "Vooruit". Markeer de interface eth0 en klik "Vooruit"

Klik "Vooruit". Markeer de interface voor de eth0-maskerade en klik "Vooruit"

Klik "Vooruit".

Klik "Vooruit".

Klik "Vooruit".

Klik "Vooruit".

Klik "Dichtbij".

Klik "OK".

Klik "Ja". Klaar.

SELINUX uitschakelen:

in /etc/selinux/config zullen we dit corrigeren SELINUX=uitgeschakeld

Laten we nu de sleutel genereren:

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

Met deze opdracht worden twee bestanden aangemaakt huidige map. In het *.private-bestand op de derde regel staat een sleutel van de vorm: wGmtcnMtn9od+ndTc20tGg==

Open daarna het bestand /etc/resolv.conf en helemaal aan het begin zullen we erin schrijven:

naamserver 192.168.0.191

naamserver 192.168.0.192

Master DNS-server (IP: 192.168.0.191 hostnaam: ns1.localserver12.ru):

maak een map /etc/named/master

mkdir /etc/named/master

We zullen Bindu overbrengen naar de boerderij

chown -R genaamd: genaamd /etc/named/master

Opening /etc/named.conf. Daarin controleren we de beschikbaarheid van de onderstaande opties. Als ze er niet zijn, voeg ze dan toe en corrigeer ze:

luisterpoort 53 ( 127.0.0.1; 192.168.0.191; );

overdracht toestaan ​​(192.168.0.192; );

melden ja;

zone "localserver12.ru" IN (

type meester;

bestand "/etc/named/master/localserver12.ru";

/* Pad naar ISC DLV-sleutel */)

dnssec inschakelen ja;

dnssec-validatie ja;

dnssec-lookaside auto;

Laten we een bestand maken lokaleserver12.ru in de map /etc/named/master

raak /etc/named/master/localserver12.ru aan

Laten we het overhandigen aan de bindu-boerderij:

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

Laten we er het volgende in schrijven (ongeveer zoals op de afbeelding):

Laten we beginnen met binden

We hebben BIND bij het opstarten geplaatst, zodat het tijdens het opstarten van het systeem start

Master DNS-server is gereed.

Slave DNS-server (IP: 192.168.0.192 hostnaam: ns2.localserver12.ru):

maak een map /etc/named/slave

Laten we het aan de Bindu-boerderij overhandigen

chown -R genaamd: genaamd /etc/named/slave

Open /etc/named.conf. Daarin controleren we de beschikbaarheid van de onderstaande opties. Als ze er niet zijn, voeg ze dan toe en corrigeer ze:

luisterpoort 53 ( 127.0.0.1; 192.168.0.192; );

allow-recursie ( 192.168.0.0/24; );

recursie ja;

toestaan-overdracht (geen; );

geen melding maken;

zone "localserver12.ru" (

type slaaf;

bestand "/etc/named/slave/localserver12.ru";

meesters(192.168.0.191;);

We controleren ook op de aanwezigheid van dergelijke regels (zo niet, voeg dan vóór de regel toe /* Pad naar ISC DLV-sleutel */)

Dnssec-enable ja;

Dnssec-validatie ja;

Dnssec-lookaside auto;

Laten we beginnen met binden

We hebben het bij het opstarten gezet, zodat het tijdens het opstarten van het systeem start

Slave DNS-server is gereed. Bovendien wordt het bestand na een herstart automatisch naar de map /etc/named/slave getrokken lokaleserver12.ru

Laten we nu eens kijken:

voer op de slave het commando in

dig @ns1.localserver12.ru localserver12.ru axfr

en zo op de meester

dig @ns2.localserver12.ru localserver12.ru axfr

in beide gevallen worden de gegevens uitgevoerd en DNS-records uit het bestand localserver12.ru

Alle. DNS-servers zijn gereed.


Als dit artikel je heeft geholpen, kun je de auteur bedanken:
overboeking naar WMR-portemonnee (WebMoney): R301575071888
overbrengen naar Yandex.Wallet: 410011003938168
of op PayPal:

Wij presenteren onder uw aandacht nieuwe cursus van het team De Codeby- "Penetratietesten van webapplicaties vanaf nul." Algemene theorie, voorbereiding van de werkomgeving, passieve fuzzing en vingerafdrukken, actieve fuzzing, kwetsbaarheden, post-uitbuiting, Hulpmiddelen, Sociale Techniek en nog veel meer.


Domeinen hebben ten minste twee DNS-servers, één genaamd de primaire naamserver (ns1) en de andere genaamd de secundaire naamserver (ns2). Secundaire servers worden meestal gebruikt als er problemen zijn met de primaire DNS-server: als één server niet beschikbaar is, wordt de tweede actief. Er zijn er meer mogelijk complexe circuits met behulp van load-balancing, firewalls en clusters.

Alle DNS-records voor een specifiek domein worden toegevoegd primaire server namen Secundaire server synchroniseert eenvoudigweg alle informatie en ontvangt deze van de primaire server, op basis van de parameters die op de primaire server zijn opgegeven.

Deze instructie beschrijft, hoe u een primaire DNS-server maakt die op CentOS draait. Houd er rekening mee dat de DNS-server die in deze handleiding wordt gepresenteerd een openbare DNS zal zijn, wat betekent dat de server zal reageren op verzoeken van elk IP-adres. Hoe u de toegang tot de server kunt beperken, wordt beschreven in deze handleiding.

Voordat we beginnen, wil ik vermelden dat DNS kan worden geïnstalleerd met of zonder een chroot-jailomgeving. Een chroot jail-omgeving beperkt de DNS-server tot een specifieke map op het systeem, in tegenstelling tot volledige systeemtoegang tot de server. Op deze manier zal een eventuele kwetsbaarheid van de DNS-server niet het hele systeem in gevaar brengen. Het beperken van de DNS-server tot een specifieke map (een proces dat chrooting wordt genoemd) is ook handig in testomgevingen.

Doel

We zullen onder testomstandigheden een DNS-server opzetten voor het example.tst-domein, wat een hypothetisch (niet-bestaand) domein is. Op deze manier zullen we niet willekeurig echte domeinen verstoren.

Er zijn drie volgende servers in dit domein.

Server IP-adres Gehoste diensten FQDN
Server A 172.16.1.1 Mail mail.voorbeeld.tst
Server B 172.16.1.2 Web, FTP www.voorbeeld.tst
ftp.voorbeeld.tst
Server C 172.16.1.3 Primair DNS-server ns1.voorbeeld.tst

We zullen de primaire DNS-server configureren en het vereiste domein en DNS-records toevoegen zoals weergegeven in de tabel.

Hostnamen instellen

Alle hosts moeten correct worden geïdentificeerd in termen van FQDN. Dit kan gedaan worden met behulp van de volgende methode.

Zij die liefhebben GUI, kan NetworkManaget-tools gebruiken. Om dit te doen, typt u de opdracht nmtui. De volgende pseudo-grafische interface wordt geopend:

Selecteer “Hostnaam wijzigen” en voer ns1.example.tst in

Als u klaar bent, klikt u op OK.

Een andere manier, met slechts één commando:

Hostnamectl set-hostnaam ns1.voorbeeld.tst

Eenmaal geïnstalleerd, kan de hostnaam worden gecontroleerd met de volgende opdracht.

# hostnaam ns1.voorbeeld.tst

Hostnaamctl-status

Voordat u doorgaat naar de volgende stap, moet u ervoor zorgen dat de hostnaam voor alle servers correct is ingesteld.

Pakketten installeren

We zullen bind gebruiken voor DNS, wat eenvoudig kan worden ingesteld via yum-commando.

DNS installeren zonder chroot:

# yum installeren binden

DNS instellen met chroot:

# yum installeer bind bind-chroot

Configuratiebestanden voorbereiden

Zoals eerder vermeld, kan binding worden geconfigureerd met of zonder chroot. De paden variëren enigszins, afhankelijk van of chroot is geïnstalleerd.

Pad naar het configuratiebestand Pad naar zonebestanden
Geen chroot /enz/ /var/naam/
Met chroot /var/named/chroot/etc/ /var/named/chroot/var/named/

U kunt het configuratiebestand Named.conf gebruiken, dat standaard wordt meegeleverd. Voor gebruiksgemak zullen we echter een ander voorbeeldconfiguratiebestand gebruiken.

Een reservekopie maken van het bestand /etc/named.conf

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

Nu dat zo is back-up configuratiebestand en het originele bestand zelf is gewijzigd, gaan we verder.

# vim /etc/named.conf

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

De volgende regels zijn toegevoegd/gewijzigd.

Opties (## pad naar zonebestanden ## directory "/var/named"; ## verzoeken omleiden naar openbare DNS Google-server voor niet-lokale domeinen ## forwarders ( 8.8.8.8; ); ); ## declaratie van een directe zone, bijvoorbeeld.tst ## zone "example.tst" IN (type master; bestand "example-fz"; ## bestand voor de directe zone bevindt zich in /var/named ## allow-update ( geen; ) ; ; ## aangifte van een omgekeerde zone voor netwerk 172.16.1.0 ## zone "1.16.172.in-addr.arpa" IN (type master; bestand "rz-172-16-1"; ## bestand voor de omgekeerde zone is bevindt zich in /var /named ## allow-update ( geen; );

Zonebestanden voorbereiden

Standaard zonebestanden worden automatisch aangemaakt in /var/named of /var/named/chroot/var/named (voor chroot).

Ervan uitgaande dat de standaard zonebestanden niet aanwezig zijn, kunnen we de voorbeeldbestanden kopiëren van /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

Geweldig. Nu de standaard zonebestanden klaar zijn, maken we de onze eigen bestanden zones bijvoorbeeld.tst en netwerk 172.16.1.0. Terwijl we zonebestanden maken, moeten we het volgende onthouden.

  • Het '@'-symbool betekent NULL in zonebestanden.
  • Elke volledig gekwalificeerde domeinnaam (FQDN) eindigt met een punt '.' mail.voorbeeld.tst. Zonder punt zullen er problemen zijn.

1. Directe zone

De directe zone bevat een kaart met vertalingen van namen naar IP-adressen. Voor publieke domeinen zijn DNS-domeinen die worden gehost op hostingservices opgenomen in het directe zonebestand.

# vim /var/named/example-fz

# vim /var/named/chroot/var/named/example-fz $TTL 1D @ IN SOA ns1.example.tst. mial.voorbeeld.tst. (0; serieel 1D; vernieuwen 1H; opnieuw proberen 1W; verlopen 3H) ; minimum IN NS ns1.voorbeeld.tst. IN A 172.16.1.3 mail IN A 172.16.1.1 IN MX 10 mail.voorbeeld.tst. www IN A 172.16.1.2 ns1 IN A 172.16.1.3 ftp IN CNAME www.voorbeeld.tst.

Uitleg: Binnen een zonebestand betekent SOA het begin van de autorisatie. Dit is voltooid domeinnaam gezaghebbende naamserver. Na de volledige domeinnaam komen de contactgegevens e-mailadres. Omdat we '@' niet kunnen gebruiken [e-mailadres beveiligd], herschrijven we het e-mailadres als mial.example.tst.

  • NS: Servernaam
  • A: Een record of adresrecord is een IP-adres
  • MX: Mailwisselaar dossier. Hier gebruiken we slechts één MX met prioriteit 10. Bij meerdere MX’s kunnen we verschillende digitale prioriteiten gebruiken. Onderste nummer wint. MX 0 is bijvoorbeeld beter dan MX 1.
  • CNAME: naam erin canonieke vorm. Als een server veel services host, is het zeer waarschijnlijk dat veel namen naar één server worden omgezet. CNAME geeft aan dat de server mogelijk andere namen heeft en verwijst naar de naam in het A-record.

2. Omkeerzone

De omgekeerde zone bevat een kaart met conversies van IP-adressen naar namen. Hier creëren we een omgekeerde zone voor netwerk 172.16.1.0. In een echt domein bevindt de DNS-server van de eigenaar van het openbare IP-blok zich in het omgekeerde zonebestand.

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

# vim /var/named/chroot/var/named/rz-172-16-1 $TTL 1D @ IN SOA ns1.example.tst. sarmed.voorbeeld.tst. (0; serieel 1D; vernieuwen 1H; opnieuw proberen 1W; verlopen 3H) ; minimum IN NS ns1.voorbeeld.tst. 1 IN PTR mail.voorbeeld.tst. 2 IN PTR www.voorbeeld.tst. 3 IN PTR ns1.voorbeeld.tst.

Uitleg: De meeste parameters die in de achterwaartse zone worden gebruikt, zijn identiek aan de voorwaartse zone, op één na.

  • PTR: PTR of pointerrecord, het verwijst naar de volledig gekwalificeerde domeinnaam

Voltooiing

Nu de zonebestanden gereed zijn, gaan we de resolutie van de zonebestanden configureren.

# chgrp genaamd /var/named/*

# chgrp genaamd /var/named/chroot/var/named/*

Nu gaan we het IP instellen DNS-adres server.

# vim /etc/resolv.conf naamserver 172.16.1.3

Eindelijk kunnen we rennen DNS-service en zorg ervoor dat het wordt toegevoegd aan autorun.

# service met de naam restart # chkconfig met de naam on

DNS-testen

We kunnen dig of nslookup gebruiken om DNS te testen. Eerst zullen we de benodigde pakketten installeren.

# yum installeer bind-utils

1. Directe zonetests met behulp van dig

# dig voorbeeld.tst ;; ->>KOP<<- 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. Controleer PTR met behulp van dig

Wanneer u dig gebruikt om te testen, moet u altijd zoeken naar de status "NOERROR". Elke andere voorwaarde betekent dat er iets mis is.

# dig -x 172.16.1.1 ;; ->>KOP<<- 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. MX controleren met behulp van dig

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

Tips voor het oplossen van problemen

  1. Ik heb SELinux uitgeschakeld.
  2. Zorg ervoor dat uw firewall UDP-poort 53 niet blokkeert
  3. /var/log/messages zou nuttige informatie moeten bevatten voor het geval er iets mis is
  4. Zorg ervoor dat de eigenaar van de zonebestanden gebruiker 'named' is
  5. Zorg ervoor dat het IP-adres van de DNS-server als eerste wordt vermeld in /etc/resolv.conf
  6. Als u example.tst in een laboratoriumomgeving gebruikt, zorg er dan voor dat u de server loskoppelt van het internet, omdat example.tst een niet-bestaand domein is.

Samenvattend richt deze tutorial zich op het hosten van het example.tst-domein in een laboratoriumomgeving voor demonstratiedoeleinden. Houd er rekening mee dat dit geen handleiding is voor het maken van een openbare DNS-server, zoals een DNS-server die reageert op verzoeken van elk IP-adres. Als u een productie-DNS-server instelt, controleer dan welk beleid van toepassing is op openbare DNS. Een andere les gaat over het maken van een secundaire DNS, het beperken van de toegang tot de DNS-server en het implementeren van DNSSEC.

De Garant is een vertrouwde tussenpersoon tussen de Deelnemers tijdens de transactie.


In dit materiaal zal ik een actueel onderwerp bespreken waarmee bijna elk eerste werk met de server begint. Basisnetwerkparameters configureren in CentOS - ip-adres, dhcp, ipv6, dns, hostnaam, statische routes, netwerkkaarten en andere netwerkparameters. We zullen stap voor stap door het onderwerp gaan, van eenvoudig naar complex, waarbij we alle nuances in volgorde onderzoeken en de meest populaire vragen beantwoorden.

Netwerkinstellingen op een CentOS 7-server

De eerste keer dat we de netwerkinstellingen van een CentOS-server tegenkomen, is wanneer we de installatie uitvoeren. Op het initiële installatiescherm is er een apart item over het instellen van netwerkinterfaces:

Nadat we het hebben ingevoerd, zien we een lijst met aangesloten netwerkkaarten. Elk van hen kan worden ingeschakeld met behulp van de bijbehorende schuifregelaar (punt 1 in de afbeelding). Wanneer de interface wordt geactiveerd, ontvangt deze automatisch instellingen via DHCP. U kunt daar het resultaat van het DHCP-werk zien. Als u niet tevreden bent met deze instellingen, kunt u ze bewerken door op te klikken configureren(punt 3 op de foto). Hier kunt u ook instellen hostnaam(punt 2 op de foto):


Door het venster met aanvullende Ehernet-instellingen te openen, kunt u de naam van de netwerkinterface wijzigen, de IP-instellingen opgeven (item 1 in de afbeelding), selecteren handmatige instellingen(punt 2 op de afbeelding), toewijzen ip-adres(punt 3 op de afbeelding), installeren dns-server (punt 4 in de afbeelding) en sla de netwerkinstellingen op (punt 5 in de afbeelding):


Nadat u de overige instellingen hebt voltooid, begint de installatie. Na de installatie beschikt u over een server met de door u opgegeven netwerkinstellingen.

Laten we nu eens een andere situatie bekijken. U hebt de server en dus de netwerkconfiguratie niet gemaakt, maar nu moet u ernaar kijken of deze wijzigen. De serverconsole staat tot uw beschikking en wij zullen erin werken. Als u hebt geïnstalleerd vanuit een distributiekit minimaal en vervolgens wanneer u de netwerkinstellingen probeert te bekijken met behulp van de opdracht ifconfig in de console zie je het volgende:

Bash: ifconfig: opdracht niet gevonden

of in de Russische versie:

Bash: ifconfig-opdracht niet gevonden

Om met ifconfig en andere netwerkhulpprogramma's te kunnen werken, moet u het pakket installeren net-tools. Laten we dit doen:

# yum -y installeer net-tools.x86_64

Nu kunt u de netwerkinstellingen zien:

mtu 1500 inet 192.168.159.129 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) RX-pakketten 319 bytes 36709 (35,8 KiB) RX-fouten 0 verwijderd 0 overruns 0 frame 0 TX-pakketten 256 bytes 148817 (145,3 KiB) TX-fouten 0 verwijderd 0 overruns 0 vervoerder 0 botsingen 0 lo: vlaggen=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-pakketten 6 bytes 624 (624.0 B) RX-fouten 0 verwijderd 0 overruns 0 frame 0 TX-pakketten 6 bytes 624 (624.0 B) TX-fouten 0 verwijderd 0 overruns 0 carrier 0 botsingen 0

Als u geen extra pakket wilt installeren, kunt u een eenvoudiger commando gebruiken ip met parameters:

# ip-adres 1: lo: mtu 65536 qdisc noqueue status ONBEKENDE link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 bereik host lo valid_lft forever preferent_lft forever inet6::1/ 128 bereik host valid_lft forever preferent_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 bereik globaal dynamisch eno16777728 valid_lft 1709sec voorkeur_lft 1709sec inet6 fe80::20c:29ff:fe7d:593f/64 bereik link valid_lft forever voorkeur_lft forever

We hebben de netwerkconfiguratie gezien, laten we deze nu bewerken. Laten we zeggen dat we het IP-adres moeten wijzigen. Om dit te doen, gaat u naar de map /etc/sysconfig/network-scripts en opent u het bestand om het te bewerken ifcfg-eth0. Dit bestand heeft ongeveer de volgende inhoud:

Met behulp van de instellingen uit dit bestand krijgen we het IP-adres via DHCP. Om handmatig een statisch IP-adres te registreren, brengen we het bestand naar de volgende inhoud:

We hebben de parameters gewijzigd:

Om de wijzigingen door te voeren, moet u de netwerkinstellingen opnieuw lezen:

Netwerk opnieuw opstarten (via systemctl): [OK]

Controleer of de nieuwe netwerkconfiguratie is toegepast:

# ifconfig: eno16777728: vlaggen=4163 mtu 1500 inet 192.168.159.129 netmasker 255.255.255.0 uitzending 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-pakketten 672 bytes 71841 (70,1 KiB) RX-fouten 0 verwijderd 0 overruns 0 frame 0 TX-pakketten 572 bytes 290861 (284,0 KiB) TX-fouten 0 verwijderd 0 overruns 0 vervoerder 0 botsingen 0

Alles is in orde, de nieuwe netwerkinterface-instellingen zijn geïnstalleerd.

Netwerkinstellingen verkrijgen via DHCP

Laten we nu eens kijken naar de tegenovergestelde situatie. Stel dat op uw netwerkkaart een aantal instellingen handmatig zijn ingesteld. Maar u wilt dat uw computer als client netwerkinstellingen via DHCP ontvangt. Om dit te doen, moet u de tegenovergestelde bewerking uitvoeren als voorheen. Dat wil zeggen, open het bestand /etc/sysconfig/network-scripts/ifcfg-eth0 en verwijder daar de regels met de parameters DNS, IPADDR, PREFIX, GATEWAY en specificeer de waarde in de BOOTPROTO-parameter "dhcp". Sla het bestand op en start het netwerk opnieuw op:

# /etc/init.d/netwerk opnieuw opstarten

Vervolgens controleren wij of onze klant de instellingen via DHCP heeft ontvangen.

DNS configureren in CentOS 7

De huidige DNS-serverinstellingen in CentOS kunnen op twee plaatsen worden bekeken:

  1. In het bestand met de instellingen van de netwerkkaart ifcfg-eth0, die we eerder meerdere keren hebben bewerkt.
  2. In het bestand /etc/resolv.conf

Waarom ze nu op twee plaatsen staan, weet ik niet, maar voorheen werden de DNS-serverinstellingen in sommige distributies, ik weet niet precies welke, alleen aangegeven in resolv.conf, maar op een gegeven moment veranderde dit. En alle netwerkinstellingen werden in één bestand opgeslagen, samen met het adres, de gateway, het masker, enzovoort. Als je nu het bestand resolv.conf bewerkt en daar wat server-DNS toevoegt, dan worden deze na een herstart vervangen door de waarden uit het ifcfg-eth0-bestand.

Om de DNS-serverparameters in te stellen, moet u dus het ifcfg-eth0-netwerkinstellingenbestand bewerken en zoveel servers toevoegen als nodig is. Bijvoorbeeld als volgt:

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

Om de instellingen toe te passen, het bestand op te slaan en het netwerk opnieuw op te starten, is alles zoals gewoonlijk. Nadat de server opnieuw is opgestart, worden de DNS-instellingen naar het bestand resolv.conf geschreven

# cat /etc/resolv.conf # Gegenereerd door NetworkManager naamserver 192.168.159.2 naamserver 8.8.8.8 naamserver 8.8.4.4

Hoe ipv6 uit te schakelen in CentOS 7

Momenteel wordt het protocol actief gebruikt ipv6 nee, en het is niet nodig bij normaal werk. Hoewel we al jaren bang zijn dat er vrijwel geen gratis IP-adressen meer zijn, zijn er in werkelijkheid nog steeds genoeg voor iedereen. Om praktische redenen is ipv6 momenteel dus niet nodig op de server en kan worden uitgeschakeld.

Voordat u ipv6 uitschakelt, moet u, voor het geval dat, controleren welke programma's het in hun werk gebruiken. Dit is nodig om fouten in de werking ervan te voorkomen door eerst ipv6 uit te schakelen in de configuraties. Om te zien welke programma's aan de ipv6-interface hangen, gebruikt u de opdracht netstat:

# netstat -tulnp Actieve internetverbindingen (alleen servers) Proto Recv-Q Send-Q Lokaal adres Buitenlands adres Staat PID/programmanaam 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:* LUISTER 1333/sshd tcp6 0 0::1:25:::* LUISTER 2317/master tcp6 0 0:::22:::* LUISTER 1333/sshd udp 0 0 0.0.0.0:49252 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-daemon: r udp 0 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

Alle lijnen met ::: zijn IPv6-protocol. In mijn geval zijn het sshd, postfix en chronyd. Laten we ipv6 voor hen uitschakelen en alleen ipv4 overhouden.

Laten we beginnen met sshd. Open het instellingenbestand /etc/ssh/sshd_config en zoek de regels:

#AddressFamily elk #ListenAddress 0.0.0.0

Laten we ze verwijderen en veranderen. Het zou er zo uit moeten zien:

AdresFamilie inet Luisteradres 0.0.0.0

Open nu het postfix-instellingenbestand /etc/postfix/main.cf. We zoeken daar de lijn:

#inet_protocols = alles

Wijzigen naar:

Inet_protocols = ipv4

Schakel ipv6 uit in chronyd. Om dit te doen, maakt u het bestand /etc/sysconfig/ chronisch en voeg de regel toe:

OPTIES=-4

Nu schakelen we ipv6 uit in CentOS. Open het bestand /etc/ sysctl.conf en voeg daar de regels toe:

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

Het bestand /etc/sysconfig/ bewerken netwerk, en voegt daar toe:

NETWORKING_IPV6=geen IPV6INIT=nee

Start opnieuw op en controleer het resultaat:

# reboot # ifconfig eno16777728: flags=4163 mtu 1500 inet 192.168.159.129 netmasker 255.255.255.0 uitzending 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) RX-pakketten 2301 bytes 243024 (237,3 KiB) fouten 0 verwijderd 0 overschrijdt 0 frame 0 TX-pakketten 2138 bytes 1327955 (1,2 MiB) TX-fouten 0 weggevallen 0 overschrijdingen 0 vervoerder 0 botsingen 0 lo: vlaggen=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 loop txqueuelen 0 (Local Loopback) RX-pakketten 0 bytes 0 (0,0 B) RX-fouten 0 verwijderd 0 overruns 0 frame 0 TX-pakketten 0 bytes 0 (0,0 B) TX-fouten 0 verwijderd 0 overruns 0 vervoerder 0 botsingen 0

Er wordt nergens melding gemaakt van adressen in inet6- en ipv6-formaat. Alles is dus in orde, we hebben ipv6 uitgeschakeld in CentOS. Laten we nu de lijst met open poorten bekijken:

# netstat -tulnp Actieve internetverbindingen (alleen servers) Proto Recv-Q Send-Q Lokaal adres Buitenlands adres Staat PID/programmanaam 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:* LUISTER 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:* 697/avahi-daemon: r udp 0 0 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

Alle poorten zijn ipv4. Alles is in orde, onze taak is volbracht.

Hoe de hostnaam te wijzigen in CentOS 7

Standaard plaatst CentOS tijdens de installatie de hostnaam localhost.lokaaldomein. Als u het nog niet heeft gewijzigd, kunt u dit later doen. Laten we eerst eens kijken welke hostnaam u heeft ingesteld. Dit gebeurt met behulp van de opdracht in de console hostnaam, of gebruiken geen naam:

# hostnaam localhost.localdomain # uname -n localhost.localdomain

Om de hostnaam in CentOS te wijzigen, moet u het bestand bewerken /etc/hostnaam. Laten we de inhoud ervan bekijken:

# cat /etc/hostnaam localhost.localdomain

Laten we dit bestand bewerken om de hostnaam te wijzigen:

# mcedit /etc/hostnaam centos.localhost

Sla het bestand op en controleer:

# hostnaam centos.localhost

Er is een kant-en-klaar commando dat onmiddellijk de vereiste servernaam instelt:

# hostnamectl set-hostnaam centos.localhost

Alles is in orde, we hebben de hostnaam gewijzigd in centos.localhost

Stel de standaardgateway in CentOS 7 in

Als u om welke reden dan ook de standaardgateway niet hebt ingesteld bij het instellen van de netwerkparameters, kunt u dit handmatig doen. Laten we eerst eens kijken welke standaardgateway momenteel in het systeem is geïnstalleerd:

# netstat -nr Kernel IP-routeringstabel Bestemming Gateway Genmask Vlaggen MSS Venster 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.154.70.0 0.0.0.0 255.255.254.0 0 0 0 eth0 192.168.1.0 10.8.0.2 255.255 255,0 UG 0 0 0 tun0

De regel met Destination 0.0.0.0 specificeert het gateway-adres. Als u deze niet heeft, of als er een verkeerde gateway is ingesteld in het veld Gateway, kunt u dit wijzigen. Stel de standaardgateway in:

route voeg standaard gw 192.168.0.1 toe

Netwerkbeheer in CentOS 7

CentOS heeft standaard een service die alle netwerkverbindingen beheert - Netwerkmanager. Het bewaakt voortdurend de netwerkinstellingen en brengt met behulp van een configuratiebeheerdaemon de juiste wijzigingen aan in actieve netwerkapparaten. Het ondersteunt standaard ifcfg-configuratiebestanden.

Lijst met netwerkhulpprogramma's en -toepassingen:

Gebruikers hebben geen rechtstreekse interactie met NetworkManager op CentOS; zij gebruiken hiervoor grafische hulpprogramma's en opdrachtregelprogramma's. Eén zo'n hulpprogramma is systeemconfiguratie netwerk tui.

Systeemconfiguratie netwerktui in CentOS 7

Om de netwerkinstellingen in CentOS te beheren, kunt u een grafisch hulpprogramma gebruiken nmtui. Het is heel eenvoudig om de aanwezigheid ervan in het systeem te controleren. Voer het gewoon uit in de console:

Als je het niet hebt geïnstalleerd, is het heel eenvoudig te repareren. Installeren in CentOS systeemconfiguratie netwerktui:

# yum installeer NetworkManager-tui

Door te gebruiken tui u kunt alle netwerkinstellingen opgeven die we eerder hebben gedaan via de opdrachtregel en het bewerken van configuratiebestanden. Laten we dit doen. Roep het programma op:

Selecteer het eerste artikel Bewerk een verbinding, selecteer vervolgens de netwerkinterface en klik op “Bewerken”:

Hier kunnen we de naam van de netwerkkaart, het mac-adres wijzigen, het type netwerkinstellingen opgeven - handmatig of DHCP, handmatig het ip-adres, gateway-adres, dns-server opgeven, routes toevoegen en enkele andere instellingen:


Nadat het bewerken is voltooid, slaat u de instellingen op door op OK te klikken.
Als u het item op het eerste scherm van het hulpprogramma selecteert Stel de systeemhostnaam in, kunt u snel de hostnaam opgeven. Het resultaat zal hetzelfde zijn als voorheen in de console.

Hoe u een statische route toevoegt in CentOS 7

Om de routering op CentOS te beheren, moet u mogelijk een statische route toevoegen. Dit is vrij eenvoudig te doen met behulp van de consoleopdracht. Laten we eerst de bestaande routes controleren met behulp van netstat:

# netstat -nr Kernel IP-routingtabel Bestemming Gateway Genmask Vlaggen MSS Venster irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 eno1677772 8

In dit geval hebben we één route voor het adres 0.0.0.0/0.0.0.0; de gateway is 192.168.159.2, wat ook de standaardgateway is. Dat wil zeggen dat er in wezen geen statische routes zijn. Laten we er een toevoegen.

Stel dat we een subnet 192.168.8.0 hebben, masker 255.255.255.0, verkeer naar dit subnet wordt gerouteerd door de gateway 192.168.159.5. Voeg een route toe:

# route toevoegen -net 192.168.8.0/24 gw 192.168.159.5

Controleer of de toegevoegde route is verschenen routeringstabel:

# netstat -nr Kernel IP-routeringstabel Bestemming Gateway Genmask Vlaggen MSS Venster 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.159.5 255.255.255.0 U G 0 0 0 16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 0 eno16777728

Alles is in orde, de route is toegevoegd. Maar na het opnieuw opstarten wordt deze statische route verwijderd. Om dit te voorkomen en om de toegevoegde routes op te slaan, moet je ze naar een speciaal bestand schrijven. Maak in de map /etc/sysconfig/network-scripts een bestand met de naam route-eth0 de volgende inhoud:

# mcedit /etc/sysconfig/network-scripts/route-eth0 192.168.8.0/24 via 192.168.159.5

Start opnieuw op en controleer of de route aanwezig is:

# reboot # netstat -nr Kernel IP-routeringstabel Bestemming Gateway Genmask Vlaggen MSS Venster 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.159.5 255.255.25 5.0 UG 0 0 0 eno16777728 192.168.159.0 0,0 .0,0 255.255.255.0 U 0 0 0 eno16777728

Alles is in orde, de statische route is toegevoegd.

Hoe u 2 IP-adressen op één interface configureert

Als u moet configureren 2 IP adressen op één interface in CentOS, dan is dit vrij eenvoudig. Laten we de opdracht ifconfig gebruiken. Laten we eerst de lijst met netwerkinterfaces bekijken:

# ifconfig eno16777728: vlaggen=4163 mtu 1500 inet 192.168.159.129 netmasker 255.255.255.0 uitzending 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) RX-pakketten 254 bytes 30173 (29,4 KiB) RX-fouten 0 verwijderd 0 overschrijdt 0 frame 0 TX pakketten 204 bytes 27658 (27,0 KiB) TX-fouten 0 weggevallen 0 overschrijdingen 0 vervoerder 0 botsingen 0 lo: vlaggen=73

Laten we nog een IP-adres 192.168.159.120 toevoegen aan de eno16777728-interface:

# ifconfig eno16777728:1 192.168.159.120 omhoog

Laten we eens kijken wat er is gebeurd:

# ifconfig eno16777728: vlaggen=4163 mtu 1500 inet 192.168.159.129 netmasker 255.255.255.0 uitzending 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) RX-pakketten 254 bytes 30173 (29,4 KiB) RX-fouten 0 verwijderd 0 overschrijdt 0 frame 0 TX pakketten 204 bytes 27658 (27,0 KiB) TX-fouten 0 weggevallen 0 overschrijdingen 0 vervoerder 0 botsingen 0 eno16777728:1: vlaggen=4163 mtu 1500 inet 192.168.159.120 netmasker 255.255.255.0 uitzending 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) lo: vlaggen=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 loop txqueuelen 0 (Local Loopback) RX-pakketten 11 bytes 940 (940.0 B) RX-fouten 0 verwijderd 0 overruns 0 frame 0 TX-pakketten 11 bytes 940 (940.0 B) TX-fouten 0 verwijderd 0 overruns 0 vervoerder 0 botsingen 0

Alles is in orde, we hebben een tweede IP-adres aan dezelfde interface toegevoegd. Maar na een herstart wordt het extra adres niet opgeslagen. Om het op te slaan, moet u een interface-instellingenbestand maken in de map /etc/sysconfig/network-scripts

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

Sla het bestand op, start opnieuw op en controleer wat er is gebeurd. Het tweede IP-adres moet aanwezig zijn.

Een netwerkherstart uitvoeren in CentOS 7

Ik heb dit onderwerp al eerder besproken, maar voor het geval dat we het afzonderlijk zullen herhalen. Stel dat u enkele wijzigingen heeft aangebracht in uw netwerkconfiguratie. Hoe kan ik deze instellingen toepassen zonder de server opnieuw op te starten? Heel eenvoudig. Om het netwerk in CentOS opnieuw op te starten, gebruikt u gewoon de opdracht:

# /etc/init.d/netwerk opnieuw opstarten

De NetworkManager-service leest alle netwerkinstellingen opnieuw en past de wijzigingen toe.

Hoe u het IP-adres kunt achterhalen in CentOS 7

Om snel het huidige IP-adres in CentOS te achterhalen, moet u de volgende opdrachten gebruiken:

# ifconfig | grep inet inet 192.168.159.129 netmasker 255.255.255.0 uitzending 192.168.159.255 inet 127.0.0.1 netmasker 255.0.0.0

Of de tweede optie voor het bepalen van het lokale IP-adres:

# ip-adres | grep inet inet 127.0.0.1/8 bereik host lo inet 192.168.159.129 /24 brd 192.168.159.255 bereik globaal eno16777728

Met beide opdrachten kunt u snel uw IP-adres achterhalen.

Wat te doen als CentOS de netwerkkaart niet ziet?

U hebt de server geïnstalleerd, opgestart en ontdekt dat er geen enkele netwerkkaart in het systeem zit. Wat te doen in dit geval? Kijk eerst naar de uitvoer van het dmesg-commando en zoek daar naar een geheugen van uw kaart. Misschien zit het in het systeem, maar is het niet geactiveerd. Je kunt het activeren via nmtui, wat ik hierboven vertelde.

Er is een menu-item Verbinding activeren, moet u erin gaan en uw netwerkkaart activeren. Hierna kunt u het configureren.

Als uw netwerkkaart niet in het systeem zit, moet u op internet zoeken naar informatie over deze netwerkkaart per model. Misschien zijn er stuurprogramma's voor in de repository's. Dit is een vrij veel voorkomende situatie. Meestal worden stuurprogramma's gevonden en moeten deze correct worden geïnstalleerd.

Er is nog steeds een mogelijkheid dat u uw kaart niet ziet wanneer u de ifconfig-opdracht uitvoert als er geen netwerkkabel op deze kaart is aangesloten. Om er zeker van te zijn dat u alle interfaces ziet, moet u de schakeloptie -a gebruiken:

# ifconfig -a

Er is een andere manier om naar een netwerkkaart in het systeem te zoeken. Installeer het pakket pciutils:

# yum -y installeer pciutils

En kijk naar de uitvoer van het commando:

#lspci | grep Ethernet

Als de netwerkkaart door het systeem wordt gezien, zou er zoiets als dit moeten zijn:

02:00.0 Ethernet-controller: Intel Corporation 82545EM Gigabit Ethernet-controller (koper) (rev 01)

Als de uitgang leeg is, is de netwerkkaart niet gedefinieerd.

Wat te doen als het netwerk niet beschikbaar is op CentOS?

Stel dat u een adres probeert te pingen, bijvoorbeeld 8.8.8.8, en u ontvangt een antwoord dat het netwerk niet beschikbaar is:

#ping 8.8.8.8

En als antwoord krijg je:

Verbinden: Netwerk is niet beschikbaar

Deze situatie kan zich voordoen als er geen standaardgateway is geïnstalleerd. Je kunt het toevoegen met het commando:

# route voeg standaard gw 192.168.0.1 toe

Als het probleem niet bij de gateway ligt, moet u de instellingen van de netwerkadapters controleren. Als er geen actieve adapter is, krijgt u ook een melding dat het netwerk niet werkt. Het is noodzakelijk dat ten minste één netwerkadapter correct is geconfigureerd op het systeem. Hoe u dit moet doen, staat hierboven beschreven.

Gebruik traceroute van netwerkhulpprogramma's om CentOS in te graven

Om netwerkverbindingen in CentOS te diagnosticeren, is het handig om speciale hulpprogramma's te gebruiken. Maar als u de minimale installatie hebt gebruikt, staan ​​ze hoogstwaarschijnlijk niet op het systeem. Bijvoorbeeld het populaire hulpprogramma traceroute Wanneer u het probeert te starten, wordt het volgende bericht weergegeven:

# traceroute ya.ru bash: traceroute: opdracht niet gevonden

Het moet afzonderlijk van de repository worden geïnstalleerd:

# yum -y installeer traceroute

Hetzelfde geldt voor het populaire programma graven om te werken met DNS-servers en -records:

# dig ya.ru bash: dig: commando niet gevonden

Om dit netwerkhulpprogramma te laten werken, moet u het pakket installeren bind-utils:

# yum -y installeer bind-utils

802.1Q VLAN configureren in CentOS 7

Om een ​​getagde interface op CentOS te verhogen, moet je eerst de kernelondersteuning controleren 8021q:

#modprobe8021q

Als er geen foutmeldingen zijn, is alles in orde, de module is geladen. Als de module niet wordt gevonden, moet u de kernelmodules opnieuw opbouwen, zodat ondersteuning voor de vereiste module mogelijk wordt. Laten we voor de zekerheid even controleren of de module is geladen:

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

Alles is in orde, de 8021q-module is geladen, laten we deze toevoegen aan het opstarten:

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

Maak nu een configuratiebestand voor vlan in /etc/sysconfig/network-scripts:

# mcedit ifcfg-eth0.2000 VLAN=ja DEVICE=eth0.2000 BOOTPROTO=statisch ONBOOT=ja TYPE=Vlan IPADDR=192.168.100.2 NETMASKER=255.255.255.0

Ik vestig uw aandacht op wat vetgedrukt is. In alle instructies op internet die ik tegenkwam, werd deze parameter aangegeven als TYPE=Ethernet, maar met deze instelling kwam de interface met vlan niet omhoog, er verscheen een foutmelding:

Fout: geen apparaat gevonden voor verbinding "Systeem eth0.2000".

Pas nadat ik het had gerepareerd, werkte alles zoals het zou moeten. Bewaar en activeer dus de interface:

# ifup eth0.2000 Verbinding succesvol geactiveerd (D-Bus actief pad: /org/freedesktop/NetworkManager/ActiveConnection/7)

Onze vlan controleren:

# ip l ls 1: lo: mtu 65536 qdisc noqueue-status ONBEKENDE modus STANDAARD link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc pfifo_fast state UP-modus STANDAARD 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 status UP-modus STANDAARD link/ether 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff

Alles is in orde, de getagde interface is actief. Naar analogie kunt u nog meer vergelijkbare interfaces maken, en niet vergeten hun namen en adressen te wijzigen.

Dit is het einde van mijn omvangrijke materiaal over het onderwerp netwerkconfiguratie in CentOS. Ik ontvang graag commentaar, opmerkingen en correcties. Waarschijnlijk wel. Door dergelijke materialen te maken, leer ik in de eerste plaats mezelf en verbeter ik mijn kennis vakgebied. Er kunnen hier ergens fouten en typefouten staan, hoewel ik alles op live systemen controleer bij het schrijven van handleidingen, maar onnauwkeurigheden en typefouten zijn nog steeds mogelijk.

Online cursus "Linux Beheerder"

Als u wilt leren hoe u zeer beschikbare en betrouwbare systemen kunt bouwen en onderhouden, raad ik u aan kennis te maken met online cursus “Linux Beheerder” in OTUS. De cursus is niet voor beginners; voor toelating heb je wel toegang nodig basiskennis via netwerken en Linux-installatie naar de virtuele machine. De training duurt 5 maanden, waarna succesvolle afgestudeerden interviews met partners kunnen ondergaan. Test jezelf tijdens de toelatingstest en bekijk het programma voor meer details.

In eenvoudige woorden. Gebruikte softwareversies: CentOS 7, BINВ 9.

De server voorbereiden

Installeer alle updates:

Installeer het tijdsynchronisatiehulpprogramma:

# yum installeer ntpdate

Een tijdzone instellen:

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

* V in dit voorbeeld Moskou-tijd is geselecteerd.

En synchroniseer de tijd met externe server:

# ntpdate ru.pool.ntp.org

Open de poort in de firewall:

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

En lees de instellingen nog eens door firewall:

# firewall-cmd --herladen

BIND installeren en uitvoeren

We installeren de DNS-server met het volgende commando:

# yum installeren binden

Autostart toestaan:

# systemctl enable benoemd

Laten we de naamservice starten:

# systemctl start genoemd

En we controleren of het correct werkt:

# systemctl-status genoemd

Basis DNS-serverconfiguratie

Open het bindconfiguratiebestand om te bewerken:

# vi /etc/named.conf

en bewerk het volgende:

luisterpoort 53 ( 127.0.0.1; localhost; 192.168.166.155; );
...
allow-query (elke;);

* Waar 192.168.166.155 — IP-adres van onze NS-server waar deze verzoeken zal ontvangen; allow-query staat iedereen toe verzoeken uit te voeren, maar om veiligheidsredenen kunt u de toegang beperken specifiek netwerk bijvoorbeeld in plaats van elk schrijven 192.168.166.0/24 .

Voer de opdracht uit om de instellingen toe te passen:

# systemctl restart genoemd

Om de functionaliteit van de server te controleren vanaf een andere computer op het netwerk (bijvoorbeeld op Windows), voert u de opdracht uit:

> nslookup-site 192.168.166.155

* met dit commando proberen we de IP-adressen van de site te achterhalen website via server 192.168.166.155 .

Het zou er ongeveer zo uit moeten zien:

Beschrijving van globale opties

De volgende instellingen zijn globaal voor DNS en alle geconfigureerde zones. Ze zijn ingepland configuratiebestand benoemd.conf, opties() richtlijn.

Opties Beschrijvingen
map Specificeert de werkmap van de bindserver. Indien niet gespecificeerd, /var/named
expediteurs Geeft een overzicht van de servers waarnaar het verzoek wordt verzonden als onze server het niet kan verwerken (er is geen overeenkomstige zone).
vooruit Overschrijft hoe het verzoek wordt verwerkt. Accepteert twee waarden - ALLEEN of EERST. De eerste geeft aan dat de server niet zal proberen overeenkomsten te vinden tussen lokale zones. Ten tweede zal de server het verzoek eerst omleiden en als het niet succesvol wordt verwerkt, zoeken naar overeenkomsten in de interne database.
luister mee Op welke interfaces zal binden luisteren?
toestaan-overdracht Indicatie van de lijst met servers waarnaar zoneoverdrachten zijn toegestaan ​​(replicatie naar secundaire NS's)
allow-query Lijst met knooppunten van waaruit toegang tot de server is toegestaan. Indien niet gespecificeerd, is alles toegestaan.
toestaan-melding Hiermee kunnen de vermelde servers meldingen verzenden over wijzigingen in zone-instellingen.
allow-recursie Specificeert een lijst met hosts waarvoor recursieve zoekopdrachten, de rest mag iteratief zijn. Indien niet gespecificeerd, recursief voor iedereen.

Voorbeeld van globale instellingen

opties (
map "/var/named";
expediteurs ( 192.168.0.10; 77.88.8.8; 8.8.8.8; );
meeluisteren (127.0.0.1; localhost; 192.168.166.155; );
overdracht toestaan ​​( 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-melding ( 192.168.0.15; );
allow-recursie (elke;);
}

bindzones

Om naar overeenkomsten te kunnen zoeken in eigen databank domeinen, moet u zones maken en configureren. De volgende zonetypen bestaan:

  1. Primair, ook bekend als meester, ook wel bekend als lokaal. Een database die wordt bijgewerkt en bewerkt op de huidige server. Meer informatie over het configureren van de primaire bindzone.
  2. Secundair of slaaf. De database kopieert de instellingen van de primaire zone naar een andere server. Meer informatie over het instellen van een secundaire bindingszone.
  3. Stomp of stomp. Slaat alleen NS-records op, volgens welke alle verzoeken worden overgedragen naar de juiste NS-servers.
  4. Caching of hint. Er worden geen gegevens op het netwerk opgeslagen, alleen de resultaten van reeds verwerkte verzoeken om de reacties op herhaalde verzoeken te versnellen.

Problemen oplossen met behulp van logbestanden

Standaard slaat de Bind-server logboeken op in een bestand
/var/named/data/named.run.

Om het continu te bekijken, voert u de volgende opdracht in:

staart /var/named/data/named.run

Het niveau van de logdetails kan worden geconfigureerd in het configuratiebestand:

loggen (
kanaal default_debug (
bestand "data/named.run";
ernst dynamisch;
};
};

* Waar bestand— pad naar het logbestand; ernst— niveau van gevoeligheid voor opkomende gebeurtenissen. Mogelijk de volgende opties voor ernst:

  • kritisch- kritische fouten.
  • fout— fouten en hoger (kritiek).
  • waarschuwing- waarschuwingen en hoger. Waarschuwingen duiden niet op problemen met de service; dit zijn gebeurtenissen die tot fouten kunnen leiden, dus u mag deze niet negeren.
  • kennisgeving- meldingen en hoger.
  • informatie– informatie.
  • debuggen- foutopsporing (gedetailleerd logboek).
  • dynamisch- dezelfde foutopsporing.