Вторник
21.11.2017, 02:06
Приветствую Вас Гость | RSS
Главная Каталог статей Регистрация Вход
Меню сайта

Категории раздела
Разное [15]
Документация [18]
Авторские статьи [45]

Поиск

Свежие статьи
Динамическое деление скоро...
port knocking на mikrotik
Установка NGINX без прав R...
Как настроить время (NTP S...
Настраеваем CROND
Биллинг MikBill на UBUNTU
Даунгрейд PHP до версии 5....
Устанавливаем в Ubuntu 10....
Как настроить MySQL
Как настроить ZendOptimize...

Форма входа
Логин:
Пароль:

Главная » Статьи » Документация

NAT
NAT
Спецификации
Требуемые пакеты: system
Требуемый уровень лицензии: Level1(ко л-во правил лимитировано 1), Level3
Уровень подменю: /ip firewall nat
Стандарты и технологии: IP, RFC1631, RFC2663
NAT
Трансляция сетевых адресов это Интернет стандарт для установки соединений из
локальной сети во внешнюю через один IP адрес и наоборот установки соединений из
внешней сети в локальную. Для вып олнения функций NAT может быть использован NAT
шлюз для каждой natted сети. NAT шлюз (NAT маршрутизатор) перезаписывает путь
следования пакета от/к Локальной сети.
Существует два типа NAT:
исходящий NAT или srcnat. Этот тип NAT выполняется для пакетов и сходящих
из natted сети.
входящий NAT или dstnat. Это тип NAT применяется для пакетов, которые следуют
в natted сеть. В большинстве случаев это применяется, для того чтобы сделать
доступными
хосты в приватной сети из Интернет. NAT маршрутизатор примен яя действие dstnat
подменяет
IP адрес назначения всех IP пакетов идущих через маршрутизатор в приватную сеть.
Недостатки NAT
У хостов находящихся за NAT маршрутизатором нет возможности установить реальное
соединение от хоста к хосту. Поэтому некоторые Интернет протоколы могут не работать
через NAT, например AH протокол из набора IPsec. RouterOS включает в себе множество
так называемых NAT помощников, которые включают пересечения для различных
протоколов.
Редирект и Маскарад
Редирект и Маскарад это специальные формы dstnat и srcnat, соответственно. Редирект
подобен стандартному dstnat, но работает как masquerade выполняет действие srcnat то
есть также как и masquerade при выполнении действия srcnat не указывается to-address IP
адрес исходящего интерфейса, в редиректе не указывается IP адрес входящего
интерфейса. Примечание для редиректа значащим правилом является to-ports, который
является портом службы на маршрутизаторе способной отв еть на этот запрос (как
например web proxy).
Когда над пакетом производится действие dstnat (не важно будь то action=nat или
action=redirect), адрес назначения изменяется. Информация о трансляции адресов
(включающая в себя настоящий адрес назначения) наход ится в специальных таблицах
маршрутизатора. Прозрачный web прокси работающий на маршрутизаторе (когда web
запрос перенаправляется на порт прокси маршрутизатора) получает эту информацию из
таблиц и соответственно получает адрес web сервера из них. Если вы вы полняете
действие dstnat для других прокси серверов, то не существует другой возможности
получить адрес web сервера из IP заголовка пакета (потому что адрес назначения IP пакета
предварительно был изменен на адрес прокси сервера). Starting from HTTP/1.1 это
специальный заголовок HTTP запроса который передает адрес web сервера, так прокси
сервер может использовать его, вместо IP адреа пакета. Если нет этого заголовка (старые
версии HTTP клиента) прокси сервер не может определить адрес web сервера и поэтому
не может работать.
Это средство делает возможным правильно и прозрачно редиректить HTTP траффик от
маршрутизатора к некоторым другим прозрачным прокси. Только непосредственное
добавление прозрачного прокси на маршрутизаторе дает возможность настройки его ка к
родительского прокси. В этой ситуации ваш "настоящий" прокси не может быть
прозрачным, поскольку прокси на маршрутизаторе будет прозрачен и будет отправлять
запросы прокси(в соответствии со стандартом; эти запросы включают всю необходимую
информацию о web сервере) к "настоящему" прокси.
Описание свойств
action (accept | add-dst-to-address-list | add-src-to-address-list | dst-nat | jump | log
| masquerade | netmap | passthrough | redirect | return | same | src -nat; default: accept)
- предпринимаемое действие если пакет соответствует правилу.
accept - принять пакет. Не применять ни каких действий т.е пакет принят для всех
правил.
add-dst-to-address-list - добавить адрес назначения IP пакета в список адресов
address-list
add-src-to-address-list - добавить адрес источника IP пакета в список адресов
address-list
dst-nat - подменить адрес назначения IP пакета на значение определенное в
параметре to-address и в to-ports.
jump - "прыгнуть" в правило определенное значением в параметре jump-target
log - каждое правило совпадающее с этим правилом будет записано в системный
журнал
masquerade - замена адреса источника IP пакета на автоматически определенный
адрес
средствами маршрутизации
netmap - создание статической 1:1 карты одного набора IP адре сов для обращения
к другим(отображения
одной сети в другую).
passthrough - игнорировать это(текущее) правило и перейти к следующему.
redirect - заменяет адрес назначения IP пакета на один из локальных адресов.
return - вернуться назад в правило из которого был произведен "прыжок" jump
same - выдать клиенту некоторый IP адре с источника/назначения из выдел енного
диапазона
для каждого соединения. Этот метод чаще всего используется для служб
ожидающих некоторого
клиентского адреса для при множественных подключениях от одного клиента.
src-nat - заменяет адрес источника IP пакета на значение определенное в
параметрах to-address
и to-ports.
address-list(name) - специфическое имя списка IP адресов взятого из следующ их правил
action=adddst-to-address-list или action=add-src-to-address-tist. Этот список адресов
впоследствии может быть использован для проверки пакетов.
address-list-timeout(time; default: 00:00:00) – интервал, после которого адрес будет удален
из списка адресов определенного в address-list. Используется в конъюнкции с
с действиями add-dst-to-address-list или add-src-to-address-list. 00:00:00 - оставить адрес
в списке адресов навсегда.
chain(dstnat | srcnat | name) - добавление в цепочку определенного пр авила. То есть как
различный трафик должен проходить через различные цепочки, всегда будьте осторожны
при выборе правильной цепочки для нового правила. Если при вводе не будет совпадения
с названием уже существующего правила, то новое правило будет создано. dstnat -
правило находящееся в этой цепочке срабатывает до принятия решения о маршрутизации.
Это правило подменяет адрес назначения IP пакета. srcnat - правило находящееся в этой
цепочке срабатывает после принятия решения о маршрутизации.
comment(text) - наглядный комментарий к правилу. Комментарий может быть
использован для идентификации правила из серверного сценария.
connection-bytes(integerinteger) - количество байт в пакетах прошедших через отдельно
выбранное соединение.
0 - бесконечность: например: connection-bytes=2000000-0 для проверки пакетов
используется это правило если более чем 2Мб прошло через выбранное соединение.
connection-limit(integer, netmask) - ограничить(лимитировать) соединение по адресу или
заблокировать адрес.
connection-mark(name) - промаркировать пакеты прошедшие проверку и выбранное
соединение с помощью средства mangle.
connection-type(ftp | gre | h323 | irc | mms | pptp | quake3 | tftp) - проверка пакетов
использующих связанные соединения информация о них(соединения х) получать от их
расировщиков соединений. Средство вспомогательных соединений должны быть
включены в /ip firewall service-port
content(text) - текст который должны содержать текстовые пакеты для соответствия
правилу.
dst-address(IP adress/netmask | IP address -IP address) - выбранный диапазон адресов
назначения IP пакета. Замечание запись правильного сетевого адреса в консоли в формате
address/netmask т.е.: 1.1.1./24 будет конвертирована в 1.1.1.0/24
dst-address-list(name) - соответствие адреса назначения противоположное определенного
пользователем в списке адресов.
dst-address-type(unicast | local | broadcast | multicast) - соответствие адреса назначения по
типу одного из перечисленных IP пакетов:
unicast - IP адрес, используемый одной точкой для соединения с другой точкой
local - соответствующие адреса, прикрепленные к маршрутизатору
broadcast - IP пакет посылаемый от точки к другим точкам подсети
multicast - этот тип IP адресация используется для передачи от одной или более
точек к другим точкам.
dst-limit(integer/time{0,1},integer,dst -address | dst-port | src-address{+},time{0,1}) -
лимитирование пакетов в секунду (количество пакетов принимаемых в секунду (pps)) для
адреса назначения или порта назначения. Это как противополож ность limit соответствий,
то есть каждый адрес/порт назначения будет иметь свой лимит. Ниже перечислены
следующие варианты лимитирования (в порядке появления вида лимитирования):
Count - максимальная средняя передача (ересь от микротик :) ), объем в паке тах
передаваемый за секунду(pps), если не сопровождается опцией Time
Time - определяет временной интервал через который определяется размер пакета
Burst - номера пакетов для согласования(предотвращения) от скачков.
Mode - классификация пакетов предназначен ная для лимитирования
Expire - временной интервал после которого запись IP адресов/портов будет
удалена.
dst-port(integer: 0..65535-integer: 0..65535{*}) - порт назначения или диапазон портов.
hotspot(multiple choice: from-client | auh | local-dst) - соответствие пакетов полученных от
различных клиентов Hot-Spot. Все значения могут быть инвертированы.
from-client - правда если пакет пришел от HotSpot клиента
auth - правда если пакет пришел от аутентифицированного клиента
local-dst - правда если пакет имеет адрес назначения локальную сеть
icmp-options(integer:integer) - интерфейс, на который входит при прохождении чере з
маршрутизатор
ip4-options(any | loose-source-routing | no-record-route | no-route-alert | no-source-routing) -
соответствующие опции заголовков ipv4
any - соответствие не менее чем одному заголовку ipv4
loose-source-routing - пакеты соответствующие свободной опции маршрутизации
источника. Эта опция используется для маршрутизации в Интернет дэйтаграм
сгенерированных источником.
no-record-route - пакеты не соответствующие опциям маршрутизации. Эта опция
используется для маршрутизации в Интернет дэйтаграм сгенерированных
источником.
no-route-alert - пакеты, соответствующие предупреждению нет маршрута.
no-source-routing - пакеты, соответствующие опции нет маршрута источника
record-route - пакеты, соответствующие записи в таблице маршрутизации.
strict-source-routing - соответствие пакета опции статического маршрута.
timestamp – соответствие пакетов опции timestamp
route-alert - соответствие пакетов опции предупреждение.
jump-target(dstnat | srcnat name) - название цепочки в которую совершается "прыжок",
если используется опция action=jump
limit(integer/time{0,1}, integer) - ограничение скорости прохождения соответствующего
пакета c помощью взятого лимита. Чтобы уменьшить количество журнальных сообщений
за единицу времени(уменьшить интенсивность).
Count - средняя скорость прохождения пакета, ограничивает к ол-во пакетов в
секунду(pps), если установлена соответствующая опция в Time
Time - временной интервал которым определяется ограничение пропускной
способности
Burst - нумерация пакетов(счетчик) для предотвращения переполнения.
log-prefix)(text) - все сообщения будут включать в себя префикс описанный здесь.
Используется в паре с action=log
nth(integer,integer: 0..15,integer{0,1}) - частный случай Nth пакета полученного в
соответствии с правилом. Доступен один из 16 счетчиков которые могут быть
использованы.
Every - каждое соответствие Every+1th пакет. Для примера, если Every=1 тогда
правило соответствия отрабатывается на каждом 2-ом пакете.
Counter - счетчик. Счетчик инкрементируется каждый раз когда правило содержит
nth соответствие.
Packet - соответствие отдельно взятого пакета. Значение должно находится между
0 и Every. Если эта опция использована для конкретно взятого счетчика, тогда
правило должно срабатывать для не менее чем Every+1th вместе с этой опцией,
перекрывая тем самым все значения между 0 и Every включительно.
out-interface (name) - интерфейс через который пакет покидает маршрутизатор.
packet-mark (name) - маркировка соответствующего пакета средствами mangle
packet-size (integer: 0..65535-integer: 0..65535{0,1}) - соответствие пакета определенному
размеру или размеру в заданном диапазоне, указанном в байтах
Min - значение, определяющее нижнюю границу диапазона
Max - значение, определяющее верхнюю границу диапазона
phys-in-interface (name) - соответствие порту бриджа добавленного на физический
входной (input) интерфейс. Это работает только если пакет прох одит через бридж.
phys-out-interface (name) - соответствие порту бриджа добавленного на физический
исходящий интерфейс (output). это работает только если пакет проходит через интерфейс.
protocol (ddp | egp | encap | ggp | gre | hmp | icmp | idrp -cmtp | igmp | ipencap | ipip | ipsec -ah |
ipsec-esp | iso-tp4 | ospf | pup | rdp | rspf | st | tcp | udp | vmtp | xns -idp | xtp | integer) -
соответствие IP протоколу определенному по имени или по номеру. вам необходимо
определить протокол если вы хотите определ ять порты.
psd(integer,time,integer,integer) - обнаружение попыток TCP и UDP сканеров. Этот
механизм рекомендуется применять для назначения более низкого приоритета портам с
более высоким, чтобы уменьшить частоту отрицательных ответов, как например, при
пассивном режиме передачи через FTP
WeightTreshold - полный размер последних TCP/UDP пакетов пришедших на
порты отличные от портов назначения (порты на которых не работают стандартные
службы) и пришедшие от некоторого хоста должны быть обработаны как сканер
портов.
DelayThreshold - задержка пакета пришедшего на порт отличного от портов
назначения и пришедшие от некоторого хоста должны быть обработаны как сканер
портов.
LowPortWeight - объем пакетов с привилегированными(<=1024) портами
назначения
HighPortWeight - объем пакетов, не имеющих привилегий к портам назначения.
random(integer) - соответствие пакета выбранного случайным образом.
routing-mark(name) - соответствия пактов промаркированных средствами mangle, с
маркировкой маршрута.
same-not-by-dst(yes | no) - менять или не менять адрес назначения для пакетов
отобранных по правилам action=same
src-address(IP address/netmask | IP address -IP address) - диапазон входящих IP адресов.
Замечание запсиь типа address/netmask будет конвертирована в адрес сети, т.е. : 1.1.1.1/24
будет конвертирована в 1.1.1.0/24
src-address-list(name) - совпадения адреса источника пакета с записью в списке адресов
src-address-type (unicast | local | broadcast | multicast) - соответствия адресов источника по
типам IP пакетов, перечис ленных ниже:
unicast - IP адреса используемые для передачи данных от точки к точке. В данном
случае только от одного хоста только одному другому.
local - соответствие адресам интерфейсов маршрутизатора
broadcast - IP пакет посланный от одной точки ко все м остальным точкам в
подсети(широковещательный пакет).
multicast - этот тип IP адресации предназначен для установки соединения одной
точки с другой.
src-mac-address(MAC address) - MAC адрес источника
src-port(integer: 0..65535-integer: 0..65535{*}) - порт источника или диапазон портов
tcp-mss(integer: 0..65535) - соответствия значению TCP MSS IP пакета.
time (IP address-IP address{0,1}; по умолчанию: 0.0.0.0) - адрес или диапазон адресов
предназначенных для подмены оригинального IP адреса пакета.
to-ports (integer: 0..65535-integer: 0..65535{0,1}) - порт или диапазон портов
предназначенных для подмены оригинального порта IP пакета.
tos (max-reliability | max-throughput | min-cost | min-delay | normal) - соответствие типу
сервиса - значению установленному в заголовке IP пакета(tos бит). ToS - Type of Service.
max-reliability - максимальная надежность(ToS=4)
max-throughput - максимальная пропускная способность(ToS=8)
min-delay - минимальная задержка(ToS=16)
normal - нормальное обслуживание(ToS=16)
NAT приложения
В этой секции будет описаны NAT приложения и примеры к ним.
Предположим, что вы хотите, чтобы ваш маршрутизатор делал следующее
"скрывал" локальную сеть одним адресом
предоставлял реальный (Public) IP локальному серверу
создать отображение 1:1 одной сети в другую
Пример исходящего NAT(Masquerading)
Если вы хотите "скрыть" локальную сеть 192.168.0.0/24 одним адресом 10.5.8.109
выданный вам представителем Интернет услуг, вам необходимо использовать трансляцию
адреса источника например с по мощью (masquerading) средства MikroTik
маршрутизатора. Masquerading будет подменять IP адрес и порт источника пакета
порожденного в сети 192.168.0.0/24 на адрес маршрутизатора 10.5.8.109 когда пакет будет
проходить через него. Для использования masqueradin g, в конфигурацию межсетевого
экрана необходимо добавить действие 'masquerading':
/ip firewall nat add chain=srcnat action=masquerade out -interface=Public
Во всех исходящих соединениях из сети 192.168.0.0/24 адрес источника будет изменен на
адрес маршрутизатора 10.5.8.109 и порт выше 1024. Доступ к локальным адресам из
Интернета не возможен. Если вы хотите разрешить соединения к серверу в локальной
сети, то вам необходимо использовать трансляцию адреса назначения(DST -NAT).
Пример использования DST -NAT
Если вы хотите выставить наружу хост с адресом 192.168.0.109 так чтобы он выглядел как
10.5.8.200, то вам необходимо использовать трансляцию адреса назначения. Таким
образом вы можете например выставить наружу сервер находящейся в локальной сети с
реальным IP адресом. Для начала добавляем реальный IP адрес на внешний интерфейс:
/ip address add address=10.5.8.200/ 32 interface=Public
Добавляем правило разрешающее доступ к локальному серверу из внешней сети
/ip firewall nat add chain=dstnat dst -address=10.5.8.200 action=dst -nat to-
addresses=192.168.0.109
Добавляем правило для трансляции исходящего адреса локального сервера во внешний
адрес маршрутизатора
/ip firewall nat add chain=srcnat src -address=192.168.0.109 action=src-nat
to-addresses=10.5.8.200
Пример отображения 1:1 одной сети в другую
Если вы хотите объединить сеть 11.11.11.0/24 с сетью 2.2.2.0/24, то вам необходимо
использовать трансляцию адреса источника и адреса назначения в паре с действием
action=netmap
/ip firewall nat add chain=dstnat dst -address=11.11.11.1 -11.11.11.254
action=netmap to-addresses=2.2.2.1-2.2.2.254
/ip firewall nat add chain =srcnat src-address=2.2.2.1-2.2.2.254 action=netmap
to-addresses=11.11.11.1-11.11.11.254
  • Сиделка

    Сиделки с проживанием и без. Уход за больными и пожилыми. Надежно! Дешево

    rsidelki.ru

Спонсоры данной статьи


Категория: Документация | Добавил: -=shurf=- (26.07.2010)
Просмотров: 13882 | Рейтинг: 0.0/0

Настройка Mikrotik
Средства Mangle для маркировки...
Динамическое деление скорости ...
Mikrotik - cкидання пароля ()
Настройка тегированных веланов...
RouterOS на офисном шлюзе, час...
Mikrotik - QoS, Bandwidth cont...
Примеры установки MikroTiK Rou...
port knocking на mikrotik
Mikrotik - winbox or console
Установка NGINX без прав ROOT ...

Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Профиль
Привет: Гость

Сообщения:

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или войдите!

Реклама

Наш опрос
Нужен ли этому сайту форум?
Всего ответов: 55

Нашел ошибку?
Система Orphus

Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0



Бесплатный хостинг uCoz