Обзор стека TCP/IP в QNX 6 Трофимов Александр SWD Software.

Презентация:



Advertisements
Похожие презентации
IDE QNX – практическая работа Трофимов Александр SWD Software.
Advertisements

Разграничение доступа к информационным сетям с помощью групповых политик и IPSec.
Протокол IPSec (RFC 2401). Назначение IPSec Узел АУзел В IP-пакет Разграничение доступа (фильтрация IP-трафика) Обеспечение целостности передаваемых данных.
Работа протоколов стека TCP/IP Борисов В.А. КАСК – филиал ФГБОУ ВПО РАНХ и ГС Красноармейск 2011 г.
Технологии защищенного канала. Физический Канальный Сетевой Транспортный Сеансовый Презентационный Прикладной PPTP Протоколы, формирующие защищенный канал.
Модульное лицензирование Александр Варварик SWD Real-Time Systems Конференция QNX Россия сентября, Санкт-Петербург.
Итоги Сети и системы телекоммуникаций Созыкин А.В.
Протокол IPSec (RFC 2401). Семейство протоколов IPSec Протокол Authentication Header (AH) Протокол Encapsulated Security Payload (ESP) Протокол Internet.
Настройка системы печати в ОС QNX 6 Cергей Зыль SWD Software.
Дисциплина: Организация, принципы построения и функционирования компьютерных сетей Лекция 4 Многоуровневые коммуникации в сетях.
Средства обнаружения атак. Архитектура систем обнаружения атак Модуль слежения Модуль управления Системы на базе узла Системы на базе сегмента.
Сетевой Канальный Физический Прикладной Представит. Сеансовый Транспортный Сетевой Канальный Физический Прикладной Представит. Сеансовый Транспортный Сетевой.
Работа протоколов стека TCP/IP Борисов В.А. Красноармейский филиал ГОУ ВПО «Академия народного хозяйства при Правительстве РФ» Красноармейск 2010 г.
Стандартизация сетевого взаимодействия СТАНДАРТИЗАЦИЯ ПРОЦЕДУР: - выделения и освобождения ресурсов компьютеров, линий связи и коммуникационного оборудования;
«Методы защиты межсетевого обмена данными» Вопросы темы: 1. Удаленный доступ. Виды коммутируемых линий. 2. Основные понятия и виды виртуальных частных.
В СТРОЕННЫЙ МАРШРУТИЗАТОР Участники: Киров Александр Филиппова Анастасия Чуновкин Фёдор Руководители: Бондарев Антон Смирнов Кирилл 1.
Основы построения VPN. Виртуальные частные сети - VPN VPN – Virtual Private Network – имитируют возможности частной сети в рамках общедоступной, используя.
1 Федеральное государственное унитарное предприятие «НАУЧНО-ТЕХНИЧЕСКИЙ ЦЕНТР «АТЛАС»
Фильтрация пакетов. Маршрутизатор. Борисов В.А. КАСК – филиал ФГБОУ ВПО РАНХ и ГС Красноармейск 2011 г.
NMAP nmap свободная утилита c открытым исходным кодом, предназначенная для : свободная утилита разнообразного настраиваемого сканирования IP- сетей с любым.
Транксрипт:

Обзор стека TCP/IP в QNX 6 Трофимов Александр SWD Software

Обзор сетевой подсистемы QNX Модульная схема io-net Функции модулей: Производство данных для высших уровней (например, Ethernet driver обеспечивает данными от сетевой карты стек TCP/IP). Производство данных для низших уровней (например, TCP/IP стек обеспечивает данными Ethernet driver). Восходящий фильтр – фильтр, получающий данные от генератора данных для высших уровней (например, protocol sniffer). Нисходящий фильтр – фильтр, получающий данные от генератора данных для низших уровней (например, Network Address Translation (NAT)). Конвертирование – переводит данные из одного формата в другой (например, между IP и Ethernet).

Обзор сетевой подсистемы QNX Структурная схема io-net TCP/IP стек – вершина иерархии, обеспечивает интерфейс доступный пользователю. Обычно интерфейс сокетов. IP-EN конвертер – для того, чтобы TCP/IP стек мог использовать Ethernet интерфейс, необходимо добавлять/удалять Ethernet заголовки. Такое абстрагирование высших уровней от особенностей аппаратуры позволяет легко добавлять новые типы аппаратуры. А также добавлять фильтры выше или ниже конвертера. IP-EN конвертер также обеспечивает службу ARP (Address Resolution Protocol). Ethernet драйвер – нижний уровень, принимает Ethernet пакеты и помещает их в среду передачи данных и наоборот.

Обзор сетевой подсистемы QNX Схема io-net TCP/IP стек при регистрации говорит io-net, что он производит данные для нижних уровней. Это единственная связь между стеком и драйверами. Для соединения стека с драйверами регистрируются два модуля конвертера. Они говорят io-net, что они забирают IP пакеты сверху и пакеты типа EN (Z) снизу. В результате на нижнем уровне иерархии два различных драйвера Ethernet и два различных драйвера протокола Z. Все модули – это независимые библиотеки, и io-net связывает их между собой. Для взаимодействия модулей надо знать тип модуля и тип пакетов, которые они производят или передают вверх или вниз.

Жизненный цикл пакета. Сверху вниз. Socket library Конечный пользователь Сообщение tx_down() (Есть пакет) rx_down() TCP/IP stack io-net IP-EN driver

Жизненный цикл пакета. Снизу вверх. Данные io-net driver IP-EN tx_up() (Есть пакет) rx_up()

Модули стека TCP/IP в QNX 6.2 Momentics PE МодульОписаниеВозможности /lib/dll/npm-ttcpip.soОблегченный стек TCP/IP для систем с ограниченными ресурсами, реализует часть функциональности полных реализаций TCP/IP стека IPv4, UDP, TCP /lib/dll/npm-tcpip-v4.soСтандартная реализация стека протоколов NetBSD v1.5 IPv4, IP, forwarding, multicast, UDP, TCP, ICMP /lib/dll/npm-tcpip-v6.soПрофессиональный стек протоколов TCP/IP, KAME расширение стека NetBSD v1.5 IPv4, IP, forwarding, multicast, UDP, TCP, ICMP, IPv6, IPSec, tunneling, VPN, fast forwarding, multicast routing

Облегченный стек TCP/IP npm-ttcpip.so - облегченный стек TCP/IP, предназначен для использования в системах с ограниченными ресурсами и реализует часть функциональности полных реализаций TCP/IP стека На данный момент облегченный стек предоставляет следующие возможности: Множественные интерфейсы broadcasting IP fragmentation получение срочных данных (urgent data) raw IP некоторые ICMP сообщения поддержку TCP и UDP для менеджера сети io-net

Облегченный стек TCP/IP В целях предотвращения разрастания размера стека npm- ttcpip.so имеет некоторые ограничения. Он не поддерживает: ifconfig и route для установки конфигурационных параметров netstat – вы можете получить информацию о интерфейсах, маршрутах и соединениях из устройства /proc/ipstats Multicasting сокеты домена UNIX и т.д.

Профессиональный стек TCP/IP npm-tcpip-v6.so - полный стек TCP/IP. Поддерживает сокеты доменов: AF_INET – ARPA Internet AF_INET6 – ARPA Internet version 6 AF_LOCAL – UNIX

IPv6 поведение TCP/UDP Если вы хотите использовать сервер, для обработки и IPv4 и IPv6 трафика, то необходимо запускать два процесса для данного сервера. Это делается путем добавления двух строк в /etc/inetd.conf, одну для tcp4 и одну для tcp6.

IPv6 поведение TCP/UDP При различных комбинациях настройки IPv4/IPv6, inetd ведет себя следующим образом: Если у вас:IPv4 трафикIPv6 трафик Только один сервер на tcp4 Передается серверуНе принимается Два сервера: один на tcp4, другой на tcp6 Передается серверу на tcp4Передается серверу на tcp6 Только один сервер на tcp6 Для некоторых известных конфигураций, может передаваться серверу на tcp6 Передается серверу на tcp6

IPSec IPSec – протокол безопасности для IP уровня стека. IPSec состоит из следующих компонентов: AH (Authentication Header) гарантирует целостность IP пакета и защищает его от несанкционированного изменения посредством присоединения криптографической контрольной суммы, вычисленной односторонней хэш-функцией ESP (Encapsulated Security Payload) защищает содержимое IP пакета от несанкционированного доступа, посредством шифрования содержимого пакета криптографическим алгоритмом с закрытым ключом

IPSec IPSec имеет два режима работы: Транспортный (transport) – защищает peer-to-peer соединения между конечными узлами. Туннельный (tunnel) – поддерживает IP-в-IP инкапсуляцию и разработан для защищенных шлюзов (например, VPN).

IPSec Поведение протокола IPSec контролируется двумя механизмами: Механизм управления ключами (key management engine). Механизм управления стратегией (policy engine). Настраивается посредством PF_KEY API, операции setsockopt() или интерфейса sysctl(). (Утилита sysctl надстройка над функцией sysctl()). Setsockopt() задает поведение на уровне сокетов, а утилита sysctl, определяет поведение по-умолчанию на уровне хоста. IPSec не поддерживает протокол динамического обмена ключами шифрования IKE (Internet Key Exchange). Данный механизм реализуется на прикладном уровне с использованием существующего API

IPSec Управление стратегией Вы можете управлять стратегией IPSec двумя способами: На уровне сокетов, используя setsockopt(). Конфигурировать основанную на пакетном фильтре политику менеджера сокетов с помощью интерфейса PF_KEY или посредством утилиты setkey.

Утилита sysctl Утилита sysctl получает информацию о конфигурации системы и позволяет процессу с надлежащим уровнем привилегий изменять ее. Информация о конфигурации системы представляется в форме MIB (Management Information Base), например net.inet.ip.ttl. В отличии от одноименной утилиты конфигурирования параметров ядра, в QNX sysctl позволяет конфигурировать только параметры сетевой подсистемы.

Утилита sysctl Список параметров сетевой подсистемы, которые можно контролировать (до третьего уровня ): net.inet.ip net.inet.icmp net.inet.tcp net.inet.udp net.inet.ipsec net.inet6.udp6 net.inet6.ip6 net.inet6.icmp6 net.key

IP Filter ipfilter.so – порт ipfilter На основе IP Filter можно строить firewall и NAT. В состав IP Filter также входит ряд бинарных утилит: ipf – утилита для изменения списка правил фильтрации ipfs – сохраняет и восстанавливает информацию для NAT и таблицы состояний ipfstat – возвращает статистику пакетного фильтра ipmon – монитор для сохраненных в журнале пакетов ipnat – пользовательский интерфейс для NAT.

Тестирование стеков Схема тестирования Инструментальная система с генератором пакетов Целевая система с тестируемым стеком Установление TCP соединения Посылка сгенерированного пакета

Тестирование стеков На целевой системе Программа, слушающая порт, и выводящая всю информацию, считанную из сокета на экран Установленное TCP соединение Стек принял пакет, его содержимое выводится на экран Стек не принял пакет, данные в сокет на поступают

Тестирование стеков Система тестов состоит из трех классов, каждый из которых изучает определенную сторону реализации стека TCP/IP: Обработка заголовков Обработка фрагментов Обработка флагов TCP

Тестирование стеков Обработка заголовков. Цель данных тестов – определить, каким образом происходит обработка сетевых пакетов и какие заголовки система считает некорректными. Этапы тестирования: посылка кадра канального уровня с некорректными полями заголовка обработка некорректного IP заголовка посылка TCP сегмента с неправильным номером очереди

Тестирование стеков Обработка фрагментов. Данный класс тестов предназначен для определения той стороны реализации стека, которая связана с обработкой TCP- и IP- фрагментов. Этапы тестирования: посылка IP фрагментов с некорректным заголовком канального уровня посылка IP фрагментов с некорректным заголовком сетевого уровня посылка TCP фрагментов с некорректным заголовком канального уровня посылка TCP фрагментов с некорректным заголовком сетевого уровня посылка TCP фрагментов с некорректным заголовком транспортного уровня посылка IP-фрагментов в различной последовательности обработка перекрывающихся IP-фрагментов посылка TCP фрагментов в различной последовательности обработка перекрывающихся TCP фрагментов

Тестирование стеков Обработка флагов TCP. Эти тесты предназначены для определения того, как система обрабатывает различные комбинации флагов TCP-сегмента (ACK, SYN и FIN), для определения состояния соединения и реакции системы

Спасибо! SWD Software Ltd. Официальный дистрибьютор QNX , Санкт-Петербург, пр. Юрия Гагарина 23 тел.: (812) тел.: (812) факс: (812) web: