Редактирование: UNИX, осень 2008, 10 лекция (от 03 декабря)
Материал из eSyr's wiki.
Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.
ПРЕДУПРЕЖДЕНИЕ: Длина этой страницы составляет 40 килобайт. Страницы, размер которых приближается к 32 КБ или превышает это значение, могут неверно отображаться в некоторых браузерах. Пожалуйста, рассмотрите вариант разбиения страницы на меньшие части.
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
- | + | = Сегодня прикладной уровень TCP/IP в Linux. = | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | Сегодня прикладной уровень TCP/IP в Linux. | + | |
Первое — DNS. | Первое — DNS. | ||
Строка 18: | Строка 9: | ||
Казалось бы, мы обсудили весь функционал в linux для работы с сетью, тем не менее, есть одна базовая система, без правильной настройки которой ей пользоваться трудно. | Казалось бы, мы обсудили весь функционал в linux для работы с сетью, тем не менее, есть одна базовая система, без правильной настройки которой ей пользоваться трудно. | ||
- | == Проблема == | ||
Откуда доменная система имён растёт? | Откуда доменная система имён растёт? | ||
Что мы имеем на уровне ip: что мы имеем виду под интернетом — доступную жёсткую систему раздачи адресов, связанную с топологией сети. | Что мы имеем на уровне ip: что мы имеем виду под интернетом — доступную жёсткую систему раздачи адресов, связанную с топологией сети. | ||
Когда принимается решение о выдаче ip-адресов, это решение, эти циферки, которые будут выданы, берутся не с потолка. | Когда принимается решение о выдаче ip-адресов, это решение, эти циферки, которые будут выданы, берутся не с потолка. | ||
Существует центральная организация, которая их раздаёт, существуют всякие держатели больших пулов, которые раздают их дальше. | Существует центральная организация, которая их раздаёт, существуют всякие держатели больших пулов, которые раздают их дальше. | ||
- | |||
У нас есть руцентр. | У нас есть руцентр. | ||
То есть, если нужно подключить несколько десятков компьютеров, то выбирается организация, где цены лучше, и там их покупаешь. | То есть, если нужно подключить несколько десятков компьютеров, то выбирается организация, где цены лучше, и там их покупаешь. | ||
- | |||
У этой архитектуры есть три недостатка: | У этой архитектуры есть три недостатка: | ||
- | * IP адрес — такая штука, которую сложно запомнить. Один можно запомнить, а вот сотню адресов сложно. Эта задача решалась, и очень простым способом: есть | + | * IP адрес — такая штука, которую сложно запомнить. Один можно запомнить, а вот сотню адресов сложно. Эта задача решалась, и очень простым способом: есть /etc/hosts, в котором перечислены в очень простом формате ip-адрес и его имена. Пока в интернете было компьютеров 20—30, это замечательно работало. Когда их стало больше, задумались о том, что надо по-другому организовать эту архитектуру. |
- | * Как только выяснилось, что интернет это не три локальных сети, а много сетей, то возникла проблема определения по ip-адресу компьютера. Точнее, как определить административную принадлежность компьютера по сравнению с его жёсткой ip-адресацией, которая зависит исключительно от топологии сети. Необходима система именования, отвязанная от | + | * Как только выяснилось, что интернет это не три локальных сети, а много сетей, то возникла проблема определения по ip-адресу компьютера. Точнее, как определить административную принадлежность компьютера по сравнению с его жёсткой ip-адресацией, которая зависит исключительно от топологии сети. Необходима система именования, отвязанная от тополгии сети. |
* Понятие административной принадлежности имеет оборотное свойство: проблема не только в том, чтобы по имени компьютера выяснить, зачем он вообще нужен, проблема в том, чтобы грамотно раздать людям из различных зон административной ответственности права раздавать эти имена. | * Понятие административной принадлежности имеет оборотное свойство: проблема не только в том, чтобы по имени компьютера выяснить, зачем он вообще нужен, проблема в том, чтобы грамотно раздать людям из различных зон административной ответственности права раздавать эти имена. | ||
Задача при этом такова: нужно придумать имена, при том имена должны отражать административную структуру интернета, и нужно решить задачу, чтобы каждый администратор именовал свои компьютеры. Это намекает на распределённую систему, которая будет заниматься преобразованием имён в ip-адреса и обратно. | Задача при этом такова: нужно придумать имена, при том имена должны отражать административную структуру интернета, и нужно решить задачу, чтобы каждый администратор именовал свои компьютеры. Это намекает на распределённую систему, которая будет заниматься преобразованием имён в ip-адреса и обратно. | ||
- | == DNS как решение == | ||
Каким образом это сейчас решается с помощью DNS? | Каким образом это сейчас решается с помощью DNS? | ||
Существует некая организация, которая принимает решение о заведении корневых домненов --- ICANN. (недавно она продавилась под китайцами и решила начать раздавать корневые домены в национальных языках). | Существует некая организация, которая принимает решение о заведении корневых домненов --- ICANN. (недавно она продавилась под китайцами и решила начать раздавать корневые домены в национальных языках). | ||
- | + | Корневой домен, домен первогоуровня это некое окончание, самая общая часть. | |
- | Корневой домен, домен | + | |
Доменов первого уровня бывает несколько видов в соответствии с неким предназначением, национальные и разные другие, принятые недавно. | Доменов первого уровня бывает несколько видов в соответствии с неким предназначением, национальные и разные другие, принятые недавно. | ||
- | Их немного, в | + | Их немного, в район двух сотен. |
- | + | Кроме того, в этой рг. надо зарег., чтобы разд. домены в зоне ru. Это озн. зона тв. внутри этой зоны лежит на этой орг (в случае с ru это руцентр), и ICANn уже практ. всё равно, что ам творится. Аналогично у руцентра рег. некая орг., которая говорит, что отв., например, за зону msu.ru, и дальше она уже отв. за неё. И тут уже, помимо разд. зон, ещё раздаются имён компьютерам в этом домене. | |
- | Кроме того, в этой | + | |
- | Это | + | |
- | + | ||
- | Аналогично у руцентра | + | |
- | И тут уже, помимо | + | |
И тут решаются все три задачи. | И тут решаются все три задачи. | ||
- | Такая | + | Такая орг. наз. доменной. Произошло от слова домен, которое озн. феод, владение феодала. |
- | Произошло от слова домен, которое | + | |
Под королём были домены первого уровня. | Под королём были домены первого уровня. | ||
- | При этом | + | При этолм собл. при этом собл. приницп вассал мего вассала не мой вассал. |
- | По этой причине это | + | По этой причине это наз. доменная система. |
- | Эта структура была | + | Эта структура была зороша как самоорг. пока уровень связности был в пределахз одного уровня. |
- | + | Как это устр. на самом нижнем уровне: | |
- | Как это | + | |
- | Есть | + | Есть /etc/services, в котором прописано соотв. сервисам портов. |
- | + | клиент подкл. по ук. порту к серверу, за которым его ждут услуни. | |
- | manmachine: диапазон | + | manmachine: диапазон красныйх портов |
- | К тому, что | + | К тому, что происх. при исп. данного пората данный порт не имеет. При этом было бы хорошо договориться, что опр. порт. соотв. опр. протоколу. |
- | Это | + | Это соотв. оно такое чисто для удобстве польз. Мы когда подкл. по 80 порту, то ожидаем всетитть http-сервер, и так далее. |
- | Но всегда нужно иметь в виду, что на | + | Но всегда нужно иметь в виду, что на прикл. уровне это штука далеко не всегда встречающаяся. |
- | В /etc/services | + | В /etc/services модноу увидеть порт 53, которыйотв. как раз за dns. |
- | Эта технология | + | Эта технология, технология привяз. службы к опр. порту явл. частью более общего мех., который сужает понятие просто прикл. протокол до понятия клиент-серв. прикл. протокол. Когда говорится о взаимод .по какому-то порту говорится имено о клиент-серверном взаимод. Это сущ. огранич. по сравнению с симметричной схемой. Это к тому, почему эта штука наз. services. |
- | Когда говорится о | + | |
- | Это | + | |
- | Это к тому, почему эта штука | + | |
- | Этот сервер, но в случае dns он заявлен как отвечающицй на tcp, так и на udp. | + | Этот сервер, но в случае dns он заявлен как отвечающицй на tcp, так и на udp. Почему так: запрос на преобр. ip-адреса в доменное имя и обр. как правило укл. в один. пакет. Соотв., ответ тоже, как правило, укл. в один пакет. Поск. такой запрос и такой ответ предст. собой датаграмму, почему бы его не исп. К тому же, исп. TCP утяжелило бы обмен примерно в 4 раза. |
- | Почему так: запрос на | + | |
- | + | ||
- | + | ||
- | К тому же, | + | |
- | Клиентская часть, resolver, есть | + | Клиентская часть, resolver, есть прак. на любой машине. Если его нет, то пользователь считает, что интернета нет. |
- | Если его нет, то пользователь считает, что интернета нет. | + | |
- | Есть | + | Есть /etc/resolv.conf, где указано, где нах. DNS сервер. |
- | К слову | + | К слову, FQDN, полное имя домена, в /etc/resolv.conf указ. две вещи: какие компьютеры явл. dns-серверами, и вторая инфомация --- список доменов, в которых будет производиться поиск, если вы указали не полное имя, а краткое. |
- | + | /etc/resolv.conf может не исп., если resolver запускается в chroot (анпример, так в alt). Поэтому, например, если руками модиф. файл, далеко не сразу службы, которые его исп., начнут его исп. | |
- | Поэтому, например, | + | |
- | + | Теперь об арзитектуре. Очевидно, с т. з. программы рещализация долнжа быть такая: есть понятие "сервер", этот сервер. Каждая орг. должна иметь такого рода севрвер, которая предост. услуги преобр. имён и адресов в соотв. с теми именами, которые есть. | |
- | Теперь об | + | |
- | Очевидно, с | + | |
- | Каждая | + | |
- | Каждый доменный сервер должен знать всю | + | Каждый доменный сервер должен знать всю инф. об именах в своём домене и инф. о серверазх, которые обслуж. зоны в домене. |
- | Получается, что эта такая | + | Получается, что эта такая иерарх. распред. база данных. |
- | Далее. вот прописал какой-то сервер в качестве сервера доменных имён. | + | Далее. вот прописал какой-то сервер в качестве сервера доменных имён. Далее вопрос: я же хочу спрашивать не только имена в этом домене, но и всякие другие. Должен ли он иметь full view? Конечно, нет. Хорошо, а как он будет узнавать? Никак, он скажет, спроси у корневого. Спрашиваем у корневого: он говорит, я не знаю, знаю про com. Кто знает про com, знает только про cdrom.com. А тот уже знает про ftp.cdrom.comю |
- | Далее вопрос: я же хочу спрашивать не только имена в этом домене, но и всякие другие. | + | |
- | Должен ли он иметь full view? | + | |
- | Конечно, нет. | + | |
- | + | ||
- | Хорошо, а как он будет узнавать? | + | |
- | Никак, он скажет, спроси у корневого. | + | |
- | Спрашиваем у корневого: он говорит, я не знаю, знаю про com. | + | |
- | Кто знает про com, знает только про cdrom.com. | + | |
- | А тот уже знает про ftp.cdrom. | + | |
Вот это — рекурсивный запрос. | Вот это — рекурсивный запрос. | ||
Строка 123: | Строка 81: | ||
При этом делается такая прогулка. | При этом делается такая прогулка. | ||
- | Если бы все | + | Если бы все компьютьеры в интирнете работали бы так, то к корневым серверам было бы слишком много запросов. Поэтому обычно так не делают, хотя можно. Поэтому обычно можно сначала послать прямой запрос своему dns-серверу, колторый уже может ответить да, нет, не знаю. Кроме того, клиентские машины обычно не делают рекурсивные запросы, они посылают только прямые, а уже dns-сервер занимается рекурсивным запросом и занимается кжшированием. Почему это улчше: елси целая сеть ломится по какому-то ip, то в кэше останутся ip dns-серверов для ежё для com и cdrom.com. |
- | Поэтому обычно так не делают, хотя можно. | + | |
- | Поэтому обычно можно сначала послать прямой запрос своему dns-серверу, | + | |
- | Кроме того, клиентские машины обычно не делают рекурсивные запросы, они посылают только прямые, а уже dns-сервер занимается рекурсивным запросом и занимается | + | |
- | Почему это | + | |
- | Для того, чтобы не | + | Для того, чтобы не происзодило злоупотребление, есть практика рекурсивные запросы выполнять только для своих хостов. |
- | + | Тепер, что кас. способову увел. безобразия: | |
- | + | * Кэш | |
- | В каждой такой таблице | + | * В каждой такой таблице соотв. ip-адрсеов и имён, которые хранит dns-сервер есть ttl. Она говорит, какой время полученная запись может считаться валидной. Зачем это сделано: чтобы если понадобится изменить ip-адрес, об ээтом узнали через некоторое время. Обычно TTL выставляется у сутки. Если же у вас сеть меняется часто, то можно уменьшить ttl, но нужно быть готовым к увелич. нагрузки. |
- | Есть ещё expired, который | + | Есть ещё expired, который исп., если ttl просрачивапется, а dns недоступен. |
- | + | Есть ещё одна идея, которая позв. убыстрить и увеличить связность: обычно для кжадой зоны указывается неск. серверов (минимум 2), при этом хорошо, чтобы они были в разных подсетях класса B. Это увле. надёжность. В слчаях, когда нужно обращаться напрямую, тут возникает вопрос, кто истина в посл. инстанции. И тут возникает механизм передачи зон. То есть редакт. зона на одной машине, а скач. на другой. И он тоже призн. авторитетным. | |
- | Есть ещё одна идея, которая | + | |
- | Это | + | |
- | В | + | |
- | И тут возникает механизм передачи зон. | + | |
- | То есть | + | |
- | И он тоже | + | |
- | По какому | + | По какому призн. принимается реш., что данный сервер авторитетен на вопросы про DNS. Помимо преоюр. имён адреса DNS оказ. услуги по преобр. имён во что угодно. A — адреса. NS — списки авторитетных адресов для данного домена. MX — адрес.имя постового сервера. TXT — текст. |
- | Помимо | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | DNS-сервера | + | DNS-сервера исп. для того, чтобы хранить инф. о спамерах. Оно устр. именно как dns-сервер. Ему скармливается ip задом наперёд, и по ответу понятно, что это за ip. |
- | Оно | + | |
- | Ему скармливается ip задом наперёд, и по ответу понятно, что это за ip. | + | |
- | Остались две | + | Остались две темы: |
- | * | + | * Заверш DNS |
* RPC | * RPC | ||
* p2p | * p2p | ||
+ | |||
= Конспект Kda = | = Конспект Kda = |