Адресация в сети Интернет

advertisement
Адресация в сети Интернет
Содержание
IP-адрес.
Каждая машина в мире (в "Сети Internet") имеет свой уникальный IP-адрес.
IP-адрес - 32-битное число, которое принято записывать в смешанном 16-рично-десятичном
формате, в виде 4 чисел, разделенных точками. Например:
193.124.243.73
128.8.2.1
Каждое десятичное число здесь представляет на самом деле два шестнадцатеричных разряда.
Может принимать значения от 0 до 255. Допустима также шестнадцатеричная запись:
c1.7c.94.49
80.08.02.01
или 0xC17C9449
или 0x80080201
В корректно сконфигуренной локальной сети, и при условии подключения ее к всемирной "Сети
Internet", протокол TCP/IP позволяет вашей сетевой программе работать с ЛЮБЫМ
компьютером в мире, как если бы он находился в вашей локальной сети.
NIC
Уникальность IP-адресов поддерживается просто. Они выдаются централизованно. Этим
занимается NIC (Network Informational Center). В настоящий момент информационные функции
о сети Интернет, a также вопросы регистрации сетей и выдачи соответствующих адресов
возложены на InterNIC (Internet Network Informational Center), а регистрацией и выдачей адресов
в Европе и в ее окружении занимается RIPE NCC (The RIPE Network Coordination Centre, RIPE Reseaux IP Europeens).
Для того, чтобы получить IP адреса на свою организацию в адрес NIC (на ближайший
региональный узел NIC) нужно послать форму-запрос установленного образца и через некоторое
время вам пришлют "семейство" IP-адресов, выделенных для вашей сети.
Ближайший узел, обслуживающий Российских пользователей находится в Москве в Российском
Научно-Исследовательском Институте Развития Общественных Сетей (РосНИИРОС). E-mail
адрес, по которому нужно послать запрос:
ncc@ripn.net
Конечно, можно обратится с этой просьбой и в RIPE и в InterNIC, скорее всего они отправят Вас
в РосНИИРОС.
IP-сеть, подсеть.
IP-сеть это семейство из 2**n IP-адресов, идущих подряд. Самый младший и самый старший
адреса сети резервируются. Младший адрес называется адресом данной IP-сети, например
128.8.0.0, или 193.125.149.64, и используется, когда требуется указать всю сеть целиком,
например, когда задается маршрутизация до этой сети. Самый старший адрес в сети широковещательный адрес (Broadcast) и используется для передачи сообщений типа "все-всемвсем" (в сети), например, 128.8.255.255.
Каждая сеть характеризуется маской сети, которая фактически задает размер сети (задает число
адресов). Маска задается либо количеством битов в маске сети (например 8бит - 256 адресов, 6
бит - 64 адреса), либо битовой маской вида
b'111...11100...00'
число^^
^^ битов
которую тоже принято записывать в десятично-побайтной записи, например:
255.255.255.192 - маска на 64 адреса
255.255.255.0
- маска на 256 адресов
255.255.0.0
- маска на 64Kb адресов
Сети делятся на классы:
Класс A.
"Большие" сети.
Адреса этих сетей лежат в промежутке: 1 - 126.
Маска сети: 255.0.0.0
Содержит до 16777216 адресов (256*256*256).
Адреса хостов в этих сетях вида: 125.*.*.*
0ххх хххх
адрес сети
Класс B.
адрес комп.
"Средние" сети.
Адреса этих сетей лежат в промежутке: 128.0 - 191.255
Маска сети: 255.255.0.0
Содержит до 65536 адресов (256*256).
Адреса хостов в этих сетях вида: 136.12.*.*
10хх хххх
адрес сети
Класс C.
адрес комп.
"Маленькие" сети.
Адреса сетей лежат в интервале: 192.0.0 - 255.254.255
Маска сети: 255.255.255.0
Содержит 254 адреса.
Адреса хостов в этих сетях вида: 195.136.12.*
110х хххх
адрес сети
адрес комп.
Распределение адресного пространства сетей класса С по странам описано в RFC 1466:
Multi-regional
Europe
Others
North America
Central/South America
Pacific Rim
Others
Others
192.0.0.0
194.0.0.0
196.0.0.0
198.0.0.0
200.0.0.0
202.0.0.0
204.0.0.0
206.0.0.0
-
193.255.255.255
195.255.255.255
197.255.255.255
199.255.255.255
201.255.255.255
203.255.255.255
205.255.255.255
207.255.255.255
Новая версия IP
Уже долгое время в Сети ждут кризиса переполнения адресного пространства. Дело в том, что
хотя текущая реализация протокола IP и дает 4 миллиарда комбинаций адресов (сегодня в
Интернет используется протокол IP, использующий для адреса компьютера 32 бита), но на
практике получается гораздо меньше. Адреса выделяются компаниям большими блоками, и
очень скоро их станет не хватать. Однако, учитывая все ускоряющийся рост сети, адресное
пространство может просто закончиться, причем это событие прогнозируется в пределах
ближайших десяти лет. Для решения этой проблемы разрабатывается протокол IP нового
поколения - IPng, в котором для адреса будет использоваться 128 бит, что позволяет адресовать
астрономическое количество объектов. Переход на новый протокол предполагается планомерно
осуществить в оставшиеся до коллапса годы, но кто знает, сколь болезненным он окажется - ведь
такие изменения требуют практически полной смены существующего программного обеспечения
и активного сетевого оборудования.
Кроме этого, новый IP протокол содержит целый ряд новых свойств, включая одновременную
передачу пакетов в несколько адресов и качественно новые служебные функции. Более того
известно, что код, реализующий новый протокол для основных операционных систем,
работающих в сети (UNUX и MS Windows 98/NT), уже написан. Подробности см. Протокол IPv6.
Составное имя компьютера
Все хосты (хостом называется, вообще говоря, любой компьютер, подключенный к сети
Интернет, но чаще всего тот, который умеет отвечать на IP запросы) имеют Internet-адрес,
состоящий из четырех чисел, разделенных точками (например, 193.124.171.60), и составное имя в
доменной форме (например, ict.nsk.su). Один хост может иметь несколько имен и адресов.
Раньше соответствие между адресом и именем определялось из специального текстового файла hosts. Но со временем, когда количество машин в Internet стало таким, что файл начал занимать
несколько мегабайтов и к тому же его требовалось непрерывно корректировать, была создана
специальная система запросов, позволяющая получать эту информацию по сети, - DNS (Domain
Name System) и протокол ARP (Address Resolution Protocol).
Система доменных имен
Региональная Система Имен
Каждый компьютер, подключенный к сети Интернет, должен иметь IP адрес (Internet-адрес),
состоящий из четырех чисел, разделенных точками (например, 193.124.171.60).
Числовые адреса хороши для связи машин, но при работе в сети удобнее использовать имена.
Непросто разговаривать, используя машинную адресацию, еще труднее запомнить эти адреса.
Поэтому для удобства пользователей всем компьютерам в Internet были присвоены собственные
(доменные) имена (напpимеp, qq.ict.nsk.su). Все приложения Internet позволяют пользоваться
доменными именами вместо числовых адресов.
По аналогию с почтой сетевые численные адреса аналогичны почтовой индексации (ZIP-code),
которые используются для автоматической сортировки корреспонденции на почтовых узлах.
Людям же приятнее и удобнее иметь дело с географическими названиями, которые являются
аналогами доменных имен.
Раньше соответствие между адресом и именем определялось из специального текстового файла host file (файл рабочих ЭВМ). Можно было послать запрос в NIC и в ответ высылали файл,
содержащий список соответствий имен и адресов. Этот файл регулярно распространялся по всей
сети, т.е. рассылался всем машинам. Имена были простыми словами и являлись уникальными.
Если вы использовали вместо адреса имя, то компьютер просматривал файл и подставлял вместо
имени реальный числовой IP адрес. Так же, как работает телефонный аппарат со встроенным
списком абонентов. Но со временем количество машин в Internet стало таким, что этот файл
начал занимать несколько мегабайт и к тому же его требовалось непрерывно корректировать.
Вследствие чего возникали значительные задержки при регистрации и получении имени для
нового компьютере, возникли трудности для поиска новых имен, которые еще никто не
использовал и слишком много сетевого времени затрачивалось на рассылку этого огромного
файла всем машинам, в нем упомянутым. Стало очевидно, - чтобы справиться с такими темпами
изменений и роста сети, нужна распределенная оперативная система, опирающаяся на принципы
сетевой информационной системы.
Таким образом, и возникла система запросов в сети Интернет, позволяющая получать
информацию о соответствии адресов и имен по сети, которая сейчас называется доменной
системой имен - DNS (Domain Name System), и новый способ выделения имени компьютеру,
который называется способом именования по доменному принципу. Кстати поэтому DNS очень
часто еще называют региональной системой наименований.
Структура региональной системы имен
Доменная система имен - это метод назначения имен путем передачи сетевым группам
ответственности за их подмножество имен. Каждый уровень этой системы называется доменом.
Домены в именах отделяются друг от друга точками, например:
nsc.ru
ict.nsc.ru
nsu.ru
ac.msk.su
vxcern.cern.ch
nic.ddn.mil.
-
Сеть ННЦ
Сеть ИВТ СО РАН
Университетская сеть в Новосибирске
Старое имя академической сети в России
В имени может быть различное количество доменов, но практически их не больше пяти. По мере
движения по доменам слева направо в имени, количество имен, входящих в соответствующую
группу возрастает.
Один компьютер может иметь несколько имен и адресов. Рассмотрим имя конкретного
компьютера qq.ict.nsc.ru. Первым в имени стоит индивидуальное имя данного компьютера qq
(реального компьютера, имеющего IP адрес). Это имя присваивается и поддерживается
локальной сетевой группой (например, сетевой группой организации: компьютер qq находится в
группе ИВТ (ict). Сетевая группа входит в более крупное подразделение (например, сеть
Новосибирского научного центра, домен nsc), которая как правило является автономной
системой сети Интернет, и в свою очередь, является частью национальной домена (например,
домена России ru).
Национальные домены называются доменами первого уровня
Для части доменов США наименование страны по традиции опускается. Это трех буквенные
домены первого уровня:
1 edu Сеть университетов
2 com Сеть коммерческих организаций
3 gov Cеть государственных организаций
4 mil Сеть Министерства обороны США
5 org Cеть общественных организаций
6 net Cеть сетевых организаций
Однако, в настоящее время, увидев в имени компьютера доменное имя net или com трудно
сказать, находится данный компьютер в США или в какой нибудь другой стране, например,
доменное имя siberia.net принадлежит компьютеру в Новосибирске. Поскольку Вы имеете
право, обратившись к хозяину домена зарегистрировать в нем адрес своего компьютера с
выбранным по Вашему усмотрению именем второго уровня.
Сетевая группа может создавать или изменять любые ей принадлежащие имена. Если ict решит
поставить другой компьютер и назвать его president, он ни у кого не должен спрашивать
разрешения, все, что от него требуется это добавить новое имя в соответствующую часть
соответствующей базы данных. Аналогично, если в ИВТ решат создать новую группу, например,
sbras, они (домен ict.nsc.ru) это делается не спрашивая никакого разрешения, (т.е. вводится
новый домен sbras.ict.nsc.ru). Если каждая группа придерживается таких простых правил, то
имена, которые она присваивает должны быть единственны во множестве ее непосредственных
подчиненных, поэтому никакие две системы, где бы те ни были в сети Internet, не смогут иметь
одинаковых имен.
Поскольку Internet - сеть мировая, то ответственность за имена внутри стран передана
соответствующим организациям этих стран. В России за выдачу соответствующих имен сетевым
группам второго уровня отвечает Российский Научно-Исследовательский Институт Развития
Общественных Сетей (РосНИИРОС).
Сейчас принята двухбуквенная кодировка государств (см. RFC 822, RFC 1591). Так, например,
домен Канады называется ca, бывшего СССР - su, Российской Федерации - ru, США - us и т.д.
(см. алфавитный список доменов и статистику по доменам). Всего же кодов стран около 300, из
которых большинство имеет компьютерную сеть того или иного рода (см. схему мировой
коннективности в 1996 году).
Поиск адреса по доменному имени
Поиск адреса по имени в нормально настроенной OS происходит автоматически. На компьютере,
который понимает, как обращаться с DNS для связи можно использовать только имена других
компьютеров. Все компьютеры Internet должны уметь пользоваться доменной системой и
работающий в сети компьютер всегда знает свой собственный сетевой адрес.
Можно конечно определить имя или адрес в ручную, подав специальную команду для его поиска
(в UNIX это команды nslookup и host).
Когда вы пользуетесь именем, компьютер должен преобразовать его в адрес. Для этого он
начинает запрашивает ближайший (или прописанный Вами) DNS-сервер. Это узлы, ведущие
соответствующую базу данных, в число обязанностей которых входит обслуживание таких
запросов. DNS-сервер начинает обработку имени с правого его конца и двигается по нему влево,
т.е. сначала производится поиск адреса в самой большой группе (домене), потом постепенно
сужает поиск. Но для начала опрашивается на предмет наличия у него нужной информации
местный узел.
Здесь возможны три случая:
 Местный сервер знает адрес, потому, что этот адрес содержится в его части всемирной базы
данных. Например, если вы подсоединены к сети Новосибирского Научного центра (домен
nsc.ru), то наш местный сервер содержит информацию о всех компьютерах этой сети;
 Местный сервер знает адрес, потому, что кто-то недавно уже запрашивал тот же адрес.
Когда кто-то запрашивается адрес, то сервер DNS записывает его в кэш (в память на
некоторое время), на случай, если кто-нибудь повторно обратится по этому имени, что
повышает эффективность системы;
 Местный сервер адрес не знает, но всегда знает как его выяснить, обратившись по цепочке к
DNS серверу вышестоящей организации (корневым сервером).
В прикладном или системном программном обеспечении DNS сервера имеется информация о
том, как связаться с корневым сервером. Это сервер, который знает адреса серверов имен
высшего уровня (самых правых в имени), здесь это уровень государств (ранга домена ru). У него
запрашивается адрес компьютера, ответственного за зону ru. Местный DNS-сервер связывается с
этим более общим сервером и запрашивает у него адрес сервера, ответственного за домен
второго уровня и у него запрашивается адрес рабочей машины.
На самом деле, для повышения эффективности, поиск начинается не с самого верха, а с
наименьшего домена, в который входите и вы, и компьютер, имя которого вы запросили.
Например, если ваш компьютер имеет имя qq.adm.ict.nsc.ru, то опрос начнется (если имя не
выяснится сразу) не со всемирного сервера, чтобы узнать адрес сервера группы ru, а сразу с
группы ru, что сразу сокращает поиск и по объему, и по времени.
Некоторые вопросы, связанные с региональной системой имен
Разные части доменного имени говорят о том, кто ответственен за поддержку домена с этим
именем, то есть в чьем подчинении это доменное имя находится. Имена в принципе ничего не
сообщают о владельце компьютера, соответствующего этому IP-адресу, или даже (несмотря на
коды стран), где же эта машина находится. (уже приводился пример с машиной siberia.net,
относящейся к домену net, расположенному, по идее, в США, а не в Новосибирске.
Части доменного имени даже не всегда указывают локальную сеть, в которой расположен
компьютер (например, компьютер с именем www-sbras.nsc.ru находится в локальной сети ИВТ
СО РАН). Часто доменные имена и сети перекрываются, и жестких связей между ними нет: две
машины одного домена могут не принадлежать одной сети, т.к. доменные имена указывают
только на ответственного за домен.
У машины может быть много имен. В частности, это верно для машин, предоставляющих какиелибо услуги, которые в будущем могут быть перемещены под опеку другой машины. Когда эти
службы будут перемещены, то имя, под которым эта машина выступала в качестве такого
сервера, будет передано новой машине-серверу вместе с услугами, - для внешних пользователей
ничего не изменится. Т.е. они будут продолжать пользоваться этой службой, запрашивая ее по
тому же имени, независимо от того, какой компьютер на самом деле занимается обслуживанием.
Имена, по смыслу относящиеся к службе, называются "каноническими именами" или "cnames". В
Internet они встречаются довольно часто.
Для связи имена необязательны. Если придет сообщение: The named host probably does not
exist, которое означает, что DNS не может преобразовать использованное вами имя в число, то
имя более недееспособно в том виде, в котором его знает ваш компьютер, но однажды получив
числовой эквивалент имени, ваша система перестает использовать для связи на машинном
уровне доменную форму адреса.
Запоминать лучше имена, а не числовые адреса. Но адреса привязаны к конкретным точкам сети.
Если компьютер, предоставляющий некие услуги, переносится из одного здания в другое, его
сетевое расположение, а значит и адрес, изменятся. Имя же менять не надо и не следует. Когда
администратор присваивает новый адрес, ему нужно только обновить запись имени в базе
данных так, чтобы имя указывало на новый адрес. Так как имя работает по-прежнему, вас
совершенно не должно заботить то, что компьютер расположен уже в другом месте.
Download