Setevaya_rabota_po_protokolu_TCP_linux (1084628)
Текст из файла
московский институт радиотехники электроники и автоматики
(технический университет)
КУРСОВОЙ ПРОЕКТ
по Системному программному обеспечению
на тему: «Сетевая поддержка в Linux»
работу выполнили студенты: Голощапов А.И.
Купцов Г.Г.
2002 г.
Содержание:
-
Введение
-
Сетевая работа по протоколу TCP/IP
-
Требование к аппаратуре
-
Настройка TCP/IP на вашей системе
-
Описание вашей сети
-
rc-файлы в сети
-
/etc/hosts
-
/etc/networks
-
/etc/host.conf
10. /etc/resolv.conf
11. Установка хост-имени (host)
12. Настройка SLIP
13. Соединение по dip при статическом IP адресе
14. Соединение по slattach при статическом IP адресе
15. Соединение по dip при динамическом IP адресе
16. Использование dip
17. Протокол DHCP
18. DHCP сервер под Unix
19. DHCP клиент под Unix
20. Статическая IP маршрутизация
21. Gateways
Введение
Протоколы сетевого взаимодействия TCP/IP являются результатом эволюционного развития протоколов глобальной вычислительной сети ARPANET.
Работы по созданию сети ARPANET были начаты рядом университетов США и фирмой BBN в 1968 г. В 1971 г. сеть была введена в регулярную эксплуатацию и обеспечивала для всех своих узлов три основные услуги:
-
интерактивный вход пользователя на удаленный узел;
-
передача файлов между узлами сети;
-
электронная почта.
Все эти средства базировались на транспортных услугах предоставляемых программой управления сети NCP (Network Control Program), реализующей свой внутренний набор протоколов.
Накопленный к 1974 г. опыт эксплуатации сети ARPANET выявил многие недостатки протоколов NCP и позволил определить основные требования к новому набору протоколов, получившему название TCP/IP:
-
независимость от среды передачи сообщений;
-
возможность подключения к сети ЭВМ любой архитектуры;
-
единый способ организации соединения между узлами в сети;
-
стандартизация прикладных протоколов.
Широко используемая ныне версия 4 протоколов TCP/IP была стандартизирована в 1981 г. в виде документов, называемых RFC (Request For Comment). Полный переход сети ARPANET на новые протоколы был завершен в 1982 г. Эта сеть сыграла роль "зародыша" всемирной сети Internet, построенной на базе протоколов TCP/IP.
Реализация протоколов TCP/IP оказалась наиболее удачной в версиях BSD4.2 и BSD4.3 операционной системы UNIX. Эта реализация является эталоном (станартом "de facto") для всех последующих.
Сетевая работа по протоколу TCP/IP
Linux поддерживает полный набор сетевых протоколов TCP/IP (Transport Control Protocol/Internet Protocol). TCP/IP стал наиболее успешно используемым механизмом работы в компьютерных сетях всего мира. С помощью Linux и карт Ethernet вы можете связать в локальную сеть ваши машины или (при соответствующем подключении) к Internet - всемирной сети TCP/IP.
Сцепить несколько UNIX-машин в небольшую локальную сеть (LAN) просто. Для этого требуется контроллер Ethernet в каждой машине, соответствующие кабели и еще некоторое сопутствующее оборудование. Или, если ваша фирма или университет имеют выход в Internet, вы можете просто к этой сети подцепиться со своей Linux-машиной.
Текущая реализация TCP/IP и соответствующие протоколы для Linux называются ``NET-2''. Это не имеет отношения к так называемому релизу NET-2 для BSD UNIX. В данном контексте ``NET-2'' означает вторую реализацию TCP/IP для Linux.
Linux NET-2 также поддерживает протокол SLIP (Serial Line Internet Protocol). SLIP позволяет вам получить вход в Internet с помощью модема. Если ваша фирма или университет имеет выход по SLIP, вы можете выйти на SLIP-сервер и войти со своей машины в Internet по телефонной линии. И наоборот, если ваша Linux-машина имеет подключение по Ethernet к Internet, ваш Linux может исполнять функции SLIP-сервера.
Для получения более полной информации по установке TCP/IP под Linux, мы настоятельно советуем прочитать Linux NET-2 HOWTO, которое можно получить через FTP с sunsite.unc.edu. NET-2 HOWTO - это полное руководство по конфигурированию TCP/IP, включая связи по Ethernet и SLIP под Linux. The Linux Ethernet HOWTO описывает конфигурирование (настройку) различных драйверов карт Ethernet для Linux. Можно также воспользоваться The Linux Network Administrator's Guide из проекта по документированию Linux - LDP (Linux Documentation Project). Более подробно про эти документы смотрите в Приложении A.
Интересна также книга: Craig Hunt TCPIP Network Administration/. Она содержит исчерпывающую информацию по использованию и настройке TCP/IP для систем UNIX.
Требования к аппаратуре
Вы можете использовать в Linux TCP/IP без какого-то дополнительного оборудования режим ``loopback'', позволяющий разговаривать с самим собой. Это необходимо для ряда приложений и игр, использующих механизм ``loopback''.
Но если вы хотите использовать Linux с сетевой работой через Ethernet по TCP/IP , вы должны иметь одну из следующих карт Ethernet: 3com 3c503, 3c503/16; Novell NE1000, NE2000; Western Digital WD8003, WD8013; Hewlett Packard HP27245, HP27247, HP27250.
Имеется информация, что и следующие клоны работают: WD-80x3 clones: LANNET LEC-45; NE2000 clones: Alta Combo, Artisoft LANtastic AE-2, Asante Etherpak 2001/2003, D-Link Ethernet II, LTC E-NET/16 P/N 8300-200-002, Network Solutions HE-203, SVEC 4 Dimension Ethernet, 4-Dimension FD0490 EtherBoard 16, and D-Link DE-600, SMC Elite 16.
Дополнительную информацию по совместимости аппаратуры Ethernet в Linux можно найти в "Linux Ethernet HOWTO".
Linux также поддерживает SLIP, который позволяет использовать модем для выхода в Internet по телефонной линии. В этом случае вам нужен модем, совместимый с вашим SLIP-сервером - большинство серверов требует модемы на 14.4bps, V.32bis. (прим. переводчика: прогресс в модемах быстрее, чем в компьютерах, поэтому данные стареют еще быстрее; сейчас чаще можно услышать про 28.8bps и V.34, что тоже быстро устаревает).
Настройка TCP/IP на вашей системе
В этом разделе мы обсудим, как настраивать связь Ethernet - TCP/IP на вашей системе. Имейте в виду, что описываемый метод (предполагается, что) работает на многих системах, но, разумеется, не на всех. Этого обсуждения должно быть достаточно, чтобы указать вам правильный путь в настройке параметров сети на вашей машине. Но существует множество знаковых и милых деталей, которые мы здесь даже не упоминаем. Мы, все-таки ориентируем вас на Linux Network Administrators' Guide и NET-2-HOWTO.
Прежде всего, мы предполагаем, что у вас есть Linux с инсталлированным TCP/IP. Это включает основных клиентов, таких как telnet и ftp, команды системного администратора, такие как ifconfig и route (обычно находящиеся в /etc), и сетевые настроечные файлы (такие как /etc/hosts). Другие, относящиеся к Linux сетевые документы, указанные выше, рассказывают, как инсталлировать сетевые программы Linux, если это еще не было сделано.
Мы также предполагаем, что ваше ядро было настроено и скомпилировано с поддержкой TCP/IP. Смотрите Раздел 4.7. по поводу компиляции ядра.
Когда это сделано, вы должны модифицировать ряд настроечных файлов, используемых NET-2. Для большинства это простая процедура. К сожалению, существует большое различие между дистрибутивами Linux относительно того, где должны размещаться различные конфигурационные файлы TCP/IP и поддерживающие программы. Чаще они могут быть обнаружены в /etc, но в других случаях их можно отыскать в /usr/etc, /usr/etc/inet, /sbin или в других неожиданных местах.
В худшем случае вы будете вынуждены использовать команду find для определения их местоположения в вашей системе. Имейте также в виду, что не все дистрибутивы хранят программы и файлы описания для NET-2 в одном месте - они могут быть разнесены по нескольким каталогам.
Следующая информация относится в первую очередь к связи по Ethernet. Если вы планируете использовать SLIP, прочитайте этот раздел, чтобы понять концепции, а затем обратитесь к специфическим для SLIP рекомендациям из последующего раздел.
Описание вашей сети
Прежде, чем вы сможете описать (настроить) TCP/IP, вам необходимо определиться со следующей информацией относительно установки сети.
-
IP адрес. Это уникальный адрес машины в точечно-десятичном формате. Например, 128.253.153.54. Ваши сетевые администраторы снабдят вас таким номером.
Если вы настраиваете только режим loopback (т.е. без SLIP, без карт Ethernet, только связь по TCP/IP внутри вашей машины) то ваш IP адрес будет 127.0.0.1.
-
Маска вашей сети (``netmask''). Это "точкосодержащий" квартет, похожий на IP адрес, определяющий, какая часть IP адреса относится к подсети, а какая относится к host (главной машине) этой подсети. (Если вас шокирует эта сетевая TCP/IP терминология - советуем почитать материалы по управлению сетями).
Сетевая маска есть набор бит, который, будучи наложенным на адрес вашей сети, сообщит, к какой подсети относится этот адрес. Это очень важно для маршрутизации (routing), и если вы обнаружите, например, что вы можете свободно общаться с людьми за пределами вашей сети, но не со своими соратниками внутри собственной сети, высока вероятность того, что вы неправильно задали маску.
Администраторы вашей сети должны выбрать сетевую маску при проектировании сети, поэтому они могут сообщить вам правильную маску. Большинство сетей принадлежит классу C подсетей, которые используют сетевую маску 255.255.255.0. Другой класс сетей - B использует 255.255.0.0. Программы NET-2 автоматически выберут маску, которая предполагает отсутствие подсетей по умолчанию, поскольку иное вы не указали явно.
Это применимо также к порту loopback. Поскольку адрес порта loopback всегда 127.0.0.1, сетевая маска для этого порта всегда 255.0.0.0. Вы можете задавать это явно или полагаться на умолчание.
-
Адрес вашей сети. Это ваш IP адрес с наложенной побитовой сетевой маской. Например, если ваша сетевая маска 255.255.255.0, а ваш IP адрес - 128.253.154.32, то адрес вашей сети - 128.253.154.0. А с сетевой маской 255.255.0.0 адрес вашей сети будет 128.253.0.0.
Если вы используете только loopback, у вас нет адреса сети.
-
Ваш бродкаст (broadcast - широковещательный) адрес. Бродкаст адрес используется для раздачи бродкаст пакетов на все машины вашей подсети. Поэтому, если хост-номера машинам вашей подсети даны по последним байтам IP-адресов (сетевая маска 255.255.255.0), ваш бродкаст адрес будет получен из вашего сетевого адреса наложением 0.0.0.255. Например, если ваш IP адрес 128.253.154.32 и ваша сетевая маска 255.255.255.0, то ваш бродкаст адрес 128.253.154.255.
Чисто исторически сложилось, что некоторые сети настроены на использование сетевых адресов как бродкаст адресов. Если у вас возникнут сомнения, пообщайтесь с вашим сетевым администратором. (Во многих случаях бывает достаточно продублировать сетевую настройку других машин в вашей подсети, заменяя, разумеется IP адреса).
Если только вы используете loopback, у вас не будет бродкаст адреса.
-
Ваш шлюзовой (gateway) адрес. Это адрес машины, которая для вас является "шлюзом" во внешний мир (т.е. к машинам не вашей подсети). Во многих случаях шлюзовая машина имеет IP адрес, идентичный вашему, но с ``.1'' в качестве хост-адреса; т.е., если ваш IP адрес 128.253.154.32, ваш шлюз может быть 128.253.154.1. Ваш системный администратор даст вам IP адрес вашего шлюза.
На самом деле, вы можете иметь несколько шлюзов. Шлюз - это просто машина, которая живет одновременно в двух различных сетях (имеет IP адреса различных подсетей) и маршрутизирует пакеты между ними. Многие сети имеют по одному шлюзу "во внешний мир" (к сети, непосредственно с вашей состыкованной), но в некоторых случаях у вас может быть несколько шлюзов в смежные сети.
Если только вы пользуетесь loopback, у вас нет шлюзового адреса. То же самое имеет место, если у вас изолированная сеть.
-
Адрес вашего сервера имен (nameserver). Большинство машин в сети имеют серверы имен, которые переводят имена хостов в IP адреса. Администратор вашей сети скажет адрес вашего сервера имен. Вы можете держать сервер на своей машине, используя named, в этом случае адрес сервера имен будет 127.0.0.1. Заводить сервер имен следует, только если у вас нет выбора, иначе выберите кого-то другого в сети, кто может это обеспечить. Настройка named это совсем другая песня; нам кажется, что вам на этом этапе лучше пообщаться с сетью. С именами вы можете разобраться позже.
Если вы единственный имеете loopback, у вас нет адреса сервера имен.
Пользователи SLIP: Вышеприведенная информация может вам потребоваться, а может и не потребоваться. Разве что адрес сервера имен. При использовании SLIP, ваш IP адрес обычно определяется одним из двух способов: (a) У вас "статический" IP адрес, который не меняется в любое время выхода в сеть; (b) У вас "динамический" адрес, который берется из пула доступных адресов, когда вы связываетесь с сервером. В следующем разделе, посвященном настройке SLIP, это рассматривается более детально.
NET-2 поддерживает полную маршрутизацию, множественность маршрутов, обслуживание подсети (на этом этапе только в пределах байта). Выше описывались основные настройки TCP/IP. Ваши могут быть совсем другими: если есть сомнения, проконсультируйтесь у местных гуру из соседних сетей и посмотрите страницы Руководства про route и ifconfig. Настройка TCP/IP выходит далеко за рамки этой книги; вышенаписанного может быть достаточно большинству людей для начала.
rc-файлы в сети
rc-файлы широко используемые в системе сценарии, выполняемые во время загрузки программой by init, которая запускает всех основных системных демонов (таких как sendmail, cron, и т.п.) и настраивает такие вещи, как сетевые параметры, системное хост-имя и т.п. rc-файлы обычно находятся в каталоге /etc/rc.d, но в других системах они могут быть в /etc.
Здесь мы собираемся описать rc-файлы, используемые при настройке TCP/IP. Файлов два: rc.inet1 и rc.inet2. rc.inet1 используется для настройки базовых сетевых параметров (таких как IP адреса и маршрутизация) и rc.inet2 запускает TCP/IP демонов (telnetd, tftpd и т.д.).
Многие системы объединяют оба этих файла в один, обычно называемый rc.inet или rc.net. Имена, данные вашим rc-файлам роли не играют, лишь бы они выполняли нужные функции и выполнялись во время загрузки программой init. Чтобы это обеспечить, возможно вам потребуется подредактировать /etc/inittab , чтобы выполнить соответствующие rc-файлы. В худшем случае вам придется создать rc.inet1 и rc.inet2 файлы заново и добавить информацию из /etc/inittab.
Как мы говорили, rc.inet1 настраивает базовый сетевой интерфейс. Это включает ваше IP, сетевой адрес и таблицу маршрутизации (routing table) для вашей сети. Таблицы маршрутизации используются для маршрутизации входящих и исходящих сетевых дейтаграм (datagrams) на другие машины. Во многих простых настройках вы имеете три маршрута: один - для посылки пакетов своей собственной машине, другой - для посылки пакетов на другие машины вашей сети, третий - для посылки пакетов на машины, находящиеся за пределами вашей сети (через шлюзовую машину). Есть две программы для настройки этих параметров: ifconfig и route. Обе обычно находятся в /etc или /sbin.
ifconfig используется для настройки интерфейса устройств сети с необходимыми для функций параметрами, такими как IP адрес, маска сети, бродкаст адрес и т п. route используется для создания и модификации таблицы маршрутизации.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.