В представленной статье описана технология построения динамических виртуальных сетей. Подробно изложен процесс их конфигурирования на оборудовании Cisco.
В настоящее время на крупных предприятиях широко используются динамические локальные сети. В представленной статье описана технология построения динамических виртуальных сетей. Подробно изложен процесс их конфигурирования на оборудовании Cisco.
Рассмотрено создание программы, которая позволяет решетить следующие проблемы:
Изложена настройка и использование программы, а так же конфигурирование коммутаторов для взаимодействия с ней.
Коммутатор Ethernet физически сегментирует локальную вычислительную сеть (ЛВС) на отдельные коллизионные домены. Однако каждый сегмент является частью одного широковещательного домена. Все сегменты коммутатора составляют один широковещательный домен. Это означает, что узел одного сегмента способен установить широковещательный режим на всех узлах всех сегментов.
Виртуальная сеть (virtual LAN, VLAN) представляет собой логическое объединение сетевых устройств или пользователей, не ограниченное одним физическим сегментом. Устройства или пользователи VLAN могут быть сгруппированы по выполняемым функциям, по принадлежности к одной организации, по характеру используемых приложений и т.д., независимо от их физического расположения в сегментах. VLAN создает единое широковещательное пространство, не ограниченное физическим сегментом, и его можно рассматривать как подсеть.
Создание VLAN производится в коммутаторе с помощью соответствующего программного обеспечения. VLAN не стандартизованы и требуют использования лицензионного программного обеспечения от производителя коммутатора.
В первоначальных реализациях виртуальных сетей использовалась разметка портов, которая объединяла в широковещательный домен группы устройств, выбираемые по умолчанию. Современные требования включают в себя необходимость расширения сферы действия виртуальной сети на всю сеть. Такой подход позволяет объединить географически разделенных пользователей посредством создания виртуальной локальной сети. Конфигурация виртуальной сети осуществляет скорее логическое, чем физическое объединение (рис. 1.1).
Рис. 1.1 «Пример использования VLAN»
Динамические виртуальные сети (dynamic VLAN) представляют собой логическое объединение портов коммутатора, которые могут автоматически определять свое расположение в виртуальной сети. Функционирование динамической виртуальной сети основывается на МАС - адресах, на логической адресации или на типе протокола пакетов данных. При первоначальном подключении станции к неиспользуемому порту коммутатора, соответствующий коммутатор проверяет МАС - адрес в базе данных управления виртуальной сетью и динамически устанавливает соответствующую конфигурацию на данном порте. Основными достоинствами такого подхода является уменьшение объема работ в монтажном шкафу при добавлении нового пользователя или при переезде уже существующего и централизованное извещение всех пользователей при добавлении в сеть неопознанного пользователя. Основная работа в этом случае заключается в установке базы данных в программное обеспечение управления виртуальной сетью и в поддержания базы данных, содержащей точную информацию обо всех пользователях сети.
Добавление новых пользователей, их переезд и изменение расположения:
Современные компании находятся в состоянии непрерывной реорганизации. В среднем 20 - 40% работников физически меняют свое расположение каждый год. Эти переезды, добавления новых пользователей и изменения структуры сети представляют собой значительную нагрузку сетевых администраторов и вызывают большую часть расходов, связанных с поддержанием работы сети. Многие переезды требуют изменения прокладки кабелей и почти все переезды требуют изменения адресации станций и установки новой конфигурации маршрутизаторов и концентраторов.
Виртуальные сети представляют собой эффективный механизм управления этими изменениями и уменьшения расходов, связанных с установкой новой конфигурации концентраторов и маршрутизаторов. Пользователи виртуальной локальной сети могут совместно использовать одно и то же сетевое адресное пространство (т.е. IP-подсеть) независимо от их физического расположения. Если пользователь виртуальной сети переезжает из одного места в другое, оставаясь внутри той же самой виртуальной сети, то изменение положения пользователя требует всего лишь подключения его компьютера к одному из портов коммутатора и включения этого порта в прежнюю виртуальную сеть.
Управление широковещанием:
Потоки широковещательных сообщений циркулируют в каждой сети. Частота появления широковещательных сообщений зависит от типа приложения, типа серверов, количества логических сегментов и характера их использования. Хотя многие приложения за последние годы были модифицированы таким образом, чтобы уменьшить число посылаемых ими широковещательных сообщений, разрабатываемые в настоящее время новые мультимедийные приложения интенсивно используют широковещание и множественную (групповую) адресацию (multicast).
Виртуальные сети существенно уменьшает общий широковещательный поток, освобождает полосу пропускания для потока данных пользователей и снижает общую чувствительность сети к широковещательной лавине (broadcast storm).
Чем меньше группа виртуальной сети, тем меньше количество пользователей, которые получают широковещательные сообщения, распространяемые внутри какой-либо группы. Группировка пользователей виртуальной сети может также выполняться на основе типа используемых приложений или типа широковещательных сообщений, поступающих от приложений. Можно поместить пользователей, совместно использующих приложения с высокой широковещательной активностью, в одну группу и распределить приложение по всей сети предприятия.
Обеспечение большей безопасности сети:
За последние годы сфера использования локальных сетей значительно расширилась. По сетям часто передаются конфиденциальные данные. Защита конфиденциальной информации требует ограничения доступа к сети. Проблема, вызванная совместным использованием локальных сетей, состоит в том, что в такую сеть можно относительно легко проникнуть. Подключившись к активному порту, вторгшийся без разрешения в сеть пользователь получает доступ ко всем данным, передаваемым по сегменту. При этом, чем больше группа, тем больше потенциальная угроза несанкционированного доступа.
Одним из эффективных в финансовом отношении и легко административно реализуемых методов повышения безопасности является сегментация сети на большое количество широковещательных групп. Это позволяет сетевому администратору:
В данном разделе рассматривается, как осуществляется конфигурирование и администрирование DVLAN’а на коммутаторах Cisco, чтобы в дальнейшем иметь представление о работе программы.
Настройка членства в DVLAN осуществляется за счет функции управления политики VLAN сервером (VMPS – VLAN Management Policy Server). Данная функция присутствует начиная с модели Cisco Catalyst 4000. С помощью VMPS можно назначать порты коммутатора в VLAN динамически, основываясь на MAC-адресе устройства.
Когда на коммутаторе настраивается служба VMPS, необходимо составить БД соответствия MAC-адресов и названия VLAN’ов, после чего выложить БД на TFTP сервер. После перезагрузки коммутатор автоматически будет загружать с TFTP сервера БД, для восстановления работы VMPS. В БД так же можно определить MAC-адреса которым доступ в сеть будет запрещен, для этого в поле имени VLANа указать --NONE-- .
VMPS слушает протокол UDP, для приема и отправки запросов клиента. Когда приходит корректный запрос клиента, VMPS сравнивает MAC-адрес клиента с MAC-адресами свой БД, чтобы определить к какому VLAN он относится. Если назначенный VLAN ограничивается группой портов, то проверяется, допущен ли VLAN в порт или нет. Если включен режим secure mode (безопасный режим), то порт отключается, в противном случае клиент получает ответ о запрещении доступа.
На коммутаторе можно также сконфигурировать VLAN FallBack (по умолчанию). В него помещаются устройства, с MAC-адресами, которые не входят в БД VMPS при выключенном режиме secure mode [4].
Перед тем как использовать VMPS, необходимо создать файл БД VMPS в формате ASCII и сохранить его на TFTP сервере. Каждая новая запись должна начинаться с новой строчки.
Конфигурационный файл БД VMPS может содержать следующие параметры:
Ниже приведен пример файла конфигурации БД VMPS.
Пример 2.1: «Файл конфигурации БД VMPS»
!TheVMPSdomainmustbedefined. !vmpsmode{open|secure} !Thedefaultmodeisopen. !vmpsfallback !vmpsno-domain-req{allow|deny} ! !Thedefaultvalueisallow. vmpsdomainWBU vmpsmodeopen vmpsfallbackdefault vmpsno-domain-reqdeny ! ! !MACAddresses ! vmps-mac-addrs ! !addressvlan-name ! address0012.2233.4455vlan-namehardware address0000.6509.a080vlan-namehardware addressaabb.ccdd.eeffvlan-nameGreen address1223.5678.9abcvlan-nameExecStaff addressfedc.ba98.7654vlan-name--NONE-- addressfedc.ba23.1245vlan-namePurple ! !PortGroups ! !vmps-port-group !device{port|all-ports} ! vmps-port-groupWiringCloset1 device198.92.30.32port3/2 device172.20.26.141port2/8 vmps-port-group“ExecutiveRow” device198.4.254.222port1/2 device198.4.254.222port1/3 device198.4.254.223all-ports ! ! !VLANgroups ! !vmps-vlan-group !vlan-name ! vmps-vlan-groupEngineering vlan-namehardware vlan-namesoftware ! !
Как только будет разрешена работа VMPS, коммутатор попытается загрузить БД VMPS с TFTP или rcp сервера. После этого коммутатор сможет принимать VMPS запросы.
Для конфигурирования VMPS необходимо выполнить следующие команды в привилегированном режиме:
show vmps
Для отключения режима VMPS необходимо выполнить следующую команду в привилегированном режиме:
set vmps state disable
Для настройки динамических портов VMPS клиентов коммутаторов необходимо выполнить следующие команды в привилегированном режиме:
Для получения информации о соответствии MAC-адресов к VLAN’ом необходимо ввести следующие команды в привилегированном режиме:
Для отображения информации о статистики VMPS:
show vmps statistics
Для сброса статистики VMPS:
clear vmps statistics
Для сброса IP адреса VMPS сервера на клиенте:
clear vmps server ip_addr
Для того чтобы переконфигурировать членство портов в динамическом VLAN’е:
reconfirm vmps
Для проверки введенной выше команды:
show dvlan statistics
Для загрузки файла конфигурации БД VMPS c TFTP сервера или из другого источника:
download vmps
Для просмотра файла конфигурации БД VMPS на коммутаторе:
show vmps
Для настройки функции обнаружения несанкционированного подключением методом прослушивания SysLog, необходимо чтобы коммутатор посылал системные сообщения на компьютер сетевого администратора с запущенной программой.
Пример 2.2 «Настройка отправки системных сообщений на удаленный компьютер»
configure terminalТак же необходимо настроить уровень детализации системных сообщений, так как нам интересны сообщения касающиеся только подключений к портам.
logging 192.168.1.2
end
Пример 2.3 «Настройка уровня детализации системных сообщений»
configure terminalГде «logging trap 4» - это уровень детализации Warning, при котором отсылаются сообщения требующего внимания. Остальные сообщения, которые включает данный уровень детализации, будут игнорироваться программой.
logging trap 4
end
Обнаружение несанкционированного подключения к портам коммутаторов основано на помещении MAC-адреса нарушителя в VLAN FallBack. Настроив коммутатор посылать системные сообщения, мы можем в последующем их обработать. Просматривать приходящие сообщения вручную (пример 3.1) и определять какое из них сообщает о помещения порта в VLAN FallBack очень утомительное занятие. Необходимо автоматизировать процесс.
Пример 3.1 «Формат Syslog-сообщения, посылаемого коммутатором при подключении к порту»
<132>1449: 1w4d: %CDP-4-NATIVE_VLAN_MISMATCH:
Native VLAN mismatch discovered on FastEthernet0/7 (1), with 066540098(TEST-SW5505) 4/31 (99).
Из сообщения представленного в примере 3.1 видно, что коммутатор обнаружил, что на порту Fast Ethernet 0/7 к которому подключен коммутатор «ТЕSТ-SW5505», порт 4/31 назначен в 99 VLAN. Соответственно сравнив номер VLANа в сообщении с номером FallBack VLANа, можно сделать вывод о несанкционированном подключении и выслать уведомление, например по электронной почте.
Рассмотрим пример 3.2, где приведен отрывок программы созданной при помощи C++ Builder 6.0 с помощью которого можно выделять полезные сообщения несущие информацию о несанкционированных подключениях.
Пример № 3.2 «Отрывок программы»
//Данные строчки размещаться в событии OnUDPRead компоненты IdUDPServer
AnsiString Message = «»;//создаем поток для записи в переменную UDP сообщения
TStringStream *SS = new TstringStream(“”);
SS->CopyFrom(Adata,Adata->Size);
Message = SS->DataString;
AnsiString IPinUDP = UDPServer->Bindings->Items[0]->PeerIP;
// Не забыть ввести в свойство Default Port компоненты IdUDPServer - 514, так как коммутатор посылает сообщения на этом порту
//Просмотр входящих сообщений на наличие нужных
int DlinaVlanFallBack = StrLen (FormMomVMPS->EditNomerVlanFallBack->Text.c_str());
//необходимо вычислить количество символов, чтобы оценить количество циклов по проверке сообщения.
DlinaVlanFallBack = DlinaVlanFallBack +1;
int dlinaSysLog = StrLen (Message.c_str()); //количество символов в полученном сообщении
int Y=0;
int N=0;
int uslovieSysLog = 0;
// Проверяем по символьно полученное сообщение на наличие сообщения типа: «(номер VLANа)»
for (Y=1; Y!=dlinaSysLog; Y++)
{
AnsiString Pr = Message[Y];
if (Message[Y] == '(') //так как номер VLANа в скобках то начинаем проверку с на-личия «левой» скобки.
{ //теперь проверяем по символьно номер VLANа
for (N=1; N !=DlinaVlanFallBack; N++)
{
AnsiString Pr2 = FormMomVMPS->EditNomerVlanFallBack->Text[N];
Y=Y+1;
if (Message[Y] == FormMomVMPS->EditNomerVlanFallBack->Text[N])
uslovieSysLog = 1; //если номер VLANа совпал с номером FallBack VLANа
Pr = Message[Y];
}
if (uslovieSysLog == 1) //убедиться в корректности отловленного сообщения, чтобы исключить ошибку надо проверить на наличие «правой» скобки
{
Y=Y+1;
if (Message[Y] == ')') // значит отловили строчку от '(' до ')'
{ //Отправляем уведомление
MainForm->SMTP->Connect(); //Соединиться
if (MainForm->SMTP->Connected)
{
SMTP->UserID = PostForm->EditMailUserName->Text; //Имя пользователя
SMTP->Host = PostForm->EditMailServerSMTP->Text;
SMTP->PostMessage->FromAddress = PostForm->EditEmailOut->Text;
SMTP->PostMessage->FromName = “SysLog FallBack VMPS”; //от гого
SMTP->PostMessage->Subject = PostForm->EditSub->Text; //тема письма
SMTP->PostMessage->ToAddress->Add(PostForm->EditEmail->Text); //кому: e-mail Администратора
//Формируем тело письма
MemoSysLog->Lines->Add(“Date: “+ DateToStr(Date()));//Дата
MemoSysLog->Lines->Add(“Time: “+ TimeToStr(Now()));//Время
MemoSysLog->Lines->Add(“Message from IP: “+ IPinUDP); // IP адрес уст-ройства пославшего сообшение
// Так же в поле Memo добавляем полученное сообщение о несанкциони-рованном подключении
MemoSysLog->Lines->Add(DateToStr(Date())+” “+TimeToStr(Now())+” “+Message); //Добавили в закладку обнаруженных MAC
//----------------------
SMTP->PostMessage->Body->Assign(MemoSysLog->Lines);
SMTP->SendMail();
}
else ShowMessage(«Нет соединения с почтовым сервером»);
if (MainForm->SMTP->Connected)
SMTP->Disconnect(); //Разьединить
Message = “”;
return;
}
}
}
}
Таким образом можно создать еще один барьер безопасности.
Дополнительно для удобства можно создать базу данных для хранения данных о MAC адресах и принадлежность к VLAN и пользователях. И автоматически создавать из базы данных конфигурационный файл VMPS.
Компания SoftKey – это уникальный сервис для покупателей, разработчиков, дилеров и аффилиат–партнеров. Кроме того, это один из лучших Интернет-магазинов ПО в России, Украине, Казахстане, который предлагает покупателям широкий ассортимент, множество способов оплаты, оперативную (часто мгновенную) обработку заказа, отслеживание процесса выполнения заказа в персональном разделе.
Одно найти легче, чем другое. Спойлер: это не темная материя