1.43M
Category: internetinternet

Клиент_–_серверная_архитектура_Протокол_ДНС_

1.

Министерство образования Новосибирской области
ГБПОУ НСО «Новосибирский авиационный технический колледж имени Б.С. Галущака»
Устройство сети интернет
Клиент – серверная архитектура.
Протокол ДНС

2.

Клиент – серверная модель
DNS Что такое и какую роль играет?
Ip адреса и порты

3.

Клиент — это программа, устройство или пользователь,
который запрашивает услуги, ресурсы или данные у сервера.
Клиент инициирует связь, отправляя запросы через сеть
(например, HTTP-запрос к веб-серверу).

4.

Веб-браузер (Chrome, Firefox) — запрашивает вебстраницы у сервера.
DNS-клиент (встроен в ОС) — запрашивает у DNSсервера преобразование домена в IP-адрес.
Игровой клиент (Steam, клиент онлайн-игры) —
синхронизируется с игровым сервером.

5.

Сервер — это программа или устройство, которое предоставляет
услуги, ресурсы или данные клиентам в ответ на их запросы.
Сервер работает в режиме ожидания запросов и
обрабатывает их (например, возвращает веб-страницу или
данные из базы).
Обычно обладает высокой производительностью,
надежностью и доступностью (например, серверное
оборудование или облачные сервисы).

6.

Сервер баз данных (MySQL, PostgreSQL) —
обрабатывает запросы на чтение/запись
данных.
Почтовый сервер (SMTP, IMAP) — управляет
отправкой, хранением и доставкой писем.
DNS-сервер (BIND) — преобразует
доменные имена в IP-адреса.

7.

8.

Основами взаимодействия являются «запрос» (request) и
«ответ» (response).
При этом роли клиента и сервера могут меняться в
зависимости от контекста: одна и та же машина может
выступать в роли сервера по отношению к одному
приложению и клиента по отношению к другому.

9.

10.

11.

DNS (Domain Name System) — это распределённая
база данных, в которой хранится информация о
соответствии имён (доменов) IP-адресам.

12.

В самом начале эволюции Интернета не существовало
распределенной системы разрешения доменных имен.
Вместо этого использовался централизованный файл
HOSTS.TXT.
HOSTS.TXT содержал список всех известных компьютеров в
сети с соответствующими IP-адресами и именами.

13.

127.0.0.1
localhost
192.0.2.1
host1.example.com
192.0.2.2
host2.example.com
198.51.100.3 server.example.net
203.0.113.4 mail.example.org

14.

15.

Распределенная система
Нет единого сервера, на котором описываются
имена хостов
Делегирование ответственности
Пространство имен разделено на отдельные части —
домены
За каждый домен отвечает отдельная организация
Надежность
Дублирование серверов DNS

16.

Доменные имена организованы в иерархическую
структуру, напоминающую древо. Эта структура
позволяет эффективно управлять огромным
количеством доменов и обеспечивает их
уникальность.

17.

Корневой Уровень (Root Level)
Представляется точкой (.) в конце доменного имени
(обычно опускается).
Домены Верхнего Уровня (Top-Level Domains, TLD)
Общие TLD (gTLD): .com .org .net
Кодовые TLD (ccTLD): .ru .de .jp
Спонсируемые TLD (sTLD): .edu .gov

18.

Вторичные Домены (Second-Level Domains)
Располагаются непосредственно под TLD.
Чаще всего представляют название организации или
компании: example.com google.com
Поддомены (Subdomains)
Находятся ниже вторичных доменов.
Используются для организации структуры сайта или разделения
сервисов: www.example.ru mail.google.com blog.company.org

19.

20.

21.

22.

Доменная зона — это часть иерархической структуры
доменных имен (DNS), которая управляется одним или
несколькими авторитетными DNS-серверами. Зона включает
в себя один домен и все его поддомены, для которых она
является авторитетной. Она определяет границы
ответственности за управление записями DNS внутри этой
области.

23.

24.

25.

26.

Делегирование
домена

27.

Схема DNS

28.

Итеративные сервера
Хранят официальные записи (DNS-зоны) для конкретных
доменов. Например, серверы Google хранят записи для
google.com.
Если сервер отвечает за данную доменную зону — он
возвращает ответ
Если не отвечает, то возвращает адрес DNS — cepвepa, у
которого есть более точная информация

29.

Инфраструктура DNS

30.

Рекурсивные сервера (dns resolvers)
Получают запрос от клиента (например, браузера) и
выполняют всю работу по поиску IP-адреса, обращаясь
другим серверам (корневым, TLD, итеративным).
Фильтруют трафик, блокируют вредоносные домены
(например, через DNS-фильтры).
Кэшируют результаты, ускоряя повторные запросы.
к

31.

Предоставляется провайдером/организацией
Компьютер получает адрес локального сервера
DHCP
DNS по
Открытый / публчиный сервер
Google: 8.8.8.8 и 8.8.4.4
Яндекс: 77.88.8.8 и 77.88.8.7 (с блокировкой различных
сайтов, ресурсов)

32.

Кэширование в DNS

33.

Авторитетный (authoritative, “заслуживающий доверия")
Ответ от сервера, обслуживающего доменную зону
Получен из файлов на диске сервера
Неавторитетный (non-authoritative, ”незаслуживающий
доверия")
Ответ от сервера, который не обслуживает доменную зону
Получен из кэша, данные могли устареть

34.

Кэш хранится и на стороне DNS-резолвера, и на стороне
каждого клиента:
На стороне DNS-резолвера:
Кэш на резолвере обновляется в соответствии с временем жизни
записей (TTL), заданным авторитетным сервером.
На стороне клиента:
Например: Windows использует службу DNS Client для
кэширования.

35.

Принципы работы днс
1. Клиент – серверная модель
Клиенты:
Браузеры, приложения, операционные системы
DNS-резолверы).
Пример: Когда вы вводите google.com, ваш компьютер
выступает клиентом, запрашивающим IP - адрес.
(локальные

36.

Принципы работы днс
1. Клиент – серверная модель
Серверы:
Рекурсивные резолверы (например, DNS-сервер
провайдера).
Авторитетные серверы (хранят записи для
доменов).
конкретных
Корневые и TLD-серверы (управляют доменами верхнего
уровня).

37.

Принципы работы днс
2. Механизм «запрос-ответ»
Клиент отправляет запрос (DNS-query) с доменным именем.
Сервер обрабатывает запрос и возвращает ответ (DNS-response) с
IP-адресом или ошибкой.

38.

Принципы работы днс
3. DNS использует протокол UDP по порту 53
Большинство DNS-запросов и ответов помещаются в один
UDP-пакет (до 512 байт).
Запросы выполняются быстрее (один пакет — запрос, один
пакет — ответ).

39.

40.

Запрос != Request
Ответ != Response
Запрос = Question
Ответ = Answer

41.

42.

43.

Авторитетный ответ (указывается сервером в ответе)

44.

45.

46.

// Заголовок
0xAA 0xBB // Transaction ID: 0xAABB
0x81 0x80 // Flags: QR=1, RA=1
0x00 0x01 // QDCOUNT: 1 вопрос
0x00 0x01 // ANCOUNT: 1 ответ
0x00 0x00 // NSCOUNT: 0 авторитетных записей
0x00 0x00 // ARCOUNT: 0 дополнительных записей

47.

48.

Секция вопросов (Question section)
После заголовка идёт список вопросов, каждый из которых
описывает, что именно мы хотим узнать у DNS-сервера. Формат
одной записи вопроса (Question Record) следующий:

49.

1. QNAME (имя домена): 3 www 7 example 3 com 0
2. QTYPE (тип запроса): определяет, какой тип ресурсной
записи запрашивается.
A (1) – запрос IPv4-адреса
AAAA (28) – запрос IPv6-адреса
MX (15) – запрос почтового сервера (Mail eXchange)
NS (2) – запрос DNS-серверов, обслуживающих домен
3. QCLASS (класс запроса) 2 байта, обычно 1 (IN) – Интернет.

50.

51.

Секция ответов (Answer section)
Здесь хранится список ресурсных записей, которые являются
непосредственно «ответом» на наш вопрос. Содержит в себе ip
адрес необходимого устройства в сети.
NAME
Имя домена (часто указывается ссылка на QNAME
механизма сжатия/указателей).
TYPE
Тип записи (как и QTYPE – A, NS, MX и т. д.).
за
счёт

52.

CLASS
Класс (как и QCLASS – обычно IN).
TTL (Time To Live)
4 байта, число секунд, в течение которых запись считается
валидной.
RDLENGTH
2 байта, длина поля RDATA.
RDATA
Собственно данные ресурсной записи. Для A-записи: IPv4-адрес (4
байта).

53.

54.

Секция авторитетных серверов (Authority section)
Содержит список ресурсных записей, которые указывают на
серверы, считающиеся авторитетными для запрашиваемой
доменной зоны.

55.

56.

Секция дополнительной информации (Additional section)
Содержит дополнительные ресурсные записи, которые могут
пригодиться клиенту, чтобы не делать повторные запросы.
Классический пример – при возвращении MX-записи в «Ответах»
DNS-сервер может положить в «Дополнительную информацию»
A-записи (или AAAA-записи) для соответствующего почтового
сервера.

57.

58.

59.

60.

61.

Секция «Question» – байты 12..32
DNS-сервер обычно копирует Question-секцию из запроса в ответ.

62.

63.

Формат DNS-пакета оптимизирован для минимизации
накладных расходов. Благодаря структуре с заголовком
и секциями система DNS остается гибкой и
масштабируемой, что позволяет ей обслуживать
миллиарды запросов ежедневно.

64.

nslookup - это утилита для выполнения DNS-запросов (Domain
Name System). Она позволяет получать IP-адреса по доменному
имени (прямой запрос) и наоборот (обратный запрос), а также
смотреть различные DNS-записи (A, MX, TXT и т.д.).
Прямой DNS-запрос (forward lookup) — это получение IP-адреса по
доменному имени.
Обратный DNS-запрос (reverse lookup) — это получение доменного
имени по IP-адресу.

65.

66.

67.

68.

dig (domain name gropper) - современная и гибкая
утилита для диагностики DNS-запросов. Широко
используется администраторами, поскольку выдаёт
более подробную информацию, а также удобна для
скриптового использования.

69.

70.

71.

Можно также использовать PowerShell-модуль DnsClient,
например Resolve-DnsName.

72.

Команда ipconfig /displaydns в Windows вызывает
встроенную консольную утилиту ipconfig с аргументом
/displaydns для отображения текущего локального DNSкэша (DNS Resolver Cache), в котором хранятся
результаты предшествующих DNS-запросов, включая
соответствующие ресурсные записи.

73.

Domain Name System — определение IР-адреса компьютера по
его доменному имени
www.yandex.ru — 77.88.55.66
DNS — распределенная система с иерархической структурой:
Доменные зоны (корневой, верхний уровень, и т.д.)

74.

Режимы работы DNS:
— Итеративный
— Рекурсивный
Типы ответов:
— Авторитетный
— Не-авторитетный
Формат пакета DNS:
— Заголовок
— Запрос DNS
— Ответ DNS
— Информация об авторитетных серверах
— Дополнительная информация
English     Русский Rules