Услугата DNS във Windows Сървър 2016

DNS (Domain Name System). Това е услуга отговаряща за преобразуването на имената в IP адреси и обратно, от IP адреси в имена. Наложила се е като услуга, защото човек по-лесно запомня имена а не числа. Да разгледаме едно име примерно www.core.tlan.net.. Името в DNS-a се разглежда отзад напред. Започва с: - . е основния домейн. Те са няколко и се водят за нулеви (на най-високо ниво). Още се наричат root домейни. - net е следващия домейн в йерархията. Root домейна има няколко под домейна. Примерно: com, net, bg, org и т.н. Най-често това деление е или организационно или по страни. Пак за пример: bg означава домейни в българия, com са домейни за компании. Това са домейни от 1 ниво. - Следват домейните от второ ниво. Това са домейни указващи самия човек или организация. Пример: microsoft.com. Това е домейна на компанията Microsoft. - Следа домейн 3-то ниво. Пример: mail.microsoft.com. Това е пощенски сървър на Microsoft. В случая е хост но може и да е под домейн. В същата логика може да се навлиза в под домейни на 4, 5 и т.н домейни. Как работи всичко това. За пример търсим да се свържем с core.tlan.net - Първоначално Клиента се обръща към собствения си компютър да види има ли името което търси в кеша си. Ако го няма прави рекурсивен въпрос към сървъра който си е указал да е DNS. - сървъра по същата логика прави проверка първо в кеша си и ако няма отговор тогава се обръща към корена на домейна с итеративен въпрос. - root домейна ако не знае, казва на сървъра да провери в .net, като указва към кое IP да се обърне. - сървъра на клиента прави интерактивен въпрос към .net. Ако и .net не знае казва да провери в tlan.net. - сървъра изпраща наново интерактивен въпрос към tlan.net. Ако има такъв запис то сървъра получава отговор че за core.tlan.net отговаря IP еди-кое си. - Тогава сървъра казва на клиента, за core.tlan.net се обърни към IP …. Следващия важен въпрос е дадени зони как са дефинирани в определен домейн. Зоните могат да бъдат Primary и Secondary. Това се прави с цел намаляване натовареността на Primary зоната (сървъра). Primary може да се редактира докато Secondary може само да чете. Промените се правят на Primary, а промените се получават автоматично в Secondary. В подробности няма да влизаме в процеса на работа ще се сблъскаме и ще се разбере. Време е за малко практика. За начало да инсталираме DNS сървъра от ролите.

Pic1
Pic2
Pic3
Pic4
Pic5
Pic6
Pic7
Pic8
Pic9
Pic10
Pic11

Изчакваме инсталацията и натискаме бутона Close за да затворим прозореца. След инсталиране на ролята да я разгледаме.

Pic12
Pic13

В услугата DNS на core има два раздела, Forward Lookup Zones и Reverse Lookup Zones. Тези зони отговаря за преобразуването съответно на имената в IP адрес, а Reverse Lookup Zones обратно, за преобразуването на IP адреси в имена. В примерите ще се разбере. Да започнем с Forward Lookup Zones:

Pic14

Избираме New Zone…

Pic15
Pic16

Предлага да изберем Primary zone или Secondary zone. Има още и Stub zone но за нея ще стане на въпрос малко по-късно. Да се върнем на избора. В случая ще изберем Primary zone защото това е първичен DNS сървър. Нямаме бекъп затова за сега Secondary zone не ни интересуват.

Pic17

Зоната ще се казва tlan.net. В реалност такава зона има вече дефинирана в Интернет пространството. Тази ще я направим да действа само за локалната мрежа. Или по друг начин казано компютрите от локалната мрежа няма да знаят за истинския домейн tlan.net, а само за този който ще опишем.

Pic18

Предлага къде да съхраним зоната. Избираме да създадем нов файл.

Pic19

Предлага динамично да се обновява. Тъй като нямаме още активна директория за сега ще е така.

Pic20

Завършваме със създаването на Primary zone.

Pic21

Виждаме, че е създадена зоната tlan.net. Да влезем в самата зона:

Pic22

Има два записа. Единия е SOA другия е NS. SOA e главния и първи запис в зоната даващ информация за нея. Да я разгледаме като цъкнем с мишката върху зоната.

Pic23

SOA това е весия на зоната и се състои от: - Serial number: (1) Ако направим някакво изменение този номер нараства. По този номер Secondary Zone вижда има ли промени в оригиналната зона и ги полага върху себе си. - Primary server: (core.) Това е първия именен сървър отговарящ за домейна. Това е сървъра съдържащ копие на зоната и е описан в NS записа на тази зона. - Responsible person: (hostmaste.) Това е този с който може да се свържем при проблем. Най-често се поставя мейла на личността. Пример: вместо hostmaster. Може да сложим tachko.tachko.com, което отговаря на tachko@tachko.com. Вместо @ тука се ползва ., това е свързано с особенностите на SOA записа. - Refresh interval: (15 min.) Определя интервале през колко време Secondary Zone да пита Primary zone за опресняване. - Retry interval: (10 min.) През колко време да изпрати втори въпрос, ако предния не е успял. - Expires after: (1 ден.) За колко време информацията да е актуална в “Secondary Zone” при пропаднала “Primary zone” - Minimum TTL: (1 час.) Колко да живее DNS записа в кеша. Това е глобален запис. - TTL for this record: Както горния TTL но отговаря за точно определен домейн. Сега да направим някакви промени и да видим разликата:

Pic24
Pic25

Даваме Refresh.

Pic26

Виждаме, че записа от 1 се промени на 2. Това значи че има изменение по записа и серийния номер стана 2. Сега да разгледаме NS записите, отговарящ за удостоверяващите сървъри. Удостоверяващите сървъри са тези които имат в себе си записи за собствените под-домейни. Пример: tlan.net има записи в себе си за home.tlan.net, mail.tlan.net. Значи е за удостоверяващ сървър. Но да разгледаме самия NS запис. Той е един и съдържа в себе си Name servers: core.. Да оправим това.

Pic27

Създаваме нов A запис. New Host (A or AAAA)….

Pic28

Name: (core) – Така се казва хоста IP: (192.168.0.1) – Това ни е IP-то на вътрешния мрежови интерфейс. Махаме избирането на: Create associated pointer (PTR) record – Това ще направи автоматично запис и в Reverse Lookup Zones. Add Host за да активираме промените. Резултата е:

Pic29

Сега да ремонтираме и самия NS запис

Pic30

Избираме Edit…

Pic31

Натискаме бутона Resolve Получава се:

Pic32

Това е така, защото когато дефинирахме мрежовия интерфейс гледащ към Интернет, указахме DNS-a да е 8.8.8.8. Това е публичен DNS. Там има истински запис отговарящ за този домейн и записа който правим не е верен, не съвпада с истинския. За целта преправяме мрежовия интерфейс и слагаме DNS да има IP=127.0.0.1, след което пробваме наново. Натискаме отново бутона Resolve.

Pic33

Получи се, натискаме OK и продължаваме.

Pic34

OK за завършване. За външни клиенти да променим и записа “SOA”.

Pic35

OK за продължение. Refresh на зоната и резултата е:

Pic36

SOA записа се промени на 5. Освен А записа има и още няколко. Сега няма да ги разглеждаме но е необходимо да се знаят. Да се занимаем с Reverse Lookup Zones.

Pic37

New Zone… за да създадем нова зона.

Pic38
Pic39
Pic40
Pic41
Pic42
Pic43
Pic44

Завършваме със създаване на реверсивната зона.

Pic45

Обърнете внимание. Реверсивната зона е описана като: 0.168.192.in-addr.arpa. В обратен порядък. Това е така защото FQDN се търси в обратен порядък. Пример: core.tlan.net. се проверява за истинност по следния начин. Първо се търси в корена root. После се търси в net. После в tlan и накрая се търси за запис core. Сега да видим самото IP което е 192.168.0.1. Числото което ще се промени за друг хост (примерно test) ще е 1-цата. IP на test примерно ще е 192.168.0.20. Това определя и вида на ревърсната зона да е ip-обратно.in-addr.arpa. Малко практика:

Pic46

New Pointer (PTR)…

Pic47

Натискаме на бутона Browse…

Pic48
Pic49
Pic50
Pic51
Pic52

OK за край. Сега малко да си поиграем с записите които създадохме. Отваряме Command Prompt и да проверим интерфейса който е към Интернет:

C:\Users\Administrator>ipconfig /all Ethernet adapter Internet: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : Intel(R) 82574L Gigabit Network Connection Physical Address. . . . . . . . . : 00-0C-29-15-BA-7B DHCP Enabled. . . . . . . . . . . : Yes Autoconfiguration Enabled . . . . : Yes Link-local IPv6 Address . . . . . : fe80::64af:d06f:9fac:498c%14(Preferred) IPv4 Address. . . . . . . . . . . : 10.25.0.89(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.248.0 Lease Obtained. . . . . . . . . . : Friday, March 27, 2020 5:09:09 PM Lease Expires . . . . . . . . . . : Saturday, March 28, 2020 5:29:29 AM Default Gateway . . . . . . . . . : 10.25.0.1 DHCP Server . . . . . . . . . . . : 10.25.0.1 DHCPv6 IAID . . . . . . . . . . . : 33557545 DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-26-10-34-F8-00-0C-29-15-BA-7B DNS Servers . . . . . . . . . . . : 127.0.0.1 NetBIOS over Tcpip. . . . . . . . : Enabled


Командата с която проверяваме DNS-ите е:

C:\Users\Administrator>nslookup dir.bg Server: localhost Address: 127.0.0.1 Non-authoritative answer: Name: dir.bg Address: 194.145.63.12

Горепоказаната команда по подразбиране е за А записите. Равносилна е и командата:

C:\Users\Administrator>nslookup -type=A dir.bg


Сега да укажем на nslookup кой сървър да пита за записи.

C:\Users\Administrator>nslookup -type=A dir.bg 8.8.8.8 Server: dns.google Address: 8.8.8.8 Non-authoritative answer: Name: dir.bg Address: 194.145.63.12

Отговора се получава от сървъра на Google с IP=8.8.8.8 Да си поиграем със домейна който създадохме. Първо се допитваме до оригиналния:

C:\Users\Administrator>nslookup -type=NS tlan.net 8.8.8.8 Server: dns.google Address: 8.8.8.8 Non-authoritative answer: tlan.net nameserver = post.tlan.net tlan.net nameserver = b8800a941ea7.sn.mynetname.net tlan.net nameserver = beeb0a97e852.sn.mynetname.net

Това е отговора от Google.


C:\Users\Administrator>nslookup -type=NS tlan.net 127.0.0.1 Server: localhost Address: 127.0.0.1 tlan.net nameserver = core.tlan.net core.tlan.net internet address = 192.168.0.1

Това е отговора от нашия сървър. Да видим какво е положението в големите компании като Microsoft:

C:\Users\Administrator>nslookup -type=NS microsoft.com Server: localhost Address: 127.0.0.1 Non-authoritative answer: microsoft.com nameserver = ns3.msft.net microsoft.com nameserver = ns1.msft.net microsoft.com nameserver = ns2.msft.net microsoft.com nameserver = ns4.msft.net ns3.msft.net internet address = 193.221.113.53 ns3.msft.net AAAA IPv6 address = 2620:0:34::53 ns1.msft.net internet address = 208.84.0.53 ns1.msft.net AAAA IPv6 address = 2620:0:30::53 ns2.msft.net internet address = 208.84.2.53 ns2.msft.net AAAA IPv6 address = 2620:0:32::53 ns4.msft.net internet address = 208.76.45.53 ns4.msft.net AAAA IPv6 address = 2620:0:37::53 C:\Users\Administrator>nslookup -type=A microsoft.com ns1.msft.net Server: ns1.msft.net Address: 208.84.0.53 Name: microsoft.com Addresses: 13.77.161.179 40.76.4.15 40.112.72.205 40.113.200.201 104.215.148.63


Сега да проверим и “SOA” записите:

C:\Users\Administrator>nslookup -type=SOA tlan.net 8.8.8.8 Server: dns.google Address: 8.8.8.8 Non-authoritative answer: tlan.net primary name server = ns1.he.net responsible mail addr = hostmaster.he.net serial = 2019100400 refresh = 86400 (1 day) retry = 7200 (2 hours) expire = 3600000 (41 days 16 hours) default TTL = 86400 (1 day)

Това беше запитване към Google

C:\Users\Administrator>nslookup -type=SOA tlan.net 127.0.0.1 Server: localhost Address: 127.0.0.1 tlan.net primary name server = core.tlan.net responsible mail addr = tachko.tachko.com serial = 5 refresh = 900 (15 mins) retry = 600 (10 mins) expire = 86400 (1 day) default TTL = 3600 (1 hour) core.tlan.net internet address = 192.168.0.1 expire = 2419200 (28 days) default TTL = 3600 (1 hour)

А това е отговора от нашия DNS сървър. И за накрая:

Pic53

Properties

Pic54

Можем да укажем на кой интерфейс да действа DNS зоната. Следва да се запознаем с активната директория.