Колисниченко Д.Н. - Linux-сервер своими руками (1077324), страница 10
Текст из файла (страница 10)
Он используется для тестирования сетевых программ и взаимодействия сетевых процессов. При попытке отправить пакет по этому адресуданные не передаются по сети, а возвращаются протоколам верхних уровней, как только что принятые. При этом образуется как бы «петля». Этотадрес называется loopback. В IP-сети запрещается использовать IP-адреса,которые начинаются со 127. Любой адрес подсети 127.0.0.0 относится клокальному компьютеру, например: 127.0.0.1, 127.0.0.5, 127.77.0.6.Существует также специальные адреса, которые зарезервированы длянесвязанных локальных сетей — это сети, которые используют протокол IP,но не подключены к Интернет. Вот эти адреса:10.0.0.0 (сеть класса А, маска сети 255.0.0.0).172.16.0.0...172.31.0.0 (16 сетей класса В, маска каждой сети 255.255.0.0).192.168.0.0...192.168.255.0 (256 сетей класса С, маска каждой сети 255.255.255.0).В этой книге я старался использовать именно такие адреса, чтобы невызвать пересечение с реальными IP-адресами.1.7.4.
Система доменных имен — DNSДля того чтобы подключиться к какому-нибудь другому компьютеру,например, Web-серверу, нужно знать его IP-адрес. Это не очень удобно,потому что человеку намного проще запомнить символьное название сервера,35Введение в Linuxчем последовательность чисел. Представьте, что вместо http://www.romb.net вокне браузера вам нужно было бы вводить http://62.244.59.193. Оба способабудут работать, но первый запоминается намного проще. Фактически, нужнозапомнить только слово из четырех букв — romb, a www и net — это «самособой».
Компьютеру же, наоборот, проще обрабатывать числа, а не символьную информацию.Для преобразования IP-адреса в символьное имя и обратно используетсяслужба доменных имен — DNS (Domain Name System). Обычно на любомсервере устанавливается своя служба DNS, даже если этот сервер не поддерживает домена. В отличие от одноранговой сети, в IP-сети компьютеры объединяются в домены, а не в рабочие группы.
На самом деле, понятие домен гораздошире, чем рабочая группа, но пока остановимся на таком определении.Предположим, адрес Web-сервера вашего подразделения выглядит так:http://www.department.firma.isp.ru. Рассмотрим, что происходит, когда пользователь вводит в окне браузера этот адрес. Сначала отправляется запрос наразрешение (преобразование) имени в IP-адрес серверу DNS, который принадлежит провайдеру пользователя. Если такое имя есть в кэше DNSсервера провайдера (для определенности назовем его user-dns), он возвращает IP-адрес и браузер устанавливает соединение с этим компьютером. Еслиже такого адреса в кэше сервера DNS не оказалось, DNS-сервер провайдераобращается к серверу, который содержит домен наивысшего уровня, то естьк корню дерева (см.
рис. 1.9).КореньТот обращается к домену ruДомены первого уровни^--'"'^~^~^(этот сервер пусть называетсяcom^^^ru-dns). Сервер ru-dns в своюочередь обращается к сервеII уровеньру, который делегирует домен\_ googie/*"\ isprombisp (это ваш провайдер). СерII уровень\вер isp обращается к серверу,фирмакоторый делегирует (админиIV уровеньстрирует) домен firma, а онО departmentуже к серверу, отвечающемуза домен department, которыйРис.
1.9. Иерархическая структура системы доменных имени возвращает IP-адрес компьютера www.department.firma.isp.ru. Таким образом, получается своеобразная цепочка. Ясно, что если эта цепочка оборвется на каком-нибудь звене,то пользователю, точнее, серверу DNS user-dns, будет сообщено о невозможности разрешения имени компьютера в IP-адрес.Вся структура службы DNS является иерархической. Существуют домены первого, второго, третьего, n-го уровней. В рассмотренном примередоменом первого уровня является ru, isp — второго, firma — третьего, аdepartment — четвертого уровня (см.
рис. 1.9).Корневой домен управляется центром InterNIC. Домены верхнего (первого) уровня назначаются для каждой страны (см. табл. 1.3).gЯ о366™о\9"QоВведение в LinuxОбозначения стран по стандарту ISO 3166ДоменСтранаРоссияБелоруссияЛатвияМолдоваТурцияИракI4JbyIvmdtriqilИзраильПольшаИспанияФранцияИндонезияГрецияАвстрияВенгрияplesfridQ'athuТаблица 1.3ДоменнаItееkzгоirtmitQbdevnvaCOmxСтранаУкраинаЛитваЭстонияКазахстанРумынияИранТуркменистанИталияВеликобританияГерманияВьетнамВатиканКолумбияМексикаДля США и Канады единый домен отсутствует, но иногда используетсяобозначение us.
Обозначения стран соответствуют международному стандарту ISO 3166. Данные сведения могут быть получены по адресу ftp:/ftp.ripe.net/iso3166-countrycodes.Для различных типов организаций могут использоваться такие обозначения:comкоммерческие организации (например, yahoo.com).eduобразовательные учреждения (например, mit.edu).govправительственные организации (например, nasa.gov).orgнекоммерческие организации (например, linux.org).netобычно провайдеры (например, ukr.net).По данным ISC (Internet Software Consortium) по состоянию на январь2002 года зарегистрировано около 150 миллионов узлов сети Интернет(см. рис. 1.10). Данные сведения публикуются с разрешения ISC.Internet Domain Survey Host Count160,000,000 y140,000,000 -•120,000,000 100,000,000 80,000,000 60,000,000 - >40,000,000 20,000,000 0IISouirt: Internet Software Conioithun (www.xc.oig)Рис.
1.10, Динамика роста узлов в сети Интернет37Введение в Linux1.7.5. Многоуровневая архитектура стека TCP/IPЭтот пункт книги является необязательным: если вы считаете, что у васуже достаточно знаний о протоколе TCP/IP, то можете перейти к следующимразделам, а к этому вернуться позже. Здесь будет описана многоуровневаяархитектура протокола TCP/IP — для большего понимания происходящего.Вначале давайте рассмотрим историю создания протокола TCP/IP.
ПротоколTCP/IP был создан в конце 60-х — начале 70-х годов агентством DARPAМинистерства Обороны США (U.S. Department of Defense Advanced ResearchProjects Agency). Основные этапы развития этого протокола отмечены в табл. 1.4.Этапы развития протокола TCP/IPТаблица 1.4СобытиеГод1970Введен в использование протокол NCP (Network Control Protocol) для узлов сети Arpanet1972Вышла первая спецификация Telnet (см.
RFC 318)1973Введен протокол FTP (RFC 454)1974Программа TCP (Transmission Control Program)1981Опубликован стандарт протокола IP (RFC 791)1982Объединение протоколов TCP и IP в одно целое — TCP/IP1983Сеть Arpanet переведена на протокол TCP (ранее использовался протокол NCP)1984Введена доменная система имен DNSКак вы видите, все стандарты Интернет-протоколов опубликованы вдокументах RFC.
Документы RFC (Request for Comments) -- это запроскомментариев. В этих документах описывается устройство сети Интернет.Документы RFC создаются сообществом Интернет (Internet Society,ISOC). Любой член ISOC может опубликовать свой стандарт в документеRFC. Документы RFC делятся на пять типов:Требуется (Required)Рекомендуется (Recommended)Выборочно (Elective)Ограниченное использование (Limited use)Не рекомендуется (Not recommended)данный стандарт должен бытьреализован на всех основныхузлах TCP/IP.обычно такие спецификацииRFC также реализуются.реализация не обязательна.не рекомендуется для всеобщего применения.не рекомендуется.Все необходимые документы RFC вы найдете на прилагаемом компакт-диске.Протоколы семейства TCP/IP можно представить в виде модели, состоящей из четырех уровней: прикладного, основного, межсетевого и сетевого(см. рис.
1.11).Уровень 1Прикладной уровень (уровень приложения, Application Layer)Уровень 2Основной (транспортный) уровень (Transport Layer)Уровень 3Межсетевой уровень (уровень Internet, Internet Layer)Уровень 4Уровень сетевых интерфейсов (Network Interface Layer)Рис. 1.11. Уровни стека протоколов TCP/IP38Введение в LinuxКаждый из этих уровнейвыполняет определенную задачудля организации надежной ипроизводительной работы сети.Прикладные протоколыТранспортные протоколыTCP и UDPУровень сетевого интерфейсаДанный уровень лежит в осДейтаграммановании всей модели протоколов семейства TCP/IP.
Уровеньсетевого интерфейса отвечает заотправку в сеть и прием из сетикадров, которые содержат информацию. Кадры передаются поСетевые интерфейсысети как одно целое. Кадр(frame) — это единица данных,Кадркоторыми обмениваются компьютеры в сети Ethernet. Для/~""Vобозначения блоков данных опСетьределенных уровней используюттермины кадр (frame), пакет(packet), дейтаграмма (datagram),Рис. 1.12.
Пересылка блока данныхсегмент (segment). Все эти терв стеке протоколов TCP/IPмины обозначают транспортируемые отдельно блоки данных и их можно считать синонимами. Название блокапересылаемых данных изменяется в зависимости от уровня (см. рис. 1.12).Межсетевой уровеньПротоколы Интернет инкапсулируют блоки данных в пакеты (дейтаграммы) и обеспечивают необходимую маршрутизацию. К основным Интернет-протоколам относятся:IP (Internet Protocol)....предназначен для отправки и маршрутизации пакетов.ARP (Address Resolution Protocol) ...