Ćwiczenie 4
DNS (Domain Name System) to hierarchiczny system tłumaczący czytelne dla człowieka nazwy domenowe (jak www.google.com) na adresy IP (np. 142.250.185.46), które są zrozumiałe dla komputerów. Działa jak „książka telefoniczna Internetu”, umożliwiając użytkownikom korzystanie z łatwych do zapamiętania nazw zamiast numerycznych adresów IP. System DNS jest rozproszony globalnie i składa się z wielu serwerów organizowanych w hierarchię od serwerów głównych (root), przez serwery TLD (.com, .pl), aż po lokalne serwery DNS.
🔧 Instalacja roli DNS w Windows Server
Metoda 1: Server Manager
1
Uruchom Server Manager → Manage → Add Roles and Features
Uruchom Server Manager → Manage → Add Roles and Features
2
Wybierz Role-based or feature-based installation
Wybierz Role-based or feature-based installation
3
Wybierz serwer docelowy
Wybierz serwer docelowy
4
Zaznacz DNS Server → potwierdź dodanie funkcji → Install
Zaznacz DNS Server → potwierdź dodanie funkcji → Install
Metoda 2: PowerShell
# Instalacja roli DNS
Install-WindowsFeature -Name DNS -IncludeManagementTools# Weryfikacja instalacjiGet-WindowsFeature -Name DNS
✅ Wskazówka: DNS jest często instalowany automatycznie podczas awansowania serwera do kontrolera domeny (Active Directory).
🗂️ Tworzenie stref DNS
Rodzaje stref DNS
| Typ strefy | Opis | Zastosowanie |
|---|---|---|
| Forward Lookup Zone | Tłumaczy nazwy na adresy IP | www.firma.local → 192.168.1.10 |
| Reverse Lookup Zone | Tłumaczy adresy IP na nazwy | 192.168.1.10 → www.firma.local |
| Primary Zone | Główna kopia strefy (zapis/odczyt) | Główny serwer DNS |
| Secondary Zone | Kopia tylko do odczytu | Serwery zapasowe DNS |
| Stub Zone | Tylko rekordy NS i SOA | Delegacja do innych domen |
Tworzenie Forward Lookup Zone
1
Otwórz DNS Manager (Tools → DNS)
Otwórz DNS Manager (Tools → DNS)
2
Rozwiń nazwę serwera → kliknij prawym na Forward Lookup Zones → New Zone…
Rozwiń nazwę serwera → kliknij prawym na Forward Lookup Zones → New Zone…
3
Wybierz typ strefy:
Wybierz typ strefy:
- Primary zone – dla głównego serwera DNS
- Zaznacz „Store the zone in Active Directory” (jeśli DC)
4
Wprowadź nazwę strefy, np. firma.local
Wprowadź nazwę strefy, np. firma.local
5
Wybierz opcje aktualizacji dynamicznych:
Wybierz opcje aktualizacji dynamicznych:
- Allow only secure dynamic updates (zalecane dla AD)
- Allow both non-secure and secure dynamic updates
- Do not allow dynamic updates
# PowerShell - Tworzenie Forward Lookup Zone
Add-DnsServerPrimaryZone -Name "firma.local" `
-ReplicationScope "Forest" `
-DynamicUpdate "Secure"# WeryfikacjaGet-DnsServerZone -Name „firma.local”
Tworzenie Reverse Lookup Zone
1
Kliknij prawym na Reverse Lookup Zones → New Zone…
Kliknij prawym na Reverse Lookup Zones → New Zone…
2
Wybierz Primary zone i opcje AD (jeśli dotyczy)
Wybierz Primary zone i opcje AD (jeśli dotyczy)
3
Wybierz IPv4 Reverse Lookup Zone
Wybierz IPv4 Reverse Lookup Zone
4
Wprowadź Network ID, np. 192.168.1
Wprowadź Network ID, np. 192.168.1
# PowerShell - Reverse Lookup Zone
Add-DnsServerPrimaryZone -NetworkID "192.168.1.0/24" `
-ReplicationScope "Forest" `
-DynamicUpdate "Secure"📝 Typy rekordów DNS
🗂️ Strefa: firma.local
A
www → 192.168.1.10
www → 192.168.1.10
AAAA
www → 2001:db8::1
www → 2001:db8::1
CNAME
ftp → www.firma.local
ftp → www.firma.local
MX
mail → mail.firma.local (Priorytet: 10)
mail → mail.firma.local (Priorytet: 10)
PTR
192.168.1.10 → www.firma.local
192.168.1.10 → www.firma.local
SRV
_ldap._tcp → dc1.firma.local:389
_ldap._tcp → dc1.firma.local:389
| Typ rekordu | Opis | Przykład |
|---|---|---|
| A | Mapuje nazwę hosta na adres IPv4 | www → 192.168.1.10 |
| AAAA | Mapuje nazwę hosta na adres IPv6 | www → 2001:db8::1 |
| CNAME | Alias – wskazuje na inną nazwę | ftp → www.firma.local |
| MX | Serwer pocztowy dla domeny | mail.firma.local (priorytet 10) |
| PTR | Odwrotne mapowanie IP → nazwa | 192.168.1.10 → www.firma.local |
| NS | Serwer nazw dla strefy | ns1.firma.local |
| SRV | Lokalizacja usług | _ldap._tcp → dc1.firma.local |
| SOA | Informacje o strefie i autorytecie | Automatycznie tworzony |
| TXT | Tekstowe informacje | SPF, DKIM dla poczty |
➕ Dodawanie rekordów DNS
Dodawanie rekordu A (Host)
1
W DNS Manager rozwiń strefę firma.local
W DNS Manager rozwiń strefę firma.local
2
Kliknij prawym w pustym miejscu → New Host (A or AAAA)…
Kliknij prawym w pustym miejscu → New Host (A or AAAA)…
3
Wprowadź dane:
Wprowadź dane:
- Name: www
- IP address: 192.168.1.10
- Zaznacz „Create associated pointer (PTR) record”
# PowerShell - Dodawanie rekordu A
Add-DnsServerResourceRecordA -Name "www" `
-ZoneName "firma.local" `
-IPv4Address "192.168.1.10" `
-CreatePtr# WeryfikacjaGet-DnsServerResourceRecord -ZoneName „firma.local” -Name „www”
Dodawanie rekordu CNAME (Alias)
1
Kliknij prawym → New Alias (CNAME)…
Kliknij prawym → New Alias (CNAME)…
2
Wprowadź:
Wprowadź:
- Alias name: ftp
- FQDN: www.firma.local
# PowerShell - CNAME
Add-DnsServerResourceRecordCName -Name "ftp" `
-ZoneName "firma.local" `
-HostNameAlias "www.firma.local"Dodawanie rekordu MX (Mail Exchange)
1
Kliknij prawym → New Mail Exchanger (MX)…
Kliknij prawym → New Mail Exchanger (MX)…
2
Wprowadź:
Wprowadź:
- Host or child domain: (puste dla @)
- Mail server: mail.firma.local
- Priority: 10 (niższy = wyższy priorytet)
# PowerShell - MX Record
Add-DnsServerResourceRecordMX -Name "." `
-ZoneName "firma.local" `
-MailExchange "mail.firma.local" `
-Preference 10🔄 Proces rozwiązywania nazw DNS
Zapytanie: www.firma.local
💻1. Klient
Sprawdza cache lokalny
→
🖥️2. DNS Server
Sprawdza swoją strefę/cache
Sprawdza swoją strefę/cache
✅3. Odpowiedź
192.168.1.10
192.168.1.10
←
💾Cache
Zapisuje na czas TTL
Zapisuje na czas TTL
🔀 Forwarders – Przekazywanie zapytań
💡 Co to są Forwarders?
Forwarders to serwery DNS, do których Twój serwer przekazuje zapytania o domeny zewnętrzne (np. google.com). Zamiast samemu odpytywać Root Servers, Twój DNS przekazuje zapytanie do forwardera (np. 8.8.8.8).
Forwarders to serwery DNS, do których Twój serwer przekazuje zapytania o domeny zewnętrzne (np. google.com). Zamiast samemu odpytywać Root Servers, Twój DNS przekazuje zapytanie do forwardera (np. 8.8.8.8).
Konfiguracja Forwarders
1
W DNS Manager kliknij prawym na nazwę serwera → Properties
W DNS Manager kliknij prawym na nazwę serwera → Properties
2
Przejdź do zakładki Forwarders
Przejdź do zakładki Forwarders
3
Kliknij Edit i dodaj adresy IP serwerów DNS:
Kliknij Edit i dodaj adresy IP serwerów DNS:
- Google DNS: 8.8.8.8, 8.8.4.4
- Cloudflare: 1.1.1.1, 1.0.0.1
- ISP DNS: Adresy od dostawcy internetu
# PowerShell - Dodawanie Forwarders
Add-DnsServerForwarder -IPAddress "8.8.8.8"
Add-DnsServerForwarder -IPAddress "8.8.4.4"# Sprawdzenie forwardersGet-DnsServerForwarder
Twój DNS Server
192.168.1.2
192.168.1.2
⬇️
Forwarder
Google DNS: 8.8.8.8
Google DNS: 8.8.8.8
⬇️
Internet
Rozwiązuje www.google.com
Rozwiązuje www.google.com
🔐 Conditional Forwarders
📌 Zastosowanie:
Używane gdy masz wiele domen/lokalizacji i chcesz kierować zapytania o konkretną domenę do konkretnego serwera DNS.
Używane gdy masz wiele domen/lokalizacji i chcesz kierować zapytania o konkretną domenę do konkretnego serwera DNS.