Глава 29 Доступ к канальному уровню

Глава 29

Доступ к канальному уровню

29.1. Введение

В настоящее время большинство операционных систем позволяют приложению получать доступ к канальному уровню. Это подразумевает следующие возможности:

1. Отслеживание пакетов, принимаемых на канальном уровне, что, в свою очередь, позволяет запускать такие программы, как tcpdump, на обычных компьютерных системах (а не только на специальных аппаратных устройствах для отслеживания пакетов). Если добавить к этому способность сетевого интерфейса работать в смешанном режиме (promiscuous mode), приложение сможет отслеживать все пакеты, проходящие по локальному кабелю, а не только предназначенные для того узла, на котором работает эта программа.

ПРИМЕЧАНИЕ

Эта возможность не так полезна в коммутируемых сетях, которые получили широкое распространение в последнее время. Дело в том, что коммутатор пропускает трафик на конкретный порт только в том случае, если этот трафик адресован конкретному устройству или устройствам, подключенным к этому порту, каким бы трафик ни был: направленным, широковещательным или многоадресным. Для того чтобы получать трафик, передаваемый через другие порты коммутатора, нужно сначала переключить свой порт коммутатора в режим контроля (monitor mode или port mirroring). Заметьте, что многие устройства, которые обычно не считают коммутаторами, на самом деле являются таковыми. Например, двухскоростной концентратор 10/100 обычно является двухпортовым коммутатором: один порт для сетей, работающих на 100 Мбит/с, другой — для сетей на 10 Мбит/с.

2. Возможность запуска определенных программ как обычных приложений, а не как частей ядра. Скажем, большинство версий Unix сервера RARP — это обычные приложения, которые считывают запросы RARP с канального уровня (запросы RARP не являются дейтаграммами IP), а затем передают ответы также на канальный уровень.

Три наиболее распространенных средства получения доступа к канальному уровню в Unix — это пакетный фильтр BSD (BPF, BSD Packet Filter), DLPI в SVR4 (Datalink Provider Interface — интерфейс поставщика канального уровня) и интерфейс пакетных сокетов Linux (SOCK_PACKET). Мы приводим в этой главе обзор перечисленных средств, а затем описываем libcap — открытую для свободного доступа библиотеку, содержащую функции для захвата пакетов. Эта библиотека работает со всеми тремя перечисленными средствами, и использование библиотеки позволяет сделать наши программы не зависящими от фактического способа обеспечения доступа к канальному уровню, применяемому в данной операционной системе. Мы описываем эту библиотеку, разрабатывая программу, которая посылает запросы серверу имен DNS (мы составляем свои собственные дейтаграммы UDP и записываем их в символьный сокет) и считывает ответ при помощи libcap, чтобы определить, добавляет ли сервер имен контрольную сумму в дейтаграммы UDP.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Доступ к FTP-серверам

Из книги Музыкальный центр на компьютере автора Леонтьев Виталий Петрович

Доступ к FTP-серверам Как и в случае с WWW, для доступа к «виртуальному складу» FTP вам необходим его адрес – брат-близнец (а иногда – и тезка) уже знакомых нам адресов сайтов или страничек: ftp://ftp.microsoft.com/pub/support/util/flle.zipВероятно, вам не нужно объяснять, что значит первая часть


R.11.7 Множественный доступ

Из книги Справочное руководство по C++ автора Страустрап Бьярн

R.11.7 Множественный доступ Если добраться до имени можно несколькими путями по графу, задающему множественное наследование, то право доступа этого имени считается максимальным из прав, получаемых на разных путях. Поясним это примером:class W { public: void f(); };class A: private virtual W {};class B:


ГЛАВА 22. Доступ к базам данных с помощью ADO.NET

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

ГЛАВА 22. Доступ к базам данных с помощью ADO.NET Если вы не являетесь профессиональным разработчиком видеоигр, вас, наверное, заинтересует тема доступа к базам данных. Как и следует ожидать, платформа .NET определяет целый ряд пространств имен, обеспечивающих взаимодействие с


Доступ

Из книги Asterisk™: будущее телефонии Второе издание автора Меггелен Джим Ван


Доступ к GUI

Из книги Windows Script Host для Windows 2000/XP автора Попов Андрей Владимирович

Доступ к GUI После завершения установки и перезагрузки компьютера можно переходить к GUI Asterisk. URL, используемый для доступа к GUI Asterisk, - это IP-адрес или имя хоста, которое выводится на экран после перезагрузки компьютера. Введите этот IP-адрес в адресной строке броузера. С


Глава 5 Доступ из сценариев к файловой системе

Из книги Справочник по Flash автора Коллектив авторов

Глава 5 Доступ из сценариев к файловой системе Сценарии WSH позволяют получить полный доступ к файловой системе компьютера, в отличие от JScript- или VBScript-сценариев, внедренных в HTML-страницы, где в зависимости от уровня безопасности, который устанавливается в настройках


loadVariablesNum - Прикрепляет группу внешних переменных к уровню документа

Из книги Справочник по JavaScript автора Коллектив авторов

loadVariablesNum - Прикрепляет группу внешних переменных к уровню документа loadVariablesNum(Глобальная функция)Прикрепляет группу внешних переменных к уровню документаСинтаксис:loadVariablesNum (url, level); loadVariablesNum (url, level, method);Аргументы:Функция loadVariablesNum() почти идентична loadVariables(), но требует


Доступ к слоям

Из книги MySQL 5.0. Библиотека программиста автора Гольцман Виктор Иосифович

Доступ к слоям Все слои, определенные в документе, доступны как элементы коллекции layers.document.layers[2];document.layers["somelayer"];NN поддерживает прямой доступ к слоям по имени. Имена слоям даются с помощью атрибута NAME тегов <LAYER> и <ILAYER>:document.somelayer;Для доступа к слою, находящемуся


Глава 4 Доступ к базе данных из веб-приложений

Из книги Linux автора Стахнов Алексей Александрович

Глава 4 Доступ к базе данных из веб-приложений Данная глава посвящена использованию базы данных MySQL в веб-приложениях, написанных на языках PHP, Perl и Java. При этом мы будем считать, что этими языками программирования вы владеете, и будем рассматривать только операции


Глава 28 Доступ к удаленным компьютерам

Из книги Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform автора Кёртен Роб

Глава 28 Доступ к удаленным компьютерам Мы уже неоднократно упоминали о том, что любая UNIX-подобная операционная система может удаленно администрироваться и конфигурироваться. Говорили мы и о возможности удаленной работы на компьютере под управлением Linux, а также и об


Активность прерываний по уровню и по фронту

Из книги Linux глазами хакера автора Флёнов Михаил Евгеньевич

Активность прерываний по уровню и по фронту Недостает еще одного фрагмента мозаики. Большинство контроллеров прерываний могут быть запрограммированы на чувствительность либо к уровню сигнала прерывания, либо к его фронту.В режиме чувствительности по уровню считается,


10.3.1. Доступ

Из книги IT-безопасность: стоит ли рисковать корпорацией? автора Маккарти Линда

10.3.1. Доступ Такие директивы определяют основные права доступа к FTP-серверу. Давайте рассмотрим основные из них:? class имя type адреса — позволяет организовать классы пользователей по их типу и адресу. В нашем конфигурационном файле указана следующая строка:class all anonymous,guest,real


Глава 4 Сетевой доступ

Из книги Операционная система UNIX автора Робачевский Андрей М.

Глава 4 Сетевой доступ Обнаружение играет очень важную роль в любой архитектуре безопасности. Рано или поздно противник захочет скомпрометировать вашу организацию, и на его стороне будут время и ресурсы. Для эффективного обнаружения большую важность имеют уровни


Доступ к потоку

Из книги Секреты приложений Google автора Балуев Денис

Доступ к потоку Как и для обычных драйверов устройств, рассмотренных ранее, прежде чем процесс сможет получить доступ к драйверу STREAMS, необходимо встроить драйвер в ядро системы и создать специальный файл устройства — файловый интерфейс доступа. Независимо от того, как


Мобильный доступ

Из книги автора

Мобильный доступ Для доступа к календарям с экранов сотовых телефонов нам с вами явно стоит воспользоваться облегченной, мобильной версией, доступной по адресу http://www.google.com/calendar/m. В ней есть только самое необходимое – повестка дня на несколько недель вперед