Jump to content
Калькуляторы

Mikrotik и два прова-проблемма с настройкой помогите пожалуста.

 

Добрый день. Прошу совета о поюключении 2-х провайдеров. Mikrotik 2011Uias, firmware 6.43.2, os 6.43.2

задача: настроить балансировку нагрузки и пустить часть юзеров жестко на isp1, других на isp2

Пользовался данной статьей://avg-it.ru/info/articles/mikrotik-dva-provaydera-balansirovka/ но с оговорками (т.е. уже имелся настроенный микротик на работу с одним провайдером, часть интерфейсов была занята (ethr1=wan1, ethr2=lan и т.д. под второго прова был выделен инт ethr 6, ( переименовал интерфейсы ethr1=ISP2, ethr6=ISP1/

 

 

# Настроим сети провайдеров:

/ip address add address=10.100.1.1/24 interface=ISP1

/ip address add address=10.200.1.1/24 interface=ISP2

# Настроим локальный интерфейс

/ip address add address=10.1.1.1/24 interface=LAN

# скроем за NAT все что выходит из локальной сети

/ip firewall nat add src-address=10.1.1.0/24 action=masquerade chain=srcnat

#Пометим каждое соединение пришедшее снаружи и адресованное нашему роутеру:

/ip firewall mangle add action=mark-connection chain=input in-interface=ISP1 new-connection-mark=cin_ISP1

/ip firewall mangle add action=mark-connection chain=input in-interface=ISP2 new-connection-mark=cin_ISP2

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

/ip firewall mangle add action=mark-routing chain=output connection-mark=cin_ISP1 new-routing-mark=rout_ISP1 passthrough=no

/ip firewall mangle add action=mark-routing chain=output connection-mark=cin_ISP2 new-routing-mark=rout_ISP2 passthrough=no

#добавим default gateway в каждую из промаркированных таблиц маршрутизации:

/ip route add distance=1 gateway=10.100.1.254 routing-mark=rout_ISP1 check-gateway=ping

/ip route add distance=1 gateway=10.200.1.254 routing-mark=rout_ISP2 check-gateway=ping

 

 

Пользовался данной схемой, +
Делим исходящий трафик, используя ECMP (equal cost multipath routing)


На мой взгляд самый простой и вкусный вариант разделения траффика:


конфигурация с балансировкой канала по ECMP

# Настроим сети провайдеров:

/ip address add address=10.100.1.1/24 interface=ISP1

/ip address add address=10.200.1.1/24 interface=ISP2

# Настроим локальный интерфейс

/ip address add address=10.1.1.1/24 interface=LAN

# скроем за NAT все что выходит из локальной сети

/ip firewall nat add src-address=10.1.1.0/24 action=masquerade chain=srcnat

#Пометим каждое соединение пришедшее снаружи и адресованное нашему роутеру:

/ip firewall mangle add action=mark-connection chain=input in-interface=ISP1 new-connection-mark=cin_ISP1

/ip firewall mangle add action=mark-connection chain=input in-interface=ISP2 new-connection-mark=cin_ISP2

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

/ip firewall mangle add action=mark-routing chain=output connection-mark=cin_ISP1 new-routing-mark=rout_ISP1 passthrough=no

/ip firewall mangle add action=mark-routing chain=output connection-mark=cin_ISP2 new-routing-mark=rout_ISP2 passthrough=no

#добавим default gateway в каждую из промаркированных таблиц маршрутизации:

/ip route add distance=1 gateway=10.100.1.254 routing-mark=rout_ISP1 check-gateway=ping

/ip route add distance=1 gateway=10.200.1.254 routing-mark=rout_ISP2 check-gateway=ping

#промаркируем весь траффик из локальной сети

/ip firewall mangle add src-address=10.1.1.0/24 action=mark-routing chain=prerouting new-routing-mark=mixed

#используем ECMP для балансировки траффика из локальной сети

/ip route add dst-address=0.0.0.0/0 gateway=10.100.1.254,10.200.1.254 routing-mark=mixed

 

 

Mikrotik сам поделит трафик по шлюзам, используя round-robin алгоритм.

Кстати, в версии 6.Х RouterOS mikrotik поломал check-gateway в ECMP, так что использовать конструкцию 
/ip route add gateway=10.100.1.254,10.200.1.254 check-gateway=ping можно и логично, но абсолютно бесполезно.
Для пометки неживых маршрутов в ECMP нужно создать дополнительные маршруты, которые используют каждый из gateway по-отдельности. С включенным check-gateway разумеется. Помечая маршрут неактивным, mikrotik делает это для всех.

 

Но чтото непонятно а конкретно:  У некоторых юзеров перестали открыватся странички, хотя трафик к ним присутствует а общая скорость как будто упалаю На интерфейсах видна активность в принятых и отправленных пакетах, но люди в общем недовольны. Что касается конкретных юзеров в сети так и не смог их пустить по направлению к конкретным провайдерам.

Share this post


Link to post
Share on other sites

Много букав в сообщении и читать я конечно же их не буду. Чтобы разделить по провайдерам, я бы узал микротиковский недоврф.

Share this post


Link to post
Share on other sites

Извините не понял что за недоврф?

 

Share this post


Link to post
Share on other sites

@iraklizh Если смотреть на VRF через призму Juniper, Cisco, то отдельный маршрутизатор внутри маршрутизатора. 

 

Если смотреть на VRF через микротик то это два и более миротиков. 

 

В микротике нет VRF. 

 

Share this post


Link to post
Share on other sites
2 часа назад, iraklizh сказал:

У некоторых юзеров перестали открыватся странички, хотя трафик к ним присутствует а общая скорость как будто упалаю

Для начала в использованном вами мануале скромно обойден вопрос DNS. Необходимо использовать либо что-то публичное от Яндекса/Гугла, либо делать еще правила для корректной отправки DNS-запросов к конкретному серверу провайдера в конкретный интерфейс. Иначе с вероятностью 50% запросы с клиентов будут обламываться. Дальше, современный сайт = большая куча говна из тянущихся с полусотни разных доменов шрифтов, скриптов, картинок и т.п. У клиентов спокойно может половина запросов идти через один канал, а вторая - через другой. Если проверяются "печеньки", половина запросов может спокойно отвалиться как forged, с последствиями у юзера в браузере в виде "кровь, кишки, евроинтегрировало". Есть и третий момент - Mikrotik каждые 10 минут делает route flush - то есть текущая "карта" потоков множится на ноль и начинает все строиться заново. Практически, это означает что в пределах одной и той же пользовательской сессии с сайтом пользователь может внезапно переключиться с одного исходящего на другой. Гугль-почта за такое просто дропает (особенно весело, если шел процесс отправки письма, например). В общем, влажные мечты с балансировкой через ECMP лучше похоронить. 

 

Делите пользователей по признакам (IP, протокол, еще что-нибудь) или осваивайте протоколы динамической маршрутизации (но придется прикупить еще пару микротиков)

 

 

Share this post


Link to post
Share on other sites

попробую тогда как вы советуете (вообщето изначально думал в сторону ip,  прикупить пару микротиков тоже небольшая проблемма но наверное несейчас....и да вопрос dns ...я и сейчас использую гугл как днс ...

 

Edited by iraklizh

Share this post


Link to post
Share on other sites
3 hours ago, iraklizh said:

Что касается конкретных юзеров в сети так и не смог их пустить по направлению к конкретным провайдерам.

Делается просто - правилами в IP/Routes/Rules, указываете IP клиента(Src. Address) и таблицу(Table).

Балансировка делается чуть сложнее, надо еще трафик в цепочке forward маркировать, не только input.

Здесь неплохо расписано - (презентация с MUM, PDF)

 

 

Share this post


Link to post
Share on other sites

@McSea ! Спасибо ! Уточните пожалуста по Table( у меня только main... что за main где его смотреть детальнее? ( Я так понял в этом случае манглs совсем выходит не нужны?) или придется маркировать только исходящий и входящий трафик?

 

Edited by iraklizh

Share this post


Link to post
Share on other sites
45 minutes ago, iraklizh said:

Уточните пожалуста по Table( у меня только main... что за main где его смотреть детальнее? ( Я так понял в этом случае манглs совсем выходит не нужны?)

Table это таблица маршрутизации = все маршруты с одной и той же меткой. Таблица main - все маршруты без меток.

У вас выше в конфиге есть маршруты с метками rout_ISP1 и rout_ISP2, эти метки должны присутствовать в правилах маршрутизации в поле таблицы.

Если задача только выпускать определенные IP через определенного провайдера, маркировка в mangle не нужна.

Edited by McSea

Share this post


Link to post
Share on other sites

Спасибо, если я вас правильно понял: в Rules указываю сеть 172.16.0.0- > table-> ISP1, a 172.16.0.2 -> table ISP2 так?

Маркировка же в манглах  входящего трафиика и исходящего и фрвардировоного трафика остается в силе так?

(я про это:

/ip firewall mangle add action=mark-connection chain=input in-interface=ISP1 new-connection-mark=cin_ISP1

/ip firewall mangle add action=mark-connection chain=input in-interface=ISP2 new-connection-mark=cin_ISP2)

 

 

 

 

Edited by iraklizh

Share this post


Link to post
Share on other sites
5 hours ago, iraklizh said:

Спасибо, если я вас правильно понял: в Rules указываю сеть 172.16.0.0- > table-> ISP1, a 172.16.0.2 -> table ISP2 так?

IP адреса либо подсети клиентов указываете в Src. Address правил. Подсети нужно с маской указывать, т.е. 172.16.0.0/24 или какая у вас маска. 172.16.0.2 - это адрес хоста, а не подсети, придерживайтесь более точной терминологии.

Таблицы указываете точно, как прописаны в routing-mark в маршрутах.

 

Правила будут сами направлять пакеты от клиентов из локальной сети с указанными адресами по маршрутам провайдеров; если нужно только это, маркировка не нужна.

Если кроме этого будет балансировка для части клиентов, которые явно не будут направляться правилами, и/или доступ из интернета к ресурсам в локальной сети, а также работа сервисов с доступом из интернета по обоим провайдерам на самом микротике (VPN и т.п) - нужна маркировка. 

 

 

 

Edited by McSea

Share this post


Link to post
Share on other sites

 Спасибо! 

У меня пока все предельно просто:

1.Сеть 172.16.0.0/20 на 60 абонентов, ( планируется подключить железно к ISP1);

2. Оффис 172.16.0.2.20 -;железно подключить к ISP2;

Проброс пакетов извне только на isp1 + доступ к winbox isp1/isp2. ( или только к isp2 пока достаточно). В этом случае нужно делать маскарадинг отдельно в nat-е для ips2 и isp1?

 

Share this post


Link to post
Share on other sites

не идет траффик через ISP1...

 

Share this post


Link to post
Share on other sites

А если взять один микротик, повесить на него четко одного isp, это облегчить задачу?

 

Возможно ли чтоб проблемма возникала из за того, что второй ISP в 6-м порту ( на 2011 в 2 свича 1,2,3,4,5 в оном свиче, 6 7 8 9 10 в другом... я его из бриджа убираю предварительно...а в свиче swich1:iethr 1=isp1, ethr2, ethr 3, ethr 4 и ethr 5)

а в свиче 2 ethr6=isp2, ethr7, ethr8, ethr9 и 10..

 

 

Edited by iraklizh

Share this post


Link to post
Share on other sites

@iraklizh Без шуток, хотя в каждой шутке есть доля шутки. 

 

Нужно больше микротиков. 

 

Поймите роутинг и нат это разны вещи как яблоко и груша, хоть оба фрукт. 

 

Если нужно собрать, что бы работало как часы нужно купить еще 2 микротика. 

1 микротик это гетвей для всех клиентов, у этого микротика есть два дефолтных маршута до двух разных маршутизаторов допустим через OSPF и через этот OSPF вы передаете маршуты до выше стоящих микротиков на первом микротике нет ната чисто роутинг и вы уже маркировкой балинсируете какому клиенту в какой микротик ходить. На двух других микротиках уже исполняется нат для клиентов. 

 

В разрезе допустим SRX100 или cisco 2800 есть VRF, где в нутри маршутизатора можно создать отдельные таблицы маршутизации и отдельные правила ната для виртуальных роутров. Т.е. получится почти схема как с тремя микротиками. 

 

Если нужно дешево сердито, то будет как у вас в данный момент. 

 

З.Ы. можно купить те же 750, думаю справятся. 

Share this post


Link to post
Share on other sites

спасибо pingz, вчера делал по вышеуказанной статье https://mum.mikrotik.com/presentations/US12/tomas.pdf.... все заработало, проверял на speedtest  все шло через isp1 на хорошей скорости...настроил вход на микротик с обоих isp и лег спать спокойно а с утра звонки что мол нету интернета... может косяки в командах...(делал все в точности как написанно, кроме /ip firewall mangle add chain=prerouting connection-mark=no-mark src-address-list=LAN dst-addresslist=!Connected dst-address-type=!local action=mark-connection new-connection-mark=LAN->WAN  ну никак не удалось ввести данную команду.... я через обоих isp пробовал заходить, все ок, вроде на интерфейсы трафик идет, но у когото перестали загружатся странички, чьюто скорость на speedtest показывало 0 у когото работал интернет но не работали русские сайтв (типа mail.ru и т.д.)... каюсь что полностью туплю с манглами...и схема IP/Routes/Rules, тоже не заработала... я не настраиваю файловер, но сначало писали что маркировка трафика не нужна, тогда не получается пустить через IP/Routes/Rules...

Edited by iraklizh

Share this post


Link to post
Share on other sites

@iraklizh  Либо я, что то не понимаю, либо микротик стал не тот, но вроде mangle это и есть маркировка. 

Share this post


Link to post
Share on other sites

чтото с темой я совсем замудрил...

у меня два прова:

1- ethr1 (статика белый ip  / 30) сейчас так работает, в роутах:AS  0.0.0.0 gate xx.xx.xx.17 reachable ethre wan dist 1

                                                                                         DAS xx.xx.xx.16 (ether wan reachable) pref source мой белый ip xx.xx.xx.218 dist 0

                                                                                          DAS 172.16.0.0/20 (моя сеть) bridge 1 reachable 172.16.0.1 dist 0

                                                             

Share this post


Link to post
Share on other sites

@iraklizh 


 

On 5/17/2019 at 8:07 AM, iraklizh said:

1.Сеть 172.16.0.0/20 на 60 абонентов, ( планируется подключить железно к ISP1);

2. Оффис 172.16.0.2.20 -;железно подключить к ISP2;

 

1. Тут понятно - подсеть 172.16.0.0/20 т.е. 4094 IP адреса от 172.16.0.1 до 172.16.15.254 (не много на 60 абонентов?)

2. Тут не понятно - 172.16.0.2.20 - это что ? Чей-то IP адрес 172.16.0.2 из подсети в первом пункте ? Только один какой-то девайс надо  через второго провайдера пустить ?

 

Правила не заработали у вас в IP/Routes/Rules - где правила, конфиг ? Как можно понять, где вы ошиблись не видя ничего ?

 

Edited by McSea

Share this post


Link to post
Share on other sites

@McSea -опечатка получилась  должно было быть 172.16.0.20/20 сейчас все опять как раньше без второго прова. 

14 minutes ago, McSea said:

Тут понятно - подсеть 172.16.0.0/20 т.е. 4094 IP адреса от 172.16.0.1 до 172.16.15.254 (не много на 60 абонентов?)

Брал с запасом... почитав о правилах манглах совсем запутался.... может и с dns записями косяк когда правила и манглы прописываю. Буду еше пробовать...

вот сейчас рабочий конфиг:

# may/21/2019 20:24:59 by RouterOS 6.43.2
# software id = 
#
# model = 2011UiAS
# serial number =
/interface bridge
add admin-mac=       auto-mac=no name=bridge1
/interface ethernet
set [ find default-name=ether1 ] name="ether1 WAN" speed=100Mbps
set [ find default-name=ether2 ] name="ether2 LAN" speed=100Mbps
set [ find default-name=ether3 ] name="ether3 Switch" speed=100Mbps
set [ find default-name=ether4 ] speed=100Mbps
set [ find default-name=ether5 ] speed=100Mbps
set [ find default-name=ether6 ] advertise=\
    10M-half,10M-full,100M-half,100M-full,1000M-half,1000M-full disabled=yes
set [ find default-name=ether7 ] advertise=\
    10M-half,10M-full,100M-half,100M-full,1000M-half,1000M-full
set [ find default-name=ether8 ] advertise=\
    10M-half,10M-full,100M-half,100M-full,1000M-half,1000M-full arp=proxy-arp \
    disabled=yes
set [ find default-name=ether9 ] advertise=\
    10M-half,10M-full,100M-half,100M-full,1000M-half,1000M-full disabled=yes
set [ find default-name=ether10 ] advertise=\
    10M-half,10M-full,100M-half,100M-full,1000M-half,1000M-full disabled=yes
set [ find default-name=sfp1 ] disabled=yes
/interface list
add exclude=dynamic name=discover
add name=mactel
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip firewall layer7-protocol
add name=HTTP regexp="http/(0\\.9|1\\.0|1\\.1) [1-5][0-9][0-9]|post [\\x09-\\x\
    0d -~]* http/[01]\\.[019]"
add name=GIF_FILE regexp=gif
add name=PNG_FILE regexp=png
add name=JPG_FILE regexp=jpg
/ip pool
add name=pool1 ranges=172.16.0.50-172.16.15.254
/ip dhcp-server
add address-pool=pool1 authoritative=after-2sec-delay disabled=no interface=\
    bridge1 lease-time=3d name=server1
/queue simple
add limit-at=36M/37M max-limit=36M/37M name=queue1 target=172.16.0.0/20
add disabled=yes max-limit=2M/3M name=queue2 priority=7/7 target=\
    172.16.14.186/32
/queue type
set 1 pfifo-limit=10000
add kind=pcq name="pcq-download 2M" pcq-classifier=dst-address \
    pcq-dst-address6-mask=64 pcq-rate=2M pcq-src-address6-mask=64
add kind=pcq name="pcq-upload 2M" pcq-classifier=src-address \
    pcq-dst-address6-mask=64 pcq-rate=2M pcq-src-address6-mask=64
add kind=pcq name=pcq-burst-download pcq-burst-rate=18M pcq-burst-threshold=\
    2M pcq-burst-time=1m4s pcq-classifier=dst-address pcq-dst-address6-mask=\
    64 pcq-rate=3M pcq-src-address6-mask=64
add kind=pcq name=pcq-burst-upload pcq-burst-rate=18M pcq-burst-threshold=2M \
    pcq-burst-time=1m4s pcq-classifier=src-address pcq-dst-address6-mask=64 \
    pcq-rate=3M pcq-src-address6-mask=64
add kind=pcq name="PCQ DOWNLOAD IRMA" pcq-burst-rate=13M pcq-classifier=\
    dst-address pcq-dst-address6-mask=64 pcq-src-address6-mask=64
add kind=pcq name="PCQ UPLOAD IRMA" pcq-burst-rate=14M pcq-classifier=\
    src-address pcq-dst-address6-mask=64 pcq-src-address6-mask=64
/queue simple
add comment=551116687 limit-at=9M/10M max-limit=9M/10M name=Tornike priority=\
    6/6 queue=ethernet-default/ethernet-default target=172.16.14.44/32
add max-limit=3M/4M name="Turistuli Lika" queue=\
    ethernet-default/ethernet-default target=172.16.15.46/32
/interface bridge port
add bridge=bridge1 interface="ether2 LAN"
add bridge=bridge1 interface=ether6
add bridge=bridge1 interface="ether3 Switch"
add bridge=bridge1 interface=ether4
add bridge=bridge1 interface=ether5
add bridge=bridge1 interface=ether7
add bridge=bridge1 interface=ether8
add bridge=bridge1 interface=ether9
add bridge=bridge1 interface=ether10
/ip neighbor discovery-settings
set discover-interface-list=discover
/interface list member
add interface="ether2 LAN" list=discover
add interface="ether2 LAN" list=mactel
/interface pptp-server server
set enabled=yes
/ip address
add address=172.16.0.1/20 interface="ether2 LAN" network=172.16.0.0
add address=92.51.126.218/30 interface="ether1 WAN" network=92.51.126.216
add address=192.168.10.2/24 interface="ether2 LAN" network=192.168.10.0
add address=92.51.126.234/29 interface="ether1 WAN" network=92.51.126.232
add address=92.51.126.235/29 interface="ether1 WAN" network=92.51.126.232
add address=92.51.126.236/29 interface="ether1 WAN" network=92.51.126.232
add address=92.51.126.237/29 interface="ether1 WAN" network=92.51.126.232
add address=192.168.1.1/24 interface="ether2 LAN" network=192.168.1.0
/ip arp
add address=92.51.126.217 interface="ether1 WAN" mac-address=\
    5C:5E:AB:0D:89:08
add address=172.16.0.50 comment=Germanuli interface=bridge1 mac-address=\
    00:26:22:37:66:2B
/ip dhcp-server alert
add alert-timeout=10m disabled=no interface="ether2 LAN" valid-server=\
    6C:3B:6B:BB:8F:AC
/ip dhcp-server lease
add address=172.16.15.159 client-id=1:50:c7:bf:1f:e2:31 mac-address=\
    50:C7:BF:1F:E2:31 server=server1
add address=172.16.15.111 client-id=1:18:d6:c7:75:4c:ff mac-address=\
    18:D6:C7:75:4C:FF server=server1
add address=172.16.15.31 client-id=1:7c:8b:ca:7f:fc:c3 comment=\
    "vaxtang gelxauri" mac-address=7C:8B:CA:7F:FC:C3 server=server1
add address=172.16.14.226 always-broadcast=yes client-id=1:c4:71:54:2:88:b5 \
    comment="sps scaili" mac-address=C4:71:54:02:88:B5 server=server1
add address=172.16.14.221 client-id=1:68:f7:28:81:54:52 comment=\
    "lasha gaprindashvili aveji" mac-address=68:F7:28:81:54:52 server=server1
add address=172.16.15.22 client-id=1:c8:3a:35:64:57:18 comment=\
    "ind metsarme ninomichitashvili" mac-address=C8:3A:35:64:57:18 server=\
    server1
add address=172.16.14.207 client-id=1:4:95:e6:64:d9:d0 comment=\
    "sps stron aveji" mac-address=04:95:E6:64:D9:D0 server=server1
add address=172.16.14.202 client-id=1:18:67:b0:b1:ee:28 comment="sps basi" \
    mac-address=18:67:B0:B1:EE:28 server=server1
add address=172.16.14.200 client-id=1:4:95:e6:64:dc:c0 comment=\
    "sps zhuzhuna tkeshelashvili abaza" mac-address=04:95:E6:64:DC:C0 server=\
    server1
add address=172.16.14.196 client-id=1:4:95:e6:64:b6:f0 comment=\
    "lia gogiashvili" mac-address=04:95:E6:64:B6:F0 server=server1
add address=172.16.14.186 client-id=1:c8:3a:35:4c:51:50 comment=\
    "sps travel for you" mac-address=C8:3A:35:4C:51:50 server=server1
add address=172.16.14.119 client-id=1:4:95:e6:64:f6:70 comment=\
    "ramaz xarebashvili" mac-address=04:95:E6:64:F6:70 server=server1
add address=172.16.14.99 client-id=1:c:80:63:ea:72:7b comment=\
    "nina xurtsidze" mac-address=0C:80:63:EA:72:7B server=server1
add address=172.16.14.101 client-id=1:c8:3a:35:28:68:98 comment=\
    "izabela janelidze" mac-address=C8:3A:35:28:68:98 server=server1
add address=172.16.14.95 client-id=1:cc:2d:21:e:e9:48 comment=bestbai \
    mac-address=CC:2D:21:0E:E9:48 server=server1
add address=172.16.14.40 always-broadcast=yes client-id=1:64:31:50:10:ea:f \
    comment="sps musikrum id 80" mac-address=64:31:50:10:EA:0F server=server1
add address=172.16.14.44 client-id=1:ac:a2:13:af:c1:5b comment=\
    "tornike lomtadze" mac-address=AC:A2:13:AF:C1:5B server=server1
add address=172.16.14.36 client-id=1:c8:3a:35:34:d4:48 comment=\
    "Tornike Lomtadze 2 5 mb" mac-address=C8:3A:35:34:D4:48 server=server1
add address=172.16.15.46 client-id=1:c8:3a:35:fa:63:a8 comment=\
    "mariami alberti" mac-address=C8:3A:35:FA:63:A8 server=server1
/ip dhcp-server network
add address=172.16.0.0/20 dns-server=8.8.8.8,1.1.1.1,172.16.0.1 gateway=\
    172.16.0.1 netmask=20
/ip dns
set cache-max-ttl=2d cache-size=9096KiB max-concurrent-queries=250 \
    max-concurrent-tcp-sessions=100 servers=\
    172.16.0.1,8.8.8.8,8.8.8.4,1.1.1.1
/ip firewall address-list
add address=172.16.0.50-172.16.15.252 list="torrent limit"
add address=92.51.126.216/30 list=LAN-EXCEPTION
/ip firewall filter
add action=accept chain=input connection-state=established
add action=accept chain=forward dst-address=172.16.0.1-172.16.15.254 \
    protocol=udp
add action=accept chain=input comment="acces input udp" protocol=udp
add action=accept chain=forward comment="Forward Established Connections" \
    connection-state=established
add action=accept chain=forward comment="Forward Related Connections" \
    connection-state=related
add action=accept chain=input comment="VPN to Mikrotik" dst-port=1723 \
    protocol=tcp
add action=accept chain=input comment="GRE VPN to Mikrotik" protocol=gre
add action=accept chain=input connection-state=related
add action=accept chain=input comment="access input icmp" protocol=icmp
add action=accept chain=forward comment="acces forward icmp" protocol=icmp
add action=drop chain=input comment="Drop invalid Connections" \
    connection-state=invalid
add action=drop chain=forward comment="Drop Invalid forward Connections" \
    connection-state=invalid
/ip firewall nat
add action=netmap chain=dstnat dst-port=3389 in-interface="ether1 WAN" \
    protocol=tcp to-addresses=172.16.15.254 to-ports=3389
add action=netmap chain=dstnat dst-port=3389 in-interface="ether1 WAN" \
    protocol=udp to-addresses=172.16.15.254 to-ports=3389
add action=netmap chain=dstnat dst-port=8291 in-interface="ether1 WAN" \
    protocol=tcp to-addresses=172.16.15.180 to-ports=8291
add action=netmap chain=srcnat comment=tornike1 src-address=172.16.14.44 \
    to-addresses=92.51.126.237
add action=dst-nat chain=dstnat comment=tornike2 dst-address=92.51.126.237 \
    to-addresses=172.16.14.44
add action=netmap chain=dstnat comment="cameras vaxtang gelxauri" dst-port=\
    8888 in-interface="ether1 WAN" protocol=tcp to-addresses=172.16.15.31 \
    to-ports=8888
add action=masquerade chain=srcnat out-interface="ether1 WAN"
/ip firewall service-port
set ftp disabled=yes
set tftp disabled=yes
set irc disabled=yes
/ip route
add distance=1 gateway=92.51.126.217
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set ssh disabled=yes
set api disabled=yes
set winbox port=
set api-ssl disabled=yes
/lcd
set time-interval=daily
/ppp secret
add local-address=192.168.10.1 name=ppp1 password=******** remote-address=\
    192.168.10.10
/system clock
set time-zone-autodetect=no time-zone-name=Asia/Tbilisi
/system routerboard settings
set silent-boot=no
/tool mac-server
set allowed-interface-list=mactel
 

 

Edited by iraklizh

Share this post


Link to post
Share on other sites
5 minutes ago, iraklizh said:

должно было быть 172.16.0.20/20

Опять вы пишите один IP адрес

опять это адрес из той же самой подсети 172.16.0.0/20

 

 

Share this post


Link to post
Share on other sites

сори, адреса : 172.16.0.20 (255.255.240.0), 172.16.0.21(255.255.240.0) и 172.16.0.22 (255.255.255.0) должны идти через второго isp...

Share this post


Link to post
Share on other sites

@iraklizh 

 

Не вижу в вашем конфиге двух провайдеров и правил маршрутизации вообще.

Но есть следующие замечания:

 - IP адреса на slave интерфейсах, переносите их на бридж

- admin-mac на бридже есть и просто убран тут ? если нет, пропишите

 - вторая подсеть локальная на том же интерфейсе (192.168.10.0/24) зачем нужна ? Для PPTP сервера это не надо, если нужно, чтобы постоянно адрес 192.168.10.1 висел (без подключенных к PPTP серверу, непонятно зачем), сделайте пустой бридж и на него повесьте

- шифрование PPTP сервера ломается на crack.sh за 20 долл. и пару дней, лучше перейти на другой тип VPN

 - адрес самого микротика в IP/DNS не нужен, убирайте его - там прописываются сервера, к которым микротик обращается за резолвингом, к самому себе зачем ему обращаться ?? только лишние задержки 

 -  несколько публичных адресов у вас, они толком не используются, только 237-й передается 1:1 NAT куда-то. Маскарадинг использует только один адрес, в вашей конфигурации с публичной статикой лучше сделать src-nat вместо него, несколько правил с распределением по разным публичным IP

- файрвол открыт полностью !!  drop invalid не закрывает !

- arp запись с IP адресом шлюза провайдера на WAN интерфейсе зачем ? Провайдер сказал так сделать ?

 

On 5/21/2019 at 7:57 PM, iraklizh said:

сори, адреса : 172.16.0.20 (255.255.240.0), 172.16.0.21(255.255.240.0) и 172.16.0.22 (255.255.255.0) должны идти через второго isp...

Т.е. я понял это так из ваших пояснений

- у вас все клиенты в одной локальной сети, все имеют адреса из одной подсети 172.16.0.0/20

- только три указанных выше компьютера с адресами 172.16.0.20, 172.16.0.21, 172.16.0.22 нужно пустить через второго провайдера, все остальные идут через первого

 

Для этого нужно

- по маршруту с routing-mark для каждого провайдера

- правило маршрутизации для локального трафика по таблице main

- четыре правила маршрутизации по таблицам провайдеров, правило для "всех" должно быть последним

т.е.

 

/ip route
add gateway=XX.XX.126.217 routing-mark=ISP1
add gateway=<шлюз второго провайдера> routing-mark=ISP2

/ip route rule
add dst-address=172.16.0.0/20 table=main 
add src-address=172.16.0.20/32 table=ISP2
add src-address=172.16.0.21/32 table=ISP2
add src-address=172.16.0.22/32 table=ISP2
add src-address=172.16.0.0/20 table=ISP1

Порядок правил маршрутизации имеет значение ! 

 

и публичные IP закройте частично, как я сделал

 

Edited by McSea

Share this post


Link to post
Share on other sites
On 5/16/2019 at 11:54 AM, iraklizh said:

задача: настроить балансировку нагрузки и пустить часть юзеров жестко на isp1, других на isp2

и чтобы помере маршрутизации оно еще и биткоины майнило :D . Вы как то определитесь чего хотите. Балансировка по ецмп подразумевает что соединения ВСЕХ юзеров как то деляться между линками. При этом браузер... да, он генерит много соединений, даже на этом убогом форуме, и часть из них пойдет с одного ISP часть с другого. Так работает ecmp, а какая нибудь авторизация через гугл в майл ру так не работает, оно пошлет тебя лесом из-за разных исходящих ип. Есть другие алгоритмы балансировки но оно всегда будет что то автоматически делить по двум линкам, сейчас так через 15 минут наоборот. А жестоко прибить юзеров к аплинкам это уже не балансировка. Для ecmp весь этот километровый конфиг не нужен, достаточно просто прописать один дефолт в стандартной таблице через ецмп :D . Для статичного роутинга достаточно 1 дефолта в ISP2 таблице и 1 правила роут марк. Можно и через врф и через роут рул и через 3 микротика с оспф есть миллион способов сделать простую вещь непростым путем :D

Edited by user71

Share this post


Link to post
Share on other sites

@McSea Спасибо большое в первую очередь за потраченное время на рассмотрение конфига!!!

 вторая подсеть локальная на том же интерфейсе (192.168.10.0/24)-вообще на интерфейсе привязян один 192.168.1.1 (для того что, если узеры неправильно воткнут кабель в свои роутеры, будут генерироваться неправильные dhcp запросы, а то что у меня прописанно всетаки будет мешать работать неправильным dhcp серверам я так понимаю... сеть 192.168.10.0 -в этой подсети у меня свичи... на них адреса 10.2, 10.5, 10.9 для управления свичами из вн. сети или при подключении извне по vpn как бы транспарентны для абонентов... несколько публичных адресов (это подсеть /29, для того чтоб если ктото запросит белый ip по конкретной нужде, и второе хотел сделать так, чтоб использовать в случае если на первом ip большое количество подключений и не остается свободных портов перешло бы автоматом на дрругой, но пока тоже это не смог сделать...

 

файрвол открыт полностью !!  drop invalid не закрывает ! закрыл  drop invalid input и forward... это достаточно или можно кое что улутшить?

- arp запись с IP адресом шлюза провайдера на WAN интерфейсе зачем ? Провайдер сказал так сделать ? нет.. была статья по настройке (вернее несколько статей, в некоторых  это разрешалось в некоторых нет... решил оставить. лутше убрать?

 

 

 

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this