По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Проксирование HTTP и FTP запросов от клиента осуществляется proxy-сервером по средствам сохранения копии (кэширования) запрашиваемых клиентом данных из Интернета на системе, которая расположена ближе к получателю и последующей передачи кэшированных данных получателю с более низкой задержкой. Это может быть страничка сайта, которая расположена на определённом URL'e, например - http://shareit.merionet.ru или же какой-нибудь файл, который лежит на FTP сервере. Введение Роутеры MikroTik способны выполнять следующие функции в качестве web-proxy сервера: Стандартное проксирование HTTP. Когда пользователь сам указывает кто является для него proxy-сервером и настраивает браузер соответствующим образом; Прозрачное проксирование. Когда пользователь не знает, что его запросы перенаправляются через proxy-сервер; Настройка списка доступа по адресу источника, назначения, URL и методу передачи запросов (GET, POST др.); Список кэшируемых объектов. Определяет какие копии каких ресурсов сохранять, а какие нет; Прямой список доступа. Определяет какие ресурсы доступны без проксирования и для каких нужен proxy-сервер; Логирование событий и операций proxy-сервера Поддержка родительских proxy-серверов. В этом случае указывается дополнительный сервер и запрос направляется к нему, если первый сервер не имеет доступа к запрашиваемому объекту. Proxy-сервер располагается между клиентом и конечным сервером с ресурсом, к которому клиент хочет получить доступ. Web-proxy сервер случает запросы от клиентов и сохраняет ответы у себя в памяти. Если он получит запрос, содержащий тот же URL, то он может просто отправить имеющуюся копию. Если же копии нет, то он запрашивает её у конечного сервера. То же самое с файлами, если есть сохранённая копия файла, он отправит её клиенту, если нет - скачает с FTP сервера. Есть несколько целей применения proxy-сервера: Ускорение получения доступа к ресурсам, которые физически находятся дальше от получателя (большая задержка при передаче пакетов); Использование в качестве HTTP Firewall'а. Блокирование доступа к нежелательным ресурсам; Фильтрование web-контента по заданным параметрам, например IP-адрес источника, IP-адрес назначения и порт, URL ресурса, метод HTTP запросов; Сканирование передаваемого из внутренней сети контента, например, для предотвращения утечек. При этом совсем не обязательно использовать функции кэширования на web-proxy. Настройка стандартного web-proxy В роутерах MikroTik, настрока web-proxy через терминал происходит через команду: /ip proxy set Ниже приведен список параметров доступных для настройки: enabled - активирует функционал web-proxy. (yes - включен, no - выключен); src-address - устанавливает IP-адрес proxy-сервера; port - задаёт порт, на котором будет работать proxy-сервер; parent-proxy - задаёт адрес родительского proxy-сервера; cache-drive - указывает куда складывать кэшируеемых данные. cache-administrator - email администратора, который будет показан на странице с ошибкой; max-cache-size - указывает максимальный объём для хранения кэшируемых данных на диске в килобайтах (в случае использования внешнего диска); max-ram-cache-size - указывает максимальный объём для хранения кэшируемых данных в RAM роутера в килобайтах; cache-only-on-disk - указывает создавать ли внутреннюю базу данных, описывающую кэшируемый на диске контент. Может сократить потребление памяти, но повлиять на скорость; maximal-client-connections - максимальное число подключений к proxy-серверу от клиентов. Подключения сверх указанного здесь количества будут отклоняться; maximal-server-connections - максимальное число подключений к серверам. Подключения от клиентов к другим серверам сверх указанного здесь количества будут находиться в режиме ожидания, пока некоторые текущие подключения не завершатся ; max-fresh-time - максимальный срок хранения кэшируемого контента; Настроим стандартный proxy-сервер на адресе 192.168.11.1, для этого через терминал вводим команду: ip proxy> set enabled=yes port=8080 src-address=192.168.11.1 Для настройки через Winbox открываем IP → Web Proxy ставим галочку напротив Enabled, указываем IP адрес и порт, на котором будет работать наш proxy-сервер, кстати, тут же настраивается родительский прокси в разделе Parent proxy. При настройке обычного функционала web-proxy, должна быть также выполнена настройка на стороне клиента (браузера) и указан сервер, который выступает в качестве proxy. Для настройки в Google Chrome нужно открыть Settings → Advanced → Confidentiality and Security, крутим в самый низ до пункта System и выбираем Proxy settings. В появившемся окне выбираем LAN settings → ставим галку напротив Use a proxy server for your LAN и заходим в Advanced. В появившемся окне вбиваем параметры нашего proxy-сервера в строку HTTP (в нашем случае 192.168.11.1 и порт 8080) и применяем настройки: Настройка прозрачного проксирования Прозрачное проксирование не требует дополнительных настроек на стороне клиентов. Более того, пользователи даже не будут подозревать, что их запросы направляются через proxy-сервер. Чтобы настроить прозрачное проксирование, необходимо добавить NAT’ирующее правило в Firewall, которое будет определять какие HTTP запросы будут проходить через локальный proxy. Ниже показан пример того, как можно проксировать все запросы пользователей из сети 192.168.11.0/24 ip firewall nat> add chain=dstnat protocol=tcp src-address=192.168.11.0/24 dst-port=80 action=redirect to-ports=8080 Списки доступа или использование Firewall’а на основе proxy Пожалуй, этот функционал понравится вам больше всего :) Список доступа работает здесь также, как и в правилах Firewall – сначала читаются самые приоритетные правила, затем, вниз по списку - менее приоритетные. Критерием для применения правил может быть совпадение таких параметров как: адрес источника, порт источника, адрес назначения, порт назначения, запрашиваемый URL или HTTP метод (POST, GET и др.) В случае совпадения критериев, заданных в правиле и параметров подключения, такое подключение может быть разрешено (allow) или запрещено (deny). Если параметры подключения не подпадают ни под один из критериев правил, то оно по умолчанию разрешается. Понятно, что использование правил должно применяться вместе с настройками прозрачного проксирования, которые мы рассматривали выше. Итак, допустим мы настроили прозрачное проксирование для сети 192.168.11.0/24 и пустили все HTTP запросы из этой подсети через наш прокси сервер. ip firewall nat> add chain=dstnat protocol=tcp src-address=192.168.11.0/24 dst-port=80 action=redirect to-ports=8080 Что если мы теперь хотим запретить пользователям в данной подсети сидеть во всеми любимом вконтактике? Очень просто – настроим список доступа. Для этого: /ip proxy access add src-address=192.168.1.0/24 dst-host=www.vk.com action=deny Мы также можем заблокировать web-сайты, которые содержат какое-либо ключевое слово или часть слова в названии, например: /ip proxy access add src-address=192.168.1.0/24 dst-host=:er action=deny И гуд-бай - Tinder.com, Twitter.com, Viber.com, ну вы поняли :) Мы даже можем запретить скачивание определённых файлов: /ip proxy access add src-address=192.168.1.0/24 add path=*.pdf action=deny add path=*.png action=deny add path=*.docx action=deny add path=*.mp3 action=deny add path=*.zip action=deny add path=*.rar action=deny Стоит отдельно рассказать про маски (wildcard), которые позволяют настроить более тонкое соответствие проверяемых URL’лов и других названий. В dst-host и dst-path можно указывать следующие маски - * - любое количество символов. Например - *ings.docx будет искать .docx файлы, названия которых оканчиваются на ins или же просто файл ings.docx, то есть сюда подходят такие названия файлов – paintings.docx, wings.docx – перед ings может стоять любое количество символов. Если поставить маску ?, то поиск будет осуществляться по количеству символов. Например маска ??ings.docx найдёт файл wnings.docx, но не найдёт paintings.docx, потому что маска задана на 2 символа. Также поддерживаются регулярные выражения, но если вы собираетесь их использовать, то перед этим обязательно нужно поставить двоеточие :.
img
Среди обилия различных вариантов довольно трудно выбрать ту модель базы данных (БД), который идеально подойдет под ваши нужды. Если говорить о разновидностях СУБД, то чаще всего предпочтение отдается реляционным базам. В данной статье мы поговорим об устройстве реляционных баз данных, обсудим принципы их работы, а также плюсы и минусы использования этих систем. Кроме того, продемонстрируем примеры, которые наглядно показывают, как реляционные БД систематизируют данные. Что такое реляционная база данных Реляционная база данных – это тип БД, который специализируется на связях (отношениях) между элементами данных. Он позволяет устанавливать взаимосвязи между различными наборами данных и использовать эти связи для управления и обращения к связанным данным. Для создания и поддержки данных во многих реляционных БД используется SQL (Structured Query Language - структурированный язык запросов). Реляционные и нереляционные базы данных Реляционные БД делают упор на отношениях между данными. Следовательно, реляционные БД должны хранить данные в строго структурированном виде. Это ускоряет индексирование и время ответа на запросы, а также улучшает безопасность и постоянство данных. Нереляционные базы данных, наоборот, не так сильно зависят от структуры данных, поэтому могут хранить большие объемы данных, не теряя гибкости и легко масштабируя хранение и производительность. Как структурируются данные в реляционных системах управления данными? В реляционных системах управления данными (РСУБД) используется модель, которая структурирует данные в таблицы строк (их еще называют записями или кортежами) и столбцов (или атрибутов/полей). Обычно в столбцах размещаются категории данных, а в строки добавляются отдельные экземпляры. В качестве примера рассмотрим онлайн-магазин. В нашей базе данных находится таблица с информацией о клиентах. В столбцах указываются имена клиентов и адреса, а в строках – данные по каждому клиенту. Такие таблицы можно связать или соотнести с помощью ключей. Каждая строка в таблице идентифицируется с помощью уникального ключа (его называют первичный ключ - primary key). Этот ключ можно добавить в другую таблицу, и там он превратится во внешний ключ (foreign key). Отношение первичный/внешний ключ лежит в основе того, как работают РСУБД. Вернемся к нашему примеру. Допустим, у нас есть таблица с заказами товаров. В одном столбце этой таблицы находится информация о клиенте. Сюда мы можем импортировать первичный ключ, который ссылается на строку с информацией по отдельному клиенту. Таким способом мы можем ссылаться на данные или дублировать данные из таблицы с информацией о клиентах. Кроме того, теперь эти две таблицы связаны. Примеры реляционных баз данных Сейчас, когда мы рассмотрели, как работают РСУБД, пора поговорить о популярных примерах их использования. MySQL MySQL разрабатывалась как РСУБД с открытым кодом, затем ее купила компания Sun Microsystems (теперь это Oracle Corporation). Она по-прежнему доступна со свободной лицензией, но с добавлением проприетарных опций. В MySQL заложена встроенная поддержка репликации с ACID-совместимостью, кластеризация без разделения ресурсов между узлами и поддержка многих движков БД. Но на некоторых движках SQL может работать некорректно. MySQL преуспел в быстром вводе данных и масштабируемости, сохранив при этом высокую доступность и производительность. Все это делает MySQL крайне полезным в веб-разработке и создании приложений. PostgreSQL PostgreSQL – это бесплатный менеджер управления реляционными БД, доступный по свободной лицензии. В нем можно найти некоторые функции MySQL с весомым добавлением MVCC (multi-version concurrency contro - управление параллельным доступом посредством многоверсионности), поэтому такая система совместима с ACID. PostgreSQL сохраняет высокий уровень гибкости и производительности даже при обработке больших баз данных. Это подходящее решение для пользователей, которым важна высокая скорость записи/чтения и разноплановый анализ данных. Среди известных пользователей PostgreSQL стоит упомянуть Reddit, Skype и Instagram. MariaDB Изначально MariaDB создавалась сообществом в качестве форка MySQL, когда тот выкупила Oracle. MariaDB все еще свободно распространяется под стандартной универсальной лицензией GNU. MariaDB создана на базе MySQL с добавлением поддержки еще большего количество движков и исправлением ограничений по хранению данных. Она работает быстрее MySQL и позволяет запускать SQL и NoSQL в одной базе данных. Среди известных пользователей MariaDB можно выделить Google, Mozilla и Wikimedia Foundation. SQLite В отличие от других представителей в этом списке, SQLite не является менеджером баз данных с архитектурой клиент-сервер; он, скорее, встраивается в конечное приложение, благодаря чему мало весит и способен работать с большими массивами систем и платформ. В SQLite есть некоторые ограничения, поскольку он лишь частично предоставляет триггеры, имеет ограниченную функцию ALTER TABLE и не может записывать в представления. Кроме того, SQLite ограничивает максимальный размер базы до 32 000 столбцов и 140 ТБ. Получается, что SQLite лучше всего использовать в качестве компонента базы данных для других приложений. Среди известных пользователей можно назвать Google Chrome, Mozilla Firefox, Opera и Safari. Что такое система управления реляционными базами данных? Система управления базой данных (СУБД или DBMS) – это программное решение, которое позволяет пользователям просматривать, запрашивать и управлять базами данных. Система управления реляционными базами данных (РСУБД или RDBMS) – это более расширенное подмножество СУБД для управления реляционными базами данных. Ниже приведены некоторые различия между универсальной СУБД и РСУБД СУБД РСУБД Хранит меньшее количество данных в виде файлов; нет взаимосвязей Сохраняет большие объемы данных в виде связанных друг с другом таблиц Можно обращаться к одному элементу данных за раз Можно обращаться ко многим элементам данных одновременно. При работе с большими объемами замедляется получение данных В реляционном подходе получение данных не замедляется даже для больших БД. Нет нормализации БД. Есть нормализация БД. Не поддерживает распределенные БД Поддерживает распределенные БД. Поддержка одного пользователя. Поддержка нескольких пользователей. Низкий уровень безопасности Много уровней безопасности. Низкие требования к программному и аппаратному обеспечению. Высокие требования к программному и аппаратному обеспечению Плюсы и минусы реляционных баз данных Как и во всех моделях баз данных, здесь есть свои плюсы и минусы. Плюсы Реляционные БД используют таблицы столбцов и строк, поэтому они отображают данные проще, чем другие типы, и работать с ними удобнее. Такая табличная структура создана специально для обработки данных, что повышает производительность и позволяет использовать сложные, высокоуровневые запросы. И, наконец, в реляционных БД легко масштабировать данные, добавляя строки, столбцы или целые таблицы, не нарушая при этом общей структуры базы. Минусы Реляционные БД могут масштабироваться только до определенного предела. Если говорить о размере базы, то в некоторых БД есть строгое ограничение по длине столбцов. Если вы создаете базу на отдельном сервере, то при ее разрастании придется покупать дополнительное место, то есть в долгосрочной перспективе ее поддержание обходится не дешево. Кроме того, постоянное добавление новых элементов может усложнить базу и затруднить установление связей между новыми частями. Сложные отношения между данными замедляют запросы и негативно сказываются на производительности. Заключение После прочтения этой статьи у вас должно появиться четкое понимание того, как работают реляционные базы данных. Также вы познакомились с рядом интересных примеров РСУБД.
img
В предыдущей части нашей серии OSPF мы рассмотрели варианты ручной фильтрации маршрутов. Теперь мы обсудим маршруты по умолчанию и сравним OSPFv2 с OSPFv3. Предыдущие статьи: Расширенные возможности OSPF: Области OSPF: создание конкретных типов областей Ручная фильтрация маршрутов OSPF Маршрут по умолчанию (Default Routes) Мы изучили с вами, что OSPF может автоматически генерировать маршрут по умолчанию, когда это необходимо. Это происходит с некоторыми специальными типами областей. Например, если вы настраиваете totally stubby area, требуется маршрут по умолчанию, и OSPF генерирует этот маршрут автоматически из ABR. Чтобы повысить гибкость ваших проектов, маршруты по умолчанию, вводимые в нормальную область, могут быть созданы любым роутером OSPF. Для создания маршрута по умолчанию используется команда default-information originate. Эта команда содержит два варианта: Вы можете объявлять 0.0.0.0 в домен OSPF, при условии, что объявляемый роутер уже имеет маршрут по умолчанию. Вы можете объявлять 0.0.0.0 независимо от того, имеет ли объявляемый роутер уже маршрут по умолчанию. Этот второй метод выполняется путем добавления ключевого слова always к default-information originate Рисунок 1 - топология OSPF Используя нашу простую топологию из рисунка 1 еще раз, давайте настроим ATL2 для введения маршрута по умолчанию в нормальную, не магистральную область 1. ATL2#conf t Enter configuration commands, one per line. End with CNTL/Z . ATL2 (config)#router ospf 1 ATL2 (config-router)#default-information originate always ATL2 (config-router)#end ATL2# Обратите внимание, что в этом примере мы используем ключевое слово always, чтобы убедиться, что ATL2 генерирует маршрут по умолчанию независимо от того, есть ли у устройства уже маршрут по умолчанию в его таблице маршрутизации. Вот проверка на ORL: show ip route Сравнение OSPFv2 и OSPFv3 Каким бы удивительным ни был OSPFv2, он не может маршрутизировать префиксы IPv6 для нас. Это работу выполняет OSPFv3. Хорошей новостью для вас является тот факт, что вы можете использовать почти все, что вы узнали о OSPFv2 при переходе на протокол OSPFv3. Полная перестройка протокола не проводилась, и было сохранено как можно больше функциональных возможностей и этапов настройки. Как вы узнаете далее, OSPFv3 предлагает использование семейств адресов в конфигурации, что делает этот протокол подходящим для переноса префиксов IPv6 или даже префиксов IPv4 с соответствующим семейством адресов. В конце этой статьи демонстрируется «стандартная» конфигурация OSPFv3, а также конфигурация семейства адресов. Важно иметь представление о ключевых сходствах и различиях между v2 и v3 протоколов OSPF. Вот сходства, которые описаны ниже: В OSPFv3 процесс маршрутизации не создается явно. Включение OSPFv3 на интерфейсе приведет к созданию процесса маршрутизации и связанной с ним конфигурации. Идентификатор маршрутизатора по-прежнему является 32-разрядным значением в OSPFv3, и процесс выбора идентификатора маршрутизатора остается таким же. OSPF автоматически предпочитает loopback интерфейс любому другому виду, и он выбирает самый высокий IP-адрес среди всех loopback интерфейсов. Если никаких loopback интерфейсов нет, то выбирается самый высокий IP-адрес в устройстве. Вот некоторые ключевые отличия: Эта функция отличается от OSPF версии 2, в которой интерфейсы косвенно включены с помощью режима конфигурации устройства. При использовании nonbroadcast multiaccess интерфейса в OSPFv3 необходимо вручную настроить устройство со списком соседей. Соседние устройства идентифицируются по их идентификатору устройства. В IPv6 можно настроить множество префиксов адресов на интерфейсе. В OSPFv3 все префиксы адресов на интерфейсе включены по умолчанию. Вы не можете выбрать определенные префиксы адресов для импорта в OSPFv3; либо импортируются все префиксы адресов в интерфейсе, либо никакие префиксы адресов в интерфейсе не импортируются. В отличие от OSPF версии 2, несколько экземпляров OSPFv3 могут быть запущены на линии. Традиционная (стандартная) настройка OSPFv3 Чтобы продемонстрировать (и попрактиковать) конфигурацию OSPFv3 часть настроек мы отбросили. Вот конфигурация нашей магистральной области (область 0) и не магистральной области (область 1) с использованием «традиционного» подхода OSPFv3. ATL# configuration terminal Enter configuration commands, one per line . End with CNTL/Z . ATL(config)#ipv6 unicast-routing ATL(config)#interface fa0/0 ATL(config-if)#ipv6 address 2001:1212:1212::1/64 ATL(config-if)#ipv6 ospf 1 area 0 ATL(config-if)#interface loopback0 ATL(config-if)#ipv6 address 2001:1111:1111::1/64 ATL(config-if)#ipv6 ospf 1 area 0 ATL(config-if)#end ATL# Обратите внимание, насколько знакомым кажется этот подход к настройке, он аналогичен настройке OSPFv2. Обратите внимание также, что мы должны глобально включить возможность одноадресной маршрутизации IPv6 на устройстве. Это не является действием по умолчанию. Вы также должны понять, что это не требуется для запуска IPv6 на интерфейсах, это просто требование сделать маршрутизацию трафика IPv6 на роутере. Вот конфигурация наших двух других устройств: ATL2#conf t Enter configuration commands, one per line. End with CNTL/Z . ATL2 (config)#ipv6 unicast-routing ATL2 (config)#int fa0/0 ATL2 (config-if)#ipv6 address 2001:1212:1212::2/64 ATL2 (config-if)#ipv6 ospf 1 area 0 ATL2 (config-if)# *Mar 28 09:23 :25 .563 : %0SPFv3-5-ADJCHG: Process 1, Nbr 192.168.20.1 on FastEthernet0/0 from LOADING to FULL, Loading Done ATL2 (config-if)#int fa1/0 ATL2 (config-if)#ipv6 address 2001:2323:2323::2/64 ATL2 (config-if)#ipv6 ospf 1 area 1 ATL2 (config-if)#end ATL2# ORL#conf t Enter configuration commands, one per line . End with CNTL/Z . ORL(config)#ipv6 unicast-routing ORL(config)#int fa1/0 ORL(config-if)#ipvб address 2001:2323:2323::3/64 ORL(config-if)#ipvб ospf 1 area 1 ORL(config-if)#end ORL# Теперь настало время для проверки. Обратите внимание, что я выполню все это на устройстве ORL для краткости. Обратите внимание еще раз на все замечательные сходства с OSPFv2: show ipv6 route show ipv6 ospf neighbor show ipv6 ospf database Конфигурация Семейства Адресов OSPFv3 Давайте завершим эту статью изучением стиля конфигурации семейства адресов OSPFv3. Помните, что это позволит нам использовать этот единый протокол для передачи префиксов IPv4 и IPv6. Вот пример подхода к конфигурации семейства адресов OSPFv3: BOS (config)#ipv6 unicast-routing BOS (config)#router ospfv3 1 BOS (config-router)#address-family ipv6 unicast BOS (config-router-af)#area 1 range 2001:DB8:0:0::0/128 BOS (config-router-af)#end BOS#conf t BOS (config)#interface fa1/0 BOS (config-if)#ipv6 ospf 1 area 1 Важно то, что если вы уже знакомы с семействами адресов из другого протокола (например, BGP), то эта настройка покажется вам очень простой. Также учтите, что подход к настройке OSPFv3 на подинтерфейсах не меняется.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59