48

Владислав Животнев - Основы DNS

  • Upload
    yandex

  • View
    364

  • Download
    3

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Владислав Животнев - Основы DNS
Page 2: Владислав Животнев - Основы DNS

Лекция «про DNS»

Page 3: Владислав Животнев - Основы DNS
Page 4: Владислав Животнев - Основы DNS

ARPAnet тренировал память пользователей сети.

Page 5: Владислав Животнев - Основы DNS

Файл hosts.txtВ несколько килобайт, позже — мегабайт. По каналу, скорость которого изменялась в бодах...

Лежал на FTP Network information center of Stanford univercity

Page 6: Владислав Животнев - Основы DNS

Спасение : RFC 1034 и RFC 1035 (Dr. Jon Postel)

На нашем языке - DNS

Page 7: Владислав Животнев - Основы DNS

Но файл /etc/hosts (там он расположен в операционных системах) жив и поныне. А нам — ещё и полезен.

Page 8: Владислав Животнев - Основы DNS

Зачем?

Page 9: Владислав Животнев - Основы DNS
Page 10: Владислав Животнев - Основы DNS

Да. Сначала DNS-запрос, потом HTTP-запрос. Отдельно.

Page 11: Владислав Животнев - Основы DNS

Резолвер.

Page 12: Владислав Животнев - Основы DNS

Домен (доменное имя), доменная зона, регистраторы и вот это вот всё.

Page 13: Владислав Животнев - Основы DNS

Утилита host

host -v -t A example.com ns-server.com

-v = как спрашиваем-t A = что спрашиваемexample.com = какой домен спрашиваемns-server.com = у кого

Ещё есть dig, да. И nslookup.

Page 14: Владислав Животнев - Основы DNS

А-запись

domain → IPv4

$ host -t A yandex.ruyandex.ru has address 213.180.204.11yandex.ru has address 93.158.134.11yandex.ru has address 213.180.193.11

Page 15: Владислав Животнев - Основы DNS

Roundrobin.

Page 16: Владислав Животнев - Основы DNS

AAAA-запись. И нет, это не крик во время бега по плану эвакуации.

domain → IPv6

$ host -t AAAA yandex.ruyandex.ru has IPv6 address 2a02:6b8::11

Page 17: Владислав Животнев - Основы DNS

Видишь кролика? А он есть!

Механизм view.

Page 18: Владислав Животнев - Основы DNS

MX-записи.

«Куда слать почту для этого чертового домена?»

$ host -t MX yandex.ruyandex.ru mail is handled by 10 mx.yandex.ru.

Page 19: Владислав Животнев - Основы DNS

CNAME-записи

«Алиас»

один домен → другой домен

$ host -t CNAME sitesearch.yandex.rusitesearch.yandex.ru is an alias for yandex.ru.

Всё бы хорошо, но....

Page 20: Владислав Животнев - Основы DNS

SRV-запись

домен + протокол → сервер + порт

XMPP, SIP, Exchange, AFP

И тут было могло быть всё прекрасно...

Page 21: Владислав Животнев - Основы DNS

SOA-запись.

Какая-то там информация о домене.

$ host -t SOA yandex.ruyandex.ru has SOA record ns1.yandex.ru. sysadmin.yandex-team.ru. 2014101512 600 300 2592000 900

Page 22: Владислав Животнев - Основы DNS

- primary name server (ns1.yandex.ru.)- hostmaster (sysadmin.yandex-team.ru.)- serial number (2014101512)- refresh (600)- retry (300)- expire (2592000) - minimum TTL (900)

Page 23: Владислав Животнев - Основы DNS

TXT-запись. Тоже какой-то текст о домене.

Правда, иногда полезный:$ host -t TXT yandex.ruyandex.ru descriptive text "v=spf1 redirect=_spf.yandex.ru"…Иногда не очень: $ host -t TXT vlad.provlad.pro descriptive text "i am the pink elephant"...

Page 24: Владислав Животнев - Основы DNS

DNAME записи.

<тут должен быть текст, но никто его не смог придумать>

Page 25: Владислав Животнев - Основы DNS

Вообще есть примерно 45 типов записей.

Page 26: Владислав Животнев - Основы DNS

PTR. «Обратная» запись.

$ host 93.158.134.1111.134.158.93.in-addr.arpa domain name pointer yandex.ru.

Firewall-ы, почта, netstat.

Page 27: Владислав Животнев - Основы DNS

NS записи.

«Быть или не быть» - вряд ли про них.

$ host -t NS yandex.ruyandex.ru name server ns2.yandex.ru.yandex.ru name server ns1.yandex.ru.

Page 28: Владислав Животнев - Основы DNS

Делегирование.

Page 29: Владислав Животнев - Основы DNS

Иерархичность, part 0

$ host -t NS ..... name server i.root-servers.net....

Page 30: Владислав Животнев - Основы DNS

Иерархичность, part 1

$ host -v -t NS ru. i.root-servers.net.…;; AUTHORITY SECTION:ru. 172800 INNS f.dns.ripn.net.ru. 172800 INNS a.dns.ripn.net....

Page 31: Владислав Животнев - Основы DNS

Иерархичность, part 2

$ host -v -t NS yandex.ru f.dns.ripn.net.…;; AUTHORITY SECTION:yandex.ru. 345600 INNS ns1.yandex.ru.yandex.ru. 345600 INNS ns2.yandex.ru....

Page 32: Владислав Животнев - Основы DNS

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

Page 33: Владислав Животнев - Основы DNS

Точка в конце.

Без неё — домен относительный. Может повезет, может и нет.

Page 34: Владислав Животнев - Основы DNS

Не все ад... Да впрочем, сами посмотрите:

Page 35: Владислав Животнев - Основы DNS

TTL

Page 36: Владислав Животнев - Основы DNS

DNS может указывать куда угодно. Вопрос в том, как и у кого оно потом будет работать.

На 127.0.0.1, на 192.168.0.2..

Page 37: Владислав Животнев - Основы DNS

/etc/resolv.conf

Page 38: Владислав Животнев - Основы DNS

Bind9, powerdns, NSD, dnsmasq

Page 39: Владислав Животнев - Основы DNS

Репликация — способ правильный, не очень правильный и совсем неправильный.

Page 40: Владислав Животнев - Основы DNS

Безопасность, которой нет.

- чужой резолвер с невалидными записями- cache poisoning- подделывание UDP-ответов- 8.8.8.8 в сети провайдера- сбор запросов и статистики

Page 41: Владислав Животнев - Основы DNS

Безопасность, которая есть.- DNSSEC- DNSCrypt

Page 42: Владислав Животнев - Основы DNS

DNS Amplification — к вопросу о том, как всё плохо.

Page 43: Владислав Животнев - Основы DNS

Альтернативы? - Файл hosts.txt по FTP размером в несколько десятков гигабайт, по сети, скорость которой измеряется в мегабитах =) - namecoin (хотя вряд ли)

Page 44: Владислав Животнев - Основы DNS

Вспомним картинку в самом начале: http://habrahabr.ru/post/232363/http://www.stableit.ru/2013/12/r01ru.htmlhttp://habrahabr.ru/post/171305/http://xakep.ru/59296/Ну и много других забавных штук.

Page 45: Владислав Животнев - Основы DNS

Fault-tolerance через DNS.

<Картинка с буханкой хлеба, переделанной в троллейбус>

Отказоустойчивость для бедных.

Page 46: Владислав Животнев - Основы DNS

Whois — не инструмент системного администратора.

Дату регистрации посмотреть там ещё можно, но не NS-серверы.

Page 47: Владислав Животнев - Основы DNS

Вопросы? Предложения? Летящие гнилые овощи?