Перейти к содержимому
Калькуляторы

saimon83

Пользователи
  • Публикации

    11
  • Зарегистрирован

  • Посещение

О saimon83

  • Звание
    Абитуриент
    Абитуриент
  1. Из одного роутера два!)

    http://forum.nag.ru/forum/index.php?showtopic=104252 Я смог на три провайдера У тебя проблема не только в route!!!
  2. Настройка VPN

    непонятно, какие правила маршрутизации, как собран шейпер
  3. Обьединяем 2 подсети

    да да простите не подумал, он сам создает правила, уже увидел
  4. Нужен скрипт

    /tool netwatch add comment=reconnect-run down-script="system scheduler set [find comment=reconnect1] disabled=no\r\nsystem scheduler set [find comment=reconnect2] disabled=no" host=10.10.0.1 interval=1s up-script="system scheduler set [find comment=reconnect1] disabled=yes\r\nsystem scheduler set [find comment=reconnect2] disabled=yes\r\ninterface pppoe-client set [find comment=pppoe-1] disabled=no" /system scheduler add comment=reconnect1 disabled=yes interval=30s name=schedule1 on-event="interface pppoe-client set [find comment=pppoe-1] disabled=yes" start-time=startup add comment=reconnect2 disabled=yes interval=30s name=schedule2 on-event="interface pppoe-client set [find comment=pppoe-1] disabled=no" start-time=00:00:01 Итог такой. Если пропадает пинг 10.10.0.1, то пппое выключается на 7с, затем включается на 26с, пинг не появился, заново и т.д. Появился пинг все работает пока не пропадет!!!
  5. Нужен скрипт

    Что работает? Опишите подробно Если появляется интернет то все проще!! Если 8.8.8.8 пингуется при удачном, а при неудачном подключении нет, тогда через tool netwatch /tool netwatch add comment=reconnect-run down-script="system scheduler set [find comment=reconnect1] disabled=no\r\nsystem scheduler set [find comment=reconnect2] disabled=no" host=8.8.8.8 interval=1s up-script="system scheduler set [find comment=reconnect1] disabled=yes\r\nsystem scheduler set [find comment=reconnect2] disabled=yes\r\ninterface pppoe-client set [find comment=pppoe-1] disabled=no" /system scheduler add comment=reconnect1 disabled=yes interval=30s name=schedule1 on-event="interface pppoe-client set [find comment=pppoe-1] disabled=yes" start-time=startup add comment=reconnect2 disabled=yes interval=30s name=schedule2 on-event="interface pppoe-client set [find comment=pppoe-1] disabled=no" start-time=00:00:01 Пингуем google host=8.8.8.8, если хотите можно любой другой сервер В конфиге comment=pppoe-1 это комментарий моего pppoe, у себя напишите свое! У меня в конфигах все по комменту управляется, поэтому комменты, эт обязаловка Итог такой. Если пропадает пинг то ппое выключается на 7с, затем включается на 26с, пинг не появился, заново и т.д. Появился пинг все работает пока не пропадет!!!
  6. Mikrotik и два адреса провайдера

    /ip firewall nat add chain=srcnat action=masquerade src-address=192.168.0.0/24 out-interface=ether2 comment="LAN-LOCAL" } первый провайдер для офиса через канал 1 add chain=srcnat action=masquerade src-address=172.0.0.0/23 out-interface=ether3 comment="hotspot" } второй провайдер для hotspot через канал 2 при условии что Вы прописали в /ip address add address=111.111.111.11/23 comment=WAN1 interface=ether2 network=192.168.13.0 add address=10.0.0.1/23 comment=WAN2 interface=ether3 network=192.168.14.0 add address=192.168.0.1/24 comment=LAN-LOCAL interface=ether7 network=192.168.0.0 add address=172.0.0.1/23 comment=hotspot interface=ether8 network=172.0.0.0 полная версия этого скрипта http://forum.nag.ru/forum/index.php?showtopic=104252 но чтобы мне понять, что Вы хотите, сделайте [admin@MikroTik] > export и выложите Ваши настройки
  7. Доброго времени суток!! Я новичок, так что правьте если что не так!!!!! Этот скрипт проверен! Работает на версии Firmware 6,28, на других версиях, более старых, он немного изменяется, так что будем говорить только о 6,28 Я расписал его для доступности понимания всех людей, независимо от их подготовки и знаний unix Как-то я столкнулся с проблемой - нужно было сделать роутер на 100 одновременных пользователей. При этом было два канала одного провайдера по 30 мб/с. Денег на покупку дорогого железа не было, и я открыл яндех. После приобретения RB2011UiAS я понял всю прелесть unix или RouterOS, это вещььььььььь Вот пример моей наработки за пару недель! После покупки и подключения к компу через первый порт качаем winbox Находим свой микротик по адресу 192,168,88,1 Я ВСЕ КОМАНДЫ ВЫПОЛНЯЮ ЧЕРЕЗ НЬЮ ТЕРМИНАЛ, ЕСЛИ ВЫ НОВИЧОК, ТО И ВАМ СОВЕТУЮ К НЕМУ ПРИВЫКАТЬ!!!!! Обновление software выполняем в New Terminal следующую команду system reset-configuration Скачать прошивку, следующую за Вашей с http://www.mikrotik.com/download. Например, если у вас 3,ххх то качаем 4,ххх и обновляем, потом качаем 5,ххх и обновляем, и т.д. после закачки файла открываем WINBOX-files и туда перетаскиваем мышкой скачанный файл, затем выполняем в New Terminal следующие команды, system routerboard upgrade system reboot подтверждая их "Y" Скрипт начальной настройки сервера Замечание, знак } после него микротык не читает скрипт (Описание команды) Настройка роутера на два суммируемых канала от разных провайдеров, или одного, зависит от вас: Перед настройкой сбросить все в дефаулт!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! system reset-configuration y } Изменяем пользователей /user add group=full name=root password=654321 set admin group=read password=1234 comment="" } Изменяем дату время, Europe/Samara это +4GMT /system clock set time-zone-autodetect=no time-zone-name=Europe/Samara date=may/11/2015 set time=00:20:00 } Изменяем комментарии на интерфейсах, чтобы не забыть их назначение /interface ethernet comment ether1 comment="LAN-SERVICE" } Сервисная сеть на 1 порту comment ether2 comment="Sunnet1" } 1 провайдер порт 2 comment ether3 comment="Sunnet2" } 2 провайдер порт 3 comment ether4 comment="WAN3" } 3 провайдер порт 4 я не использую, далее это будет Komstar comment ether5 comment="WAN4" } 4 провайдер порт 5 я не использую comment ether6 comment="LAN-LOCAL1" } офисная локалка 1 порт 6 основной порт (для внутри сервисного свитча офисной сети) comment ether7 comment="LAN-LOCAL2" } офисная локалка 2 порт 7 резервный порт (для теста офисной сети) comment ether8 comment="LAN-GUEST1" } гостевая локалка 1 порт 8 основной порт (для внутри сервисного свитча гостевой сети) comment ether9 comment="LAN-GUEST2" } гостевая локалка 2 порт 9 резервный порт (для теста гостевой сети) } привязка второго (дублирующего) интерфейса к домашней, гостевой сетям /interface ethernet set ether7 master-port=ether6 } порт 6 + порт 7 офисная set ether9 master-port=ether8 } порт 8 + порт 9 гостевая } назначение ip адресов для наших интерфейсов /ip address comment numbers=0 comment="LAN-SERVICE" } Срвисная сеть на 1 порту add address=192.168.13.62/24 interface=ether2 comment="Sunnet1" } 1 провайдер порт 2 add address=192.168.14.63/24 interface=ether3 comment="Sunnet2" } 2 провайдер порт 3 add address=192.168.0.1/24 interface=ether6 comment="LAN-LOCAL" } офисная локалка 1 порт 6+7 add address=192.168.1.1/24 interface=ether8 comment="LAN-GUEST" } гостевая локалка 2 порт 8+9 } Базовая защита маршрутизатора (входящие соединения на сам маршрутизатор) /ip firewall filter add chain=input connection-state=invalid action=drop comment="Drop invalid connection packets" add chain=input connection-state=established action=accept comment="Allow established connections" add chain=input connection-state=related action=accept comment="Allow related connections" add chain=input protocol=udp action=accept comment="Allow UDP" add chain=input protocol=icmp action=accept comment="Allow ICMP Ping" add chain=input src-address=192.168.0.0/24 action=accept comment="Access to router only from LAN-LOCAL network" } (офисная) add chain=input src-address=192.168.1.0/24 action=accept comment="Access to router only from LAN-GUEST network" } (Гостевая) add chain=input src-address=192.168.88.0/24 action=accept comment="Access to router only from LAN-SERVICE network" } (Сервисная) add chain=input action=drop comment="All other forward drop" } блокировка для входящих лишних пакетов (защита) } Разрешаем маршрутизацию служебных пакетов через сам маршрутизатор /ip firewall filter add chain=forward connection-state=invalid action=drop comment="Drop invalid connection packets" add chain=forward connection-state=established action=accept comment="Allow established connections" add chain=forward connection-state=related action=accept comment="Allow related connections" add chain=forward protocol=udp action=accept comment="Allow UDP" add chain=forward protocol=icmp action=accept comment="Allow ICMP Ping" } Разрешаем выход в интернет для всех адресов из локальной сети add chain=forward in-interface=ether6 src-address=192.168.0.0/24 action=accept comment="Access to internet from LAN-LOCAL network" } для офиса add chain=forward in-interface=ether8 src-address=192.168.1.0/24 action=accept comment="Access to internet from LAN-GUEST network" } для гостей add chain=forward in-interface=ether1 src-address=192.168.88.0/24 action=accept comment="Access to internet from LAN-SERVICE network" } для сервиса } Настраиваем выход в интернет из локальной сети /ip firewall nat add chain=srcnat action=masquerade src-address=192.168.0.0/24 out-interface=ether2 comment="LAN-LOCAL" } 1 провайдер для офиса через канал 1 add chain=srcnat action=masquerade src-address=192.168.0.0/24 out-interface=ether3 comment="LAN-LOCAL" } 2 провайдер для офиса через канал 2 add chain=srcnat action=masquerade src-address=192.168.1.0/24 out-interface=ether2 comment="LAN-GUEST" } 1 провайдер для гостей через канал 1 add chain=srcnat action=masquerade src-address=192.168.1.0/24 out-interface=ether3 comment="LAN-GUEST" } 2 провайдер для гостей через канал 2 add chain=srcnat action=masquerade src-address=192.168.88.0/24 out-interface=ether2 comment="LAN-SERVICE" } 1 провайдер для сервиса через канал 1 add chain=srcnat action=masquerade src-address=192.168.88.0/24 out-interface=ether3 comment="LAN-SERVICE" } 2 провайдер для сервиса через канал 2 } Как видите, я суммирую оба канала для повышения скорости абонентов } Все остальные пакеты, проходящие через маршрутизатор, блокируем (не обязательно) /ip firewall filter add chain=forward action=drop comment="All other forward drop" } блокировка для исходящих лишних пакетов (защита) } А теперь, чтобы пользователи действительно могли выйти в интернет, необходимо добавить правило маршрутизации(Равномерное деление двух провайдеров) } "как настроить два "шлюза" (провайдера) с не равными скоростями я напишу ниже" /ip route add dst-address=0.0.0.0/0 gateway=192.168.13.31,192.168.14.31 distance=1 comment="all-WAN" } Правило для спаренного канала add dst-address=0.0.0.0/0 gateway=192.168.13.31 distance=1 comment="Sunnet1-WAN" } Правило для первого канала add dst-address=0.0.0.0/0 gateway=192.168.14.31 distance=1 comment="Sunnet2-WAN" } Правило для второго канала } DNS настраиваем на обоих провайдеров, либо берем независимые от google и.т.д. (в моем случае я смешал, основной от провайдера 1, запасной от googlе) / ip dns set servers=10.168.0.1,8.8.8.8 allow-remote-requests=yes max-udp-packet-size=4096 cache-size=2048 } DHCP SERVER } Для Сервиса / ip pool add name=DHCP-LAN-SERVICE1 next-pool=none ranges=192.168.88.1-192.168.88.254 ip dhcp-server add name=DHCP-LAN-SERVICE interface=ether1 lease-time=1d address-pool=DHCP-LAN-SERVICE1 authoritative=after-2sec-delay bootp-support=static disabled=no ip dhcp-server network add address=192.168.88.0/24 gateway=192.168.88.1 dns-server=192.168.88.1 comment="LAN-SERVICE" } Для офиса ip pool add name=DHCP-LAN-LOCAL2 next-pool=none ranges=192.168.0.1-192.168.0.254 ip dhcp-server add name=DHCP-LAN-LOCAL interface=ether6 lease-time=12h address-pool=DHCP-LAN-LOCAL2 authoritative=after-2sec-delay bootp-support=static disabled=no ip dhcp-server network add address=192.168.0.0/24 gateway=192.168.0.1 dns-server=192.168.0.1 comment="LAN-LOCAL" } Для гостей ip pool add name=DHCP-LAN-GUEST3 next-pool=none ranges=192.168.1.1-192.168.1.254 ip dhcp-server add name=DHCP-LAN-GUEST interface=ether8 lease-time=1h address-pool=DHCP-LAN-GUEST3 authoritative=after-2sec-delay bootp-support=static disabled=no ip dhcp-server network add address=192.168.1.0/24 gateway=192.168.1.1 dns-server=192.168.1.1 comment="LAN-GUEST" } И последнее, в смешивании каналов, это пинг гугла через каждый канал!!! Ели один из каналов падает - система переходит на единственный рабочий канал /ip route add dst-address=8.8.8.8 gateway=192.168.13.31 scope=10 comment="ping Sunnet1" } Пинг на гугл первого канала add dst-address=8.8.4.4 gateway=192.168.14.31 scope=10 comment="ping Sunnet2" } Пинг на гугл второго канала } правило 1 при потере пинга свыше 1000мс на первом канале (Sunnet1-WAN) отключает доступ по двум каналам, и переходит на второй (Sunnet2-WAN) /tool netwatch add host=8.8.8.8 interval=1s timeout=1 comment=connections_Sunnet2 down-script="ip route set [find comment=all-WAN] disabled=yes\r\nip route set [find comment=Sunnet1-WAN] disabled=yes\r\nip route set [find comment=Sunnet2-WAN] disabled=no" up-script="ip route set [find comment=all-WAN] disabled=no\r\nip route set [find comment=Sunnet1-WAN] disabled=yes\r\nip route set [find comment=Sunnet2-WAN] disabled=yes" } правило 2 при потере пинга вше 1s на втором канале (Sunnet2-WAN) отключает доступ по двум каналам, и переходит на первый (Sunnet1-WAN) add host=8.8.4.4 interval=1s timeout=1 comment=connections_Sunnet1 down-script="ip route set [find comment=all-WAN] disabled=yes\r\nip route set [find comment=Sunnet1-WAN] disabled=no\r\nip route set [find comment=Sunnet2-WAN] disabled=yes" up-script="ip route set [find comment=all-WAN] disabled=no\r\nip route set [find comment=Sunnet1-WAN] disabled=yes\r\nip route set [find comment=Sunnet2-WAN] disabled=yes" } при восстановлении пинга по каналам восстанавливает правило спаренного канала } готово } Динамический шейпер (вариант 1) } Итак, создадим правило, которое позволит получить клиентам локальной 192.168.1.0/24 сети максимальную скорость при обращении к интернет, } однако разделим скорость между всеми поровну. } Создаем адрес лист этой подсети и даем название guest1. } Можно создать лист и по одному айпи, но в данном случае получится 253 строчки. У меня все клиенты одинаковы, поэтому я делаю так: /ip firewall address-list add address=192.168.1.0/24 disabled=no list=guest1 } Маркируем пакеты для guest1, это нужно для шейпера, чтобы он распознал клиентов из адрес-листа /ip firewall mangle add action=mark-packet chain=forward disabled=no dst-address-list=guest1 new-packet-mark=guest1-down passthrough=yes add action=mark-packet chain=forward disabled=no src-address-list=guest1 new-packet-mark=guest1-up passthrough=yes } Шейпер. } 1. Создадим два типа PCQ очереди, подключения в одной из которых мы будем классифицировать по входящему, а в другой по исходящему трафику. } Самое важное здесь - это параметр pcq-rate=? Например: pcq-rate=7m, он означает, что любой пользователь, даже если он остался 1, не сможет получить больше 7m трафика /queue type add kind=pcq name=down-7m pcq-burst-rate=0 pcq-burst-threshold=0 pcq-burst-time=10s pcq-classifier=dst-address pcq-dst-address-mask=32 pcq-dst-address6-mask=128 pcq-limit=500 pcq-rate=7M pcq-src-address-mask=32 pcq-src-address6-mask=128 pcq-total-limit=100000 add kind=pcq name=up-7m pcq-burst-rate=0 pcq-burst-threshold=0 pcq-burst-time=10s pcq-classifier=src-address pcq-dst-address-mask=32 pcq-dst-address6-mask=128 pcq-limit=500 pcq-rate=7M pcq-src-address-mask=32 pcq-src-address6-mask=128 pcq-total-limit=100000 } 2. Теперь создадим само дерево загрузки канала. Первая строка name=Global, у нее мы создаем суммарный канал для этих пользователей max-limit=15M. И обязательно parent=global } Вторая и третья строки - это конкретные ограничения для загрузки и отправки по max-limit=7500k. Отсюда и на строке выше max-limit=15M. } Здесь же указываем packet-mark и queue соответственно для загрузки и отправки из ранее написанных правил: } name=Download packet-mark=guest1-down parent=Global queue=down-7m, и name=Upload packet-mark=guest1-up parent=Global queue=up-7m } То есть в такой конфигурации 1 пользователь сможет работать на 7m, например, качать торрент. Вот если появится второй пользователь, то скорость будет делится на двоих!!! } Но делится не пропорционально, а по запросу!!! Т.Е. клиент 1 при закачки торрента логично будет выбирать максимум, ему доступный, а клиент 2, открывая онлайн-игру, } не будет нуждаться более чем в 1-2m. Поэтому у первого закачка будет 5-6m, а у второго нормально, без лагов, работать игра на 1-2m } Появится третий - то по запросам от всех поделится на всех, и т.д. по нарастающей. /queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=15M name=Global packet-mark="" parent=global priority=1 add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=7500k name=Download packet-mark=guest1-down parent=Global priority=8 queue=down-7m add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=7500k name=Upload packet-mark=guest1-up parent=Global priority=8 queue=up-7m } Главное помнить, что нельзя превышать лимиты от вышестоящего провайдера!!!!!!!!!! Иначе пинг будет сумасшедший, в следствии чего хттп будет кривой (дооооолгий) } max-limit должен быть ниже гарантированного для Вас, от вышестоящего провайдера, лимита от 5% до 15%. Это очень важно!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! } Следующее правило даст нам при потере пинга на одном из каналов изменение общего канала загрузки для не превышения лимита вышестоящего провайдера } Редактируем нетвач, птем удаления сторых правил и добавления новых /tool netwatch remove numbers=0 remove numbers=1 add host=8.8.8.8 interval=1s timeout=1 comment=connections_Sunnet2 down-script="ip route set [find comment=all-WAN] disabled=yes\r\nip route set [find comment=Sunnet1-WAN] disabled=yes\r\nip route set [find comment=Sunnet2-WAN] disabled=no\r\nqueue tree set Download max-limit=3700k\r\nqueue tree set Upload max-limit=3700k" up-script="ip route set [find comment=all-WAN] disabled=no\r\nip route set [find comment=Sunnet1-WAN] disabled=yes\r\nip route set [find comment=Sunnet2-WAN] disabled=yes\r\nqueue tree set Download max-limit=7500k\r\nqueue tree set Upload max-limit=7500k" add host=8.8.4.4 interval=1s timeout=1 comment=connections_Sunnet1 down-script="ip route set [find comment=all-WAN] disabled=yes\r\nip route set [find comment=Sunnet1-WAN] disabled=no\r\nip route set [find comment=Sunnet2-WAN] disabled=yes\r\nqueue tree set Download max-limit=3700k\r\nqueue tree set Upload max-limit=3700k" up-script="ip route set [find comment=all-WAN] disabled=no\r\nip route set [find comment=Sunnet1-WAN] disabled=yes\r\nip route set [find comment=Sunnet2-WAN] disabled=yes\r\nqueue tree set Download max-limit=7500k\r\nqueue tree set Upload max-limit=7500k" } готово } Проброска порта, я думаю не нужны комменты / ip firewall nat add chain=dstnat action=dst-nat in-interface=WAN1 protocol=tcp dst-port=80 to-address=192.168.0.3 to-ports=80 ip firewall filter add chain forward in-interface=WAN1 protocol=tcp dst-port=80 dst-address=192.168.0.3 action=accept comment="WAN1 to online booking" ip firewall mangle add chain=forward in-interface=WAN1 action=mark-connection new-connection-mark=WAN1_c passthrough=yes ip firewall mangle add chain=prerouting src-address=192.168.0.0/24 connection-mark=WAN1_c action=mark-routing new-routing-mark=WAN1_r passthrough=yes ip route add routing-mark=WAN1_r gateway=192.168.13.31 comment="WAN1 to online booking" Если у кого есть вопросы, поправки!!!!! ТОЛЬКО ПРИВЕТСТВУЮ!
  8. } Проброска порта / ip firewall nat add chain=dstnat action=dst-nat in-interface=WAN1 protocol=tcp dst-port=80 to-address=192.168.0.3 to-ports=80 ip firewall filter add chain forward in-interface=WAN1 protocol=tcp dst-port=80 dst-address=192.168.0.3 action=accept comment="WAN1 to online booking" ip firewall mangle add chain=forward in-interface=WAN1 action=mark-connection new-connection-mark=WAN1_c passthrough=yes ip firewall mangle add chain=prerouting src-address=192.168.0.0/24 connection-mark=WAN1_c action=mark-routing new-routing-mark=WAN1_r passthrough=yes ip route add routing-mark=WAN1_r gateway=10.168.0.1 comment="WAN1 to online booking" примерно так но нужно от твоего test1.ru и test2.ru промаркироваить пакеты по разному, но на один ип