Презентация 6-01: введение в сети
Современные вычислительные системы невозможно представить без наличия сетей. Технологии взаимодействия между информационными системами развиваются с 70-х годов, не намного опередив развитие UNIX. Операционная система UNIX почти с самого рождения интегрировала в себя технологии локальных сетей, на её основе затем была построена сеть Internet, распространившаяся ныне по всему миру.
Организация взаимодействия между устройствами и программами в сети является сложной задачей. Сеть объединяет разное оборудование, различные операционные системы и программы – это было бы невозможно без приянтия общепринятых правил, стандартов.
В области компьютерных сетей существует множество международных и промышленных стандартов, среди которых следует особенно выделить международный стандарт OSI и набор стандартов IETF (Internet Engineering Task Force).
Презентация 6-02: взаимодействие открытых систем
В модели OSI, называемой также моделью взаимодействия открытых систем (Open Systems Interconnection – OSI) и разработанной Международной Организацией по Стандартам (International Organization for Standardization – ISO), средства сетевого взаимодействия делятся на семь уровней, для которых определены стандартные названия и функции (см. Рисунок 2.33, «Уровни ISO OSI»).
Каждый уровень предоставляет интерфейс к вышележащему уровню, скрывая детали реализации. При построении транспортной подсистемы какого-либо приложения наибольший интерес представляют функции физического, канального и сетевого уровней, тесно связанные с используемым в данной сети оборудованием: сетевыми адаптерами, концентраторами, мостами, коммутаторами, маршрутизаторами. Функции прикладного и сеансового уровней, а также уровня представления реализуются операционными системами и системными приложениями конечных узлов. Транспортный уровень выступает посредником между этими двумя группами протоколов.
Удалённые процессы при обмене информацией взаимодействуют только с самым верхним уровнем, но данные при продвижения по сети проходят через все уровни на одной машине и затем в обратном порядке на другой машине.
Рассмотрим подробнее назначения каждого из уровней:
Физический уровень выполняет передачу битов по физическим каналам, таким, как витая пара, оптоволоконный кабель или радиоволны. На этом уровне определяются характеристики физических сред передачи данных и параметров электрических сигналов.
Канальный уровень беспечивает передачу кадра данных между любыми узлами в сетях с типовой топологией либо между двумя соседними узлами в сетях с произвольной топологией, отвечает за установление соединения и корректность доставки данных по физическим каналам. В протоколах канального уровня заложена определенная структура связей между компьютерами и способы их адресации. Адреса, используемые на канальном уровне в локальных сетях, часто называют МАС-адресами (Media Access Control, управление доступом к среде). Часть канального уровня требует аппаратной реализации, в операционной системе он, как правило, представлен драйвером сетевой карты.
Сетевой уровень в первую очередь должен предоставлять средства для решения следующих задач:
Сетевой уровень позволяет передавать данные между любыми, произвольно связанными узлами сети (при этом не берёт на себя никаких обязательств по надежности передачи данных). Это достигается благодаря наличию адресации – каждый узел в сети имеет свой уникальный идентификатор.
Реализация протокола сетевого уровня подразумевает наличие в сети специального устройства – маршрутизатора. Маршрутизаторы объединяют отдельные сети в общую составную сеть. К каждому маршрутизатору могут быть присоединены несколько сетей (по крайней мере две).
Транспортный уровень обеспечивает передачу данных между любыми узлами сети с требуемым уровнем надежности. Для этого на транспортном уровне имеются средства установления соединения, нумерации, буферизации и упорядочивания пакетов.
Сеансовый уровень предоставляет средства управления диалогом, позволяющие фиксировать, какая из взаимодействующих сторон является активной в настоящий момент, а также предоставляет средства синхронизации в рамках процедуры обмена сообщениями.
В отличии от нижележащих уровней, которые имеют дело с надежной и эффективной передачей битов от отправителя к получателю, уровень представления имеет дело с внешним представлением данных. На этом уровне могут выполняться различные виды преобразования данных, такие как компрессия и декомпрессия, шифровка и дешифровка данных.
Прикладной уровень – это в сущности набор разнообразных сетевых сервисов, предоставляемых конечным пользователям и приложениям. Примерами таких сервисов являются, например, электронная почта, передача файлов, подключение удаленных терминалов к компьютеру по сети.
Существует несколько групп протоколов (называемые также «стеки протоколов»), которые частично или полностью соответствуют уровням эталонной модели OSI. Для нас наибольший интерес представляет набор протоколов TCP/IP.
Презентация 6-03: протоколы Internet: TCP/IP
Протоколы TCP/IP (Transmission Control Protocol / Internet Protocol) были разработаны по заказу Министерства обороны США 30 лет назад для связи экспериментальной сети ARPAnet и представляет собой набор общих протоколов для разнородной вычислительной среды. Большой вклад в развитие стека TCP/IP внёс университет Беркли, реализовав этот протокол для операционнной системы UNIX. Популярность UNIX и удачные идеи, заложенные в TCP/IP, привели к образованию и бурному развитию международной сети Internet. Все протоколы семейства TCP/IP и связанные с ними проходят стандартизацию в организации IETF через выпуск так называемых RFC (Request For Comment) документов.
Протоколы, входящие в TCP/IP частично соответствуют модели OSI (см. Рисунок 2.34, «Соответствие стека TCP/IP модели OSI»). Стек TCP/IP поддерживает на нижнем уровне все популярные стандарты физического и канального уровней: для локальных сетей – Ethernet, Token Ring, FDDI, для глобальных – PPP, ISDN. Основными протоколами стека, давшими ему название, являются протоколы IP и TCP, относящиеся соответственно к сетевому и транспортному уровню. IP обеспечивает продвижение пакета по сети, TCP гарантирует надёжность его доставки.
За долгие годы использования стек TCP/IP обзавёлся множеством протоколов прикладного уровня: FTP, SMTP, HTTP и т.п..
Поскольку стек TCP/IP изначально создавался для глобальной сети, он имеет много особеностей, дающих ему преимущество перед другими протоколами, когда речь заходит о глобальных связях. Это способности фрагментации пакетов, гибкая система адресации, простота широковещательных запросов.
Сегодня набор протоколов TCP/IP самый распространённый протокол вычислительных сетей, к тому же он является наиболее «оригинальным» для UNIX-систем. Рассмотрим, как производится администрирование этих протоколов в UNIX.
Презентация 6-04: сетевой интерфейс в UNIX
Основной сетевой подсистемы UNIX является сетевой интерфейс. Сетевой интерфейс – это абстракция, используемая для представления связи канального уровня сети с протоколом TCP/IP в UNIX.
Каждый сетевой интерфейс в системе имеет уникальное имя, сотстоящее
из типа устройства и номера (0 или
больше для однотипных устройств). Под типами устройств в различных UNIX-системах
может пониматься вид протокола канального уровня
(Ethenet – eth
) или название драйвера устройства
(Realtek – rl
).
Интерфейс имеет набор параметров, большинство которых относятся к сетевому уровню (IP-адрес, маска сети и т.п.). Важным параметром сетевого интерфейса является аппаратный адрес (В Ethernet аппаратный адрес называется MAC-адрес и состоит из шести байтов, которые принято записывать в шестнадцатеричной системе исчисления и разделять двоеточиями).
Узнать параметры интерфейса можно с помощью команды ifconfig, указав в качестве аргумента его имя:
Пример 2.5. Пример выполнения команды ifconfig
desktop ~ # ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:0D:60:8D:42:AA inet addr:192.168.1.5 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:6160 errors:0 dropped:0 overruns:0 frame:0 TX packets:5327 errors:0 dropped:0 overruns:0 carrier:0 collisions:1006 txqueuelen:1000 RX bytes:3500059 (3.3 Mb) TX bytes:2901625 (2.7 Mb) Base address:0x8000 Memory:c0220000-c0240000 desktop ~ # ifconfig lo lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:188 errors:0 dropped:0 overruns:0 frame:0 TX packets:188 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:14636 (14.2 Kb) TX bytes:14636 (14.2 Kb)
Создание сетевого интерфейса производится в момент загрузки драйвера сетевой карты или создания логического соединения (например, в PPP). Настройка сетевых параметров, связанных с интерфейсом производится той же командой ifconfig, о чем будет сказано далее.
Для диагностики трафика на канальном уровне применяется специальные программы. Самыми распространёнными в UNIX являются tcpdump и ethereal. При «прослушивании» канала, эти программы взаимодействуют с заданным сетевым интерфейсом.
Презентация 6-05: сетевой адрес
В IP-сетях каждому сетевому интерфейсу присваивается некоторый единственный на всю глобальную сеть адрес, который не зависит от среды передачи данных и всегда имеет один и тот же формат.
Адрес, определяемый протоколом IP, состоит из четырех байтов, записываемых традиционно в десятичной системе счисления и разделяемых точкой. Адрес сетевого интерфейса eth0 из примера – 192.168.1.5.
Второй сетевой интерфейс из примера, lo, – так называемая заглушка (loopback), которая используется для организации сетевых взаимодействий компьютера с самим собой: любой посланный в заглушку пакет немедленно обрабатывается как принятый оттуда. Заглушка обычно имеет адрес 127.0.0.1.
Для установления связи между интерфейсом и IP-адресом необходимо выполнить команду:
desktop ~ # ifconfig eth0 192.168.1.1 up
Презентация 6-06: маршрутизация
Маска подсети позволяет определить все узлы, находящиеся в той же локальной сети. Пакеты к ним будут доставляться напрямую через канальный уровень.
Более сложный вопрос встает, если IP-адрес компьютера-адресата не входит в
локальную сеть компьютера-отправителя. Ведь и в этом случае пакет необходимо
отослать какому-то абоненту локальной сети, с тем, чтобы тот перенаправил его
дальше. Этот абонент, маршрутизатор, подключен к нескольким
сетям, и ему вменяется в обязанность пересылать пакеты между ними по
определенным правилам. В самом простом случае таких сетей
две: «внутренняя», к которой подключены компьютеры,
и «внешняя», соединяющая маршрутизатор со всей глобальной
сетью. Таблицу, управляющую маршрутизацией пакетов, можно просмотреть с помощью
команды netstat -r или route (обе команды имеют
ключ -n
, заставляющий их использовать в
выдаче IP-адреса, а не имена компьютеров):
Пример 2.6. Пример выполнения команды route
desktop ~ # route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
Компьютер или аппаратное устройство, осуществляющее маршрутизацию между локальной сетью и Internet обычно называется шлюзом.
Задавать параметры маршрутизации можно с помощью той же команды route.
Презентация 6-07: протокол ICMP
Есть такие протоколы уровня IP, действие которых этим уровнем и ограничивается. Например, служебный протокол ICMP (Internet Control Message Protocol), предназначенный для передачи служебных сообщений.
Примером применения ICMP является утилита ping, которая позволяет проверить работоспособность узлов в сети. Другое применение ICMP – сообщать отправителю, почему его пакет невозможно доставить адресату, или передавать информацию об изменении маршрута, о возможности фрагментации и т. п.
Протоколом ICMP пользуется утилита traceroute, позволяющая приблизительно определять маршрут следования пакета:
Пример 2.7. Пример выполнения команды traceroute
desktop ~ # traceroute ya.ru traceroute to ya.ru (213.180.204.8), 64 hops max, 40 byte packets 1 195.91.230.65 (195.91.230.65) 0.890 ms 1.907 ms 0.809 ms 2 cs7206.rinet.ru (195.54.192.28) 0.895 ms 0.769 ms 0.605 ms 3 ix2-m9.yandex.net (193.232.244.93) 1.855 ms 1.519 ms 2.95 ms 4 c3-vlan4.yandex.net (213.180.210.146) 3.412 ms 2.698 ms 2.654 ms 5 ya.ru (213.180.204.8) 2.336 ms 2.612 ms 3.482 ms
Утилита traceroute показывает список абонентов, через которых проходит пакет по пути к адресату, и потраченное на это время. Однако список этот приблизительный. Строго говоря, неизвестно, каким маршрутом шла очередная группа пакетов, потому что с тех пор, как посылалась предыдущая группа, какой-нибудь из промежуточных маршрутизаторов мог передумать и послать новые пакеты другим путем.
Презентация 6-08: сетевые соединения
Транспортных протоколов в TCP/IP два – это TCP (Transmission Control Protocol, протокол управления соединением) и UDP (User Datagram Protocol). UDP устроен просто. Пользовательские данные помещаются в единственный транспортный пакет-датаграмму, которой приписываются обычные для транспортного уровня данные: адреса и порты отправителя и получателя, после чего пакет уходит в сеть искать адресата. Проверять, был ли адресат способен этот пакет принять, дошел ли пакет до него и не испортился ли по дороге, предоставляется следующему – прикладному – уровню.
В UNIX существует прозрачный механизм именования сетевых протоколов. Согласно
стандартам Internet для большинства приложений существуют стандартные
порты, на которых соответствующие приложения должны принимать
соединения. В файле /etc/services
можно увидеть список
соответствия имён протоколов номерам портов. Благодаря этому файлу, в UNIX можно
во всех утилитах вместо номера порта писать имя соответвтвующего протокола.
Другое дело – TCP. Этот протокол очень заботится о том, чтобы передаваемые данные дошли до адресата в целости и сохранности. Для этого предпринимаются следующие действия:
Для просмотра всех существующих в настоящий момент сетевых соединений можно воспользоваться командой netstat:
Пример 2.8. Пример выполнения команды netstat
desktop ~ # netstat -an Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:32769 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:32770 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 192.168.11.5:34949 83.149.196.70:5223 ESTABLISHED tcp 0 0 192.168.11.5:39833 213.248.55.180:5223 ESTABLISHED tcp 0 0 192.168.11.5:59577 192.168.11.1:22 TIME_WAIT udp 0 0 0.0.0.0:32768 0.0.0.0:* udp 0 0 0.0.0.0:32769 0.0.0.0:* udp 0 0 0.0.0.0:111 0.0.0.0:*
Для того, чтобы каждый раз при загрузке не задавать сетевые параметры, существует возможность задать настройки сети в конфигурационных файлах операционной системы. В этом случае при старте системы будет произведена процедура настройки интерфейса, маршрутизации и т.п..
Такие файлы конфигурации являются специфичными для отдельно взятых версий UNIX. Примеры будут рассмотрены на практическом занятии.
Презентация 6-09: служба доменных имён
В предыдущих примерах использовался
ключ -n
многих сетевых утилит, чтобы
избежать путаницы между IP-адресами и доменными именами компьютеров. С другой
стороны, доменные имена – несколько слов (часто осмысленных),
запоминать гораздо удобнее, чем адреса (четыре числа).
Когда-то имена всех компьютеров в сети, соответствующие IP-адресам, хранились
в файле /etc/hosts
. Пока абоненты Internet были
наперечет, поддерживать правильность его содержимого не составляло труда. Как
только сеть начала расширяться, неувязок стало больше. Трудность была не
только в том, что содержимое hosts быстро менялось, но и в том, что за
соответствие имен адресам в различных сетях отвечали разные люди и разные
организации. Появилась необходимость структурировать глобальную сеть не только
топологически (с помощью IP и сетевых масок), но и административно, с
указанием, за какие группы адресов кто отвечает.
Проще всего было структурировать сами имена компьютеров. Вся сеть была поделена на домены – зоны ответственности отдельных государств («us», «uk», «ru», «it» и т. п.) или независимые зоны ответственности («com», «org», «net», «edu» и т. п.). Для каждого из таких доменов первого уровня должно присутствовать подразделение, выдающее всем абонентам имена, заканчивающиеся на «.домен» Подразделение обязано организовать и поддерживать службу, заменяющую файл hosts: любой желающий имеет право узнать, какой IP-адрес соответствует имени компьютера в этом домене или какому доменному имени соответствует определенный IP-адрес.
Такая служба называется DNS (Domain Name Service, служба доменных имен). Она имеет иерархическую структуру. Если за какую-то группу абонентов домена отвечают не хозяева домена, а кто-то другой, ему выделяется поддомен (или домен второго уровня), и он сам распоряжается именами вида «имя_компьютера.поддомен.домен». Таким образом, получается нечто вроде распределенной сетевой базы данных, хранящей короткие записи о соответствии доменных имен IP-адресам.
В самом простом случае для того, чтобы сказать системе, какой сервер доменных
имён использовать, необходимо изменить
файл /etc/resolv.conf
. В более сложных системах можно
установить и настроить собственный сервер доменных имён.
Для проверки работы системы DNS используются утилиты dig и host.
Презентация 6-10: удалённый терминал
Концепция терминала, описанная в главе «Терминал», может быть расширена на сеть. Действительно, было бы удобно получить доступ к удалённой машине и работать с ней как за обычными монитором и клавиатурой. Отпадает необходимость иметь аппаратный терминал к каждому хосту, можно зайти терминалом на один хост, затем удаленным терминалом по сети на любой другой хост. В современных условиях повсеместности сети Internet, удалённые терминалы становятся основным рабочим инструментом администратора системы.
В сетях TCP/IP существует несколько приложений, позволяющих осуществить терминальный заход. Рассмотрим два из них: telnet и ssh. Оба построены по единому клиент-серверному принципу.
Telnet – стандартное приложение, которое присутствует практически в каждой реализации TCP/IP. Оно может быть использовано для связи между хостами, работающими пол управлением различных операционных систем. Telnet использует согласование опций клиента и сервера, чтобы определить, какие характеристики присутствуют с той и с другой стороны.
Клиент telnet взаимодействует и с пользователем, находящимся за терминалом, и с протоколами TCP/IP. Обычно, все что пользователь вводит с клавиатуры отправляется по TCP соединению, а все что приходит по соединению попадает на терминал.
Сервер telnet обычно взаимодействует с так называемыми псевдотерминальными устройствами в UNIX системах. Это делает его похожим на командный интерпритатор (shell), который запускается на сервере, или на любую программу, которая запускается из командной оболочки, так как именно они общаются с терминальными устройствами. Некоторые приложения, например, полноэкранные редакторы, считают, что они общаются с терминальным устройством.
Клиент telnet имеет еще одно полезное преминение. С его помощью можно тестировать стандартные сетевые протоколы – если в качестве порта назначения назначить порт соответствующего приложения. Telnet отправляет текстовые строки, разделённые знаками переноса строки, что делает его совместимым со многими протоколами Internel (SMTP, HTTP и т.п.).
Программа telnet обладает значительным недостатком – вся информация в ней (в том числе аутентификация пользователей) производится открытым текстом. В современных условиях глобальной сети это уже небезопасно. Решением этой проблемы является программа ssh, которая, будучи аналогичной по функциональности программе telnet, устанавливает защищённое соединение и предоставляет удалённый терминал с шифрацией всего промежуточного трафика.
В настоящее время для удалённого администрирования серверами в Internet применяется исключительно команда ssh.
Прокси-сервер – специальная служба, расположенная между локальной сетью и Internet, которая обеспечивает доступ в Internet по протоколам HTTP, FTP и т.п. всем локальным компьютерам.
Такой сервер может поддерживать аутентификацию пользователей, учёт и фильтрацию трафика.
Недостатком такой схемы является то, что клиент в локальной сети должен явным образом устанавливать соединение с прокси-сервером для запроса к удаленному хосту в Internet.
Презентация 6-11: межсетевой экран iptables
В UNIX существует мощный механизм анализа сетевых и транспортных пакетов, позволяющий избавляться от нежелательной сетевой активности, манипулировать потоками данных и даже преобразовывать служебную информацию в них. Обычно такие средства носят название firewall («fire wall» – противопожарная стена, брандмауэр), общепринятый русский термин – межсетевой экран.
В различных версиях UNIX функциональность и управление межсетевым экраном может значительно отличаться. В данных лекциях будет рассматриваться приложение iptables, которое используется для организации межсетевого экрана в Linux.
Суть iptables в следующем. Обработка сетевого пакета системой представляется как его конвейерная обработка. Пакет нужно получить из сетевого интерфейса или от системного процесса, затем следует выяснить предполагаемый маршрут этого пакета, после чего отослать его через сетевой интерфейс либо отдать какому-нибудь процессу, если пакет предназначался нашему компьютеру. Налицо три конвейера обработки пакетов: «получить – маршрутизировать – отослать» (действие маршрутизатора), «получить – маршрутизировать – отдать» (действие при получении пакета процессом) и «взять – маршрутизировать – отослать» (действие при отсылке пакета процессом).
Между каждыми из этих действий системы помещается модуль межсетевого экрана, именуемый цепочкой. Цепочка обрабатывает пакет, исследуя, изменяя и даже, возможно, уничтожая его. Если пакет уцелел, она передает его дальше по конвейеру. В этой стройной схеме есть два исключения. Во-первых, ядро Linux дает доступ к исходящему пакету только после принятия решения о его маршрутизации, поэтому связка «взять – маршрутизировать» остается необработанной, а цепочка, обрабатывающая исходящие пакеты (она называется OUTPUT) вставляется после маршрутизации. Во-вторых, ограничения на «чужие» пакеты, исходящие не от нас и не для нас предназначенные, существенно отличаются от ограничений на пакеты «свои», поэтому после маршрутизации транзитные пакеты обрабатываются еще одной цепочкой (она называется FORWARD). Цепочка, обслуживающая связку «получить – маршрутизировать», называется PREROUTING, цепочка, обслуживающая связку «маршрутизировать – отдать» – INPUT, а цепочка, стоящая непосредственно перед отсылкой пакета – POSTROUTING (см. Рисунок 2.35, «Обработка пакета в iptables»).
Если пакет не имеет свойств, требуемых первым правилом, к нему применяется второе, если второе также не подходит – третье, и так вплоть до последнего, правила по умолчанию, которое применяется к любому пакету. Если свойства пакета удовлетворяют правилу, над ним совершается действие. Действие DROP уничтожает пакет, а действие ACCEPT немедленно выпускает его из таблицы, после чего пакет движется дальше по конвейеру. Некоторые действия, например LOG, никак не влияют на судьбу пакета, после их выполнения он остается в таблице: к нему применяется следующее правило, и т. д. до ACCEPT или DROP.
Одной из важных функций сетевого экрана является подмена адресов и модификация сетевых пакетов. NAT (Network Address Translation – подмена сетевых адресов) – это механизм, позволяющий организовать передачу пакетов между сетями, не имеющими сведений о сетевых адресах друг друга. Этот процесс, чем-то схожий с маршрутизацией, позволяет организовывать шлюзы локальных сетей в Internet, распределять внешние соединения на отдельные машины внутри сети и т.п..
Следует помнить, что чем больше транспортных соединений отслеживается межсетевым экранам, тем больше требуется оперативной памяти ядру Linux и тем медленнее работает процедура сопоставления проходящих пакетов таблице. Впрочем, мощность современных компьютеров позволяет без каких-либо затруднений обслуживать преобразование адресов для сети с пропускной способностью 100Мбит/с и даже выше.
Таким образом, администратору возможны несколько функций воздействия на пакеты: фильтрация, подмена адресов, изменение других параметров пакетов. Пример организации межсетевого экрана будет рассмотрен на практическом занятии.
Сеть состоит из различных аппаратно-программных узлов, для объединения которых используются стандартные протоколы. Эталонной моделью взаимодействия таких систем является семиуровневая модель OSI.
Протокол TCP/IP частично реализует уровни OSI. Основные протоколы IP (сетевого уровня) и TCP (транспортного уровня) позволили объединить разрозненные локальные сети в глобальную сеть Internet.
В UNIX основной сетевого взаимодействия является интерфейс, который находится между канальным и сетевым уровнем. Конфигурация TCP/IP включает в себя настройку интерфейса, маршрутизации и сервисов Internet, в первую очередь сервера доменных имен.
Для удаленного управления компьютерами используется программа telnet и её современных защищённый аналог – ssh.
Важным элементом сетевой мнфраструктуры является межсетевой экран, который позволяет ограничить сетевой трафик и изменить его свойства. На лекции был рассмотрен межсетевой экран Linux – iptables.
Ключевые термины: OSI, физический уровень, канальный уровень, МАС-адрес, сетевой уровень, маршрутизатор, транспортный уровень, сеансовый уровень, уровень представления, прикладной уровень, сетевой интерфейс, IP-адрес, шлюз, служба доменных имен, удалённый терминал, прокси-сервер, межсетевой экран, цепочка, NAT