Слайд 2Сеть в UNIX
Сеть связи –
совокупность технических средств (аппаратных и программных),
обеспечивающих передачу и распределение сообщений.
Организация взаимодействия между устройствами и программами в сети является сложной задачей.
Сеть объединяет разное оборудование, различные операционные системы и программы.
Для осуществления прозрачного взаимодействия необходимо применение общепринятых правил, стандартов.
Слайд 3Сеть в UNIX
Основные группы стандартов: ISO, IEEE, IETF.
ISO (International Organization
for Standardization) – международная организация по стандартизации;
IEEE (Institute of Electrical and Electronics Engineers) – институт инженеров электротехники и электроники;
IETF (Internet Engineering Task Force) - инженерный совет Интернета.
Для организации эффективного сетевого взаимодействия разработан международный стандарт OSI, в котором описана архитектура взаимодействия открытых систем.
Слайд 4Семиуровневая модель OSI
Модель OSI (Open Systems Interconnection)- эталонная модель взаимодействия открытых
систем.
В ней средства сетевого взаимодействия делятся на 7 уровней, для которых определены стандартные названия и функции.
Взаимодействие уровней происходит посредством протоколов.
Протокол - формализованные правила, определяющие последовательность и формат сообщений, которыми обмениваются сетевые компоненты.
Иерархически организованный набор протоколов называется стеком коммуникационных протоколов.
Слайд 6Каждый уровень есть интерфейс к вышележащему уровню, скрывая детали реализации.
Функции
физического, канального и сетевого уровней тесно связаны с используемым в данной сети оборудованием: сетевыми адаптерами, концентраторами, мостами, коммутаторами, маршрутизаторами.
Функции прикладного и сеансового уровней, а также уровня представления реализуются операционными системами и системными приложениями конечных узлов.
Транспортный уровень выступает посредником между этими двумя группами протоколов.
Семиуровневая модель OSI
Слайд 7Удалённые процессы при обмене информацией взаимодействуют только с самым верхним уровнем.
Данные
при продвижении по сети проходят через все уровни на одной машине, а затем в обратном порядке на другой машине.
Функции уровней модели OSI:
1. Физический уровень
- передача битов по физическим каналам (витая пара, оптоволоконный кабель, радиоволны);
- определяются характеристики физических сред передачи данных и параметров электрических сигналов.
Семиуровневая модель OSI
Слайд 82. Канальный уровень
- обеспечивает передачу кадра данных между любыми узлами в
сетях с типовой или произвольной топологией;
- отвечает за установление соединения и корректность доставки данных по физическим каналам.
Адреса, используемые в локальных сетях, называют МАС-адресами (Media Access Control, управление доступом к среде).
Часть канального уровня требует аппаратной реализации, в операционной системе он представлен драйвером сетевой карты.
Слайд 93. Сетевой уровень
- доставка пакетов в сети с произвольной топологией;
- структуризация
сети путем надежной локализации трафика;
- согласование различных протоколов канального уровня.
Сетевой уровень позволяет передавать данные между любыми, произвольно связанными узлами сети.
Это достигается благодаря наличию адресации – каждый узел в сети имеет свой уникальный идентификатор – IP-адрес.
Слайд 104. Транспортный уровень
- обеспечивает надёжную передачу данных между любыми узлами сети
с помощью средств установления соединения, нумерации, буферизации и упорядочивания пакетов.
5. Сеансовый уровень
- поддержание сеанса связи: управление созданием/завершением сеанса, обменом информацией, синхронизацией задач, определение права на передачу данных.
6. Уровень представления
- имеет дело с внешним представлением данных: шифрование/дешифрование, сжатие/распаковка, кодирование/декодирование данных.
7. Прикладной уровень: взаимодействие пользовательских приложений с сетью.
Слайд 11Протоколы Internet: TCP/IP
Стек сетевых протоколов TCP/IP – протоколы сетевого и транспортного
уровней.
Стек TCP/IP поддерживает на нижнем уровне все популярные стандарты физического и канального уровней: для локальных сетей – Ethernet, Token Ring, FDDI, Wi-Fi, для глобальных – PPP, ISDN.
Основные протоколы стека:
- IP (Internet Protocol) относится к сетевому уровню, обеспечивает продвижение пакета по сети;
- TCP (Transmission Control Protocol) - протокол транспортного уровня, гарантирует надёжность доставки пакета.
Слайд 13Сетевой интерфейс в UNIX
Основой сетевой подсистемы UNIX является сетевой интерфейс.
Сетевой интерфейс
– это абстракция, используемая для представления связи канального уровня сети с протоколом TCP/IP в UNIX.
В системе он имеет уникальное имя, состоящее из типа устройства и номера (0 или больше для однотипных устройств).
Под типом устройства может пониматься вид протокола канального уровня (Ethenet – eth) или название драйвера устройства (Realtek – rl).
Слайд 14Интерфейс имеет набор параметров, большинство которых сетевого уровня (IP-адрес, маска сети
и т.п.), а также аппаратный адрес (MAC-адрес).
MAC-адрес состоит из 6-и байтов, записанные в шестнадцатеричной системе исчисления и разделённые двоеточиями.
Пример: 00:0D:60:8D:42:AA.
ifconfig interface - узнать параметры интерфейса interface.
Пример:
ifconfig eth - отображение/настройка параметров сетевого интерфейса eth;
iwconfig wlan - отображение/настройка параметров беспроводного интерфейса wlan.
Сетевой интерфейс в UNIX
Слайд 15$ifconfig
Сетевой интерфейс в UNIX
Слайд 16Сетевой адрес
Сетевой адрес — идентификатор устройства, работающего в компьютерной сети.
Используются два вида адресов:
- MAC-адрес состоит из 2-х частей:
1-ая - определяет производителя оборудования,
2-ая - уникальный номер, присваиваемый производителем.
Обеспечивает уникальный адрес любого устройства в сети.
- IP-адрес также состоит из 2-х частей:
1-ая - адрес подсети,
2-ая - адрес устройства в пределах подсети.
Слайд 17Альтернатива адреса - идентификаторы устройств в форме символических имён, удобных для
запоминания.
Например, в пределах локальной сети — сетевое имя компьютера, в глобальной сети — доменное имя.
Автоматическое определение соответствия между именами и адресами обеспечивают специальные сетевые протоколы (DNS, WINS и т. п.).
Общий сетевой адрес (broadcasting address) используется для отправки пакетов на все доступные узлы сети.
Сетевой адрес
Слайд 18Адрес сети используется для ссылок сети на саму себя.
Пример:
В сети
192.168.0.0/24:
IP-адрес сети - 192.168.0.0,
общий сетевой адрес — 192.168.0.255.
Понятие сетевого идентификатора:
IP-адрес по версии IPv4 хранится в 32 битах.
Запись 192.168.0.0/24 (CIDR) означает, что маска сети - 255.255.255.0.
24 бита являются сетевым идентификатором, а остальные 8 – это адрес конкретного узла (например, компьютера) этой сети. Т.о., в адресе конкретной машины 192.168.0.210: сетевой идентификатор - 192.168.0, а адрес машины - 210.
Сетевой адрес
Слайд 19Вместо маски подсети может быть указан префикс в виде /28.
/28 эквивалентен
маске 255.255.255.224.
255.255.255.224
11111111.11111111.11111111.11110000
1 содержится в 28 битах
Сеть с адресом 192.168.0.0/28 может иметь 16 адресов в подсети. В маске подсети последние 4 бита соответствуют номеру узла, поэтому количество адресов равно 24 = 16. Максимальное количество узлов в сети на 2 меньше, т.е. 14, т.к. 2 адреса в блоке являются начальным и конечным адресами в блоке адресов, относящихся к сети.
Слайд 20IP-адрес
IP-адрес (Internet Protocol Address) — это уникальный сетевой адрес узла в
компьютерной сети, построенной по протоколу IP.
В сети Интернет требуется глобальная уникальность адреса. Для работы в локальной сети требуется уникальность адреса в пределах сети.
Удобной формой записи IP-адреса (IPv4) является запись в виде четырёх десятичных чисел значением от 0 до 255, разделённых точками, например, 192.168.0.210.
В версии IPv6 IP-адрес является 128-битовым. Внутри адреса разделителем является двоеточие (2001:0db8:85a3:0000:0000:8a2e:0370:7334). Допускается запись 2001:0db8:85a3::8a2e:0370:7334.
Слайд 21Маска подсети
Маской подсети (маской сети) называется битовая маска, определяющая, какая часть
IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла.
Например, узел с IP-адресом 192.168.0.210 и маской подсети 255.255.255.0 находится в сети 192.168.0.0 с длиной префикса 24 бита.
С помощью маски подсети можно сказать, что один диапазон IP-адресов будет в одной подсети, а другой диапазон соответственно в другой подсети.
Слайд 22Чтобы получить адрес сети, зная IP-адрес и маску подсети, необходимо применить
к ним операцию поразрядной конъюнкции (логическое И).
Пример:
Разбиение одной большой сети на несколько маленьких подсетей позволяет упростить маршрутизацию.
Маска подсети
Слайд 23Конфигурация IP-сетей
В IP-сетях каждому сетевому интерфейсу присваивается единственный на всю глобальную
сеть адрес.
Для установления связи между интерфейсом и IP-адресом необходимо выполнить команду:
$ifconfig eth0 192.168.1.5 up
Второй сетевой интерфейс lo (loopback) используется для организации сетевых взаимодействий компьютера с самим собой.
Наиболее широко используемый IP адрес в loopback — 127.0.0.1. В IPv4 в него отражается любой адрес в пределах от 127.0.0.0 до 127.255.255.255. IPv6 определяет единственный адрес для этой функции — 0:0:0:0:0:0:0:1 (также записывается как ::1).
Слайд 24Маршрутизация
В глобальной сети необходимо принимать решение о маршруте доставки пакета.
Процесс определения
наилучшего маршрута называется маршрутизацией.
Локальная сеть задаётся маской сети. Маршрутизация не требуется.
Если пакет передаётся между двумя (или более) разными сетями, то на границе этих сетей располагается маршрутизатор.
Маршрутизатор (router)– компьютер или аппаратное устройство, принимающее решение о пересылке пакетов на основании правил и топологии сети.
Слайд 25Маршрутизация
Роутер работает на сетевом уровне модели OSI.
Шлюз (gateway) – маршрутизатор на
границе локальной сети, предоставляющий выход в Internet.
Операционная система хранит таблицу маршрутизации (т.м.).
Поля таблицы: место назначения; имя шлюза; маска сети маршрута; имя интерфейса.
Выводится на дисплей и настраивается с помощью команды route.
Слайд 26
$netstat –rn – просмотреть таблицу, управляющую маршрутизацией пакетов.
Формат команды route:
route
операция -тип адресат шлюз интерфейс
Аргументы:
операция: add (добавить), delete (удалить);
тип: net (сеть), host (машина).
адресат: IP-адрес машины, сети или default;
шлюз: IР-адрес шлюза;
интерфейс: имя сетевого интерфейса.
Слайд 27$route -f – удаление данных обо всех шлюзах
Примеры:
$route add -net 192.168.0.0
netmask 255.255.255.0 eth0 - настройка маршрутизации в локальной сети.
$route add default gw 192.168.0.1 eth0 – отправлять пакеты на шлюз по умолчанию.
$route add –net 192.168.0.0/24 gw 192.168.0.1 - добавить маршрут к сети 192.168.0.0 с маской 255.255.255.0 и следующим адресом перехода 192.168.0.1.
Т. м. хранится файле /proc/net/route.
Настройки сети размещаются в файле /etc/network/interfaces.
Слайд 28Межсетевой экран
Межсетевой экран (firewall, брандмауэр) -средство анализа сетевых и транспортных пакетов.
Позволяет:
избавляться от нежелательной сетевой активности,
манипулировать потоками данных,
преобразовывать служебную информацию.
В различных версиях UNIX функциональность и управление м. э. может отличаться.
В Linux-системах для организации межсетевого экрана используется приложение iptables.
$iptables -L -n –v – отображение состояния м.э.
Слайд 29Концепция iptables
Конвейерная обработка сетевого пакета системой:
Э.1. Получение пакета из сетевого
интерфейса или от системного процесса.
Э.2. Определение предполагаемого маршрута пакета.
Э.3. Отправка пакета через сетевой интерфейс либо какому-нибудь процессу, если он предназначался данному компьютеру.
Слайд 31Примеры использования iptables
iptables -F # Очистить все цепочки таблицы filter
iptables
-A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT # Ко всем пакетам, которые относятся к уже установленным соединениям, применяется действие ACCEPT – пропустить
iptables -P INPUT DROP # В качестве действия по умолчанию - DROP — блокирование пакета
iptables -P OUTPUT ACCEPT # Разрешить все исходящие пакеты
iptables -A INPUT -p tcp --dport 80 –s 192.168.0.0/24 -j REJECT - запретить входящие соединения для сервиса http с хостов сети 192.168.0.0/24, к которой настроена маршрутизация.
Слайд 32Основные сетевые команды
netstat - отображение имеющихся сетевых соединений.
Пример: $netstat –at –
просмотр только tcp соединений.
ping узел – проверка соединения с указанным узлом.
Пример: $ping –c 100 192.168.0.1 – проверяет соединение с узлом 192.168.0.1, отсылая 100 запросов.
$ping –w 5 localhost – пинговать localhost в течение 5 с.
traceroute – примерное определение маршрута следования пакета.
Пример: traceroute yandex.ru покажет маршрут пакета-запроса до yandex.ru.
Слайд 33Основные сетевые команды
mtr – средство диагностики сети (комбинирует ping и traceroute)
Пример:
$mtr googl.com – исследование сетевых соединений с google.com.
host – определение IP-адреса по заданному имени хоста и наоборот.
Пример: $host yandex.ru
$host 8.8.8.8
hostname – отобразить имя компьтера.
telnet - удалённое подключение к терминалу hostname по протоколу TELNET. Информация передаётся без шифрования.
ssh – аналог telnet, но с шифрованием данных.