Не работает DNS после маркировки.

Раздел для тех, кто начинает знакомиться с MikroTik
Правила форума
Как правильно оформить вопрос.
Прежде чем начать настройку роутера, представьте, как это работает. Попробуйте почитать статьи об устройстве интернет-сетей. Убедитесь, что всё, что Вы задумали выполнимо вообще и на данном оборудовании в частности.
Не нужно изначально строить Наполеоновских планов. Попробуйте настроить простейшую конфигурацию, а усложнения добавлять в случае успеха постепенно.
Пожалуйста, не игнорируйте правила русского языка. Отсутствие знаков препинания и неграмотность автора топика для многих гуру достаточный повод проигнорировать топик вообще.

1. Назовите технологию подключения (динамический DHCP, L2TP, PPTP или что-то иное)
2. Изучите темку "Действия до настройки роутера".
viewtopic.php?f=15&t=2083
3. Настройте согласно выбранного Вами мануала
4. Дочитайте мануал до конца и без пропусков, в 70% случаев люди просто не до конца читают статью и пропускают важные моменты.
5. Если не получается, в Winbox открываем терминал и вбиваем там /export hide-sensitive. Результат в топик под кат, интимные подробности типа личных IP изменить на другие, пароль забить звездочками.
6. Нарисуйте Вашу сеть, рисунок (схему) сюда. На словах может быть одно, в действительности другое.
Ответить
kriostar
Сообщения: 52
Зарегистрирован: 26 фев 2013, 16:59

Здравствуйте!
Решил распределить нагрузку (WiFi и Ethernet) на два подключения PPPoE, значит убрал DNS автоматом, add default route удалил из PPPoE соединений. Создал два адрес листа (WiFi и Ethernet), два маркера в NAT (PPPoE_1 и PPPoE_2). В Routes создал два правила обработки маркированного трафика. Включил, соединения поднялись, смотрю трафик ходит, а маршрутизатор в качестве DNS сервера не работает, хоть ставь галку на IP-DNS хоть не ставь. В результате выдача внешнего DNS посредством DHCP спасла ситуацию, в квартире появился интернет. Конфиг в данный момент прицепить не могу на работе работаю.
Может есть у кого соображения как поправить мои кривые руки?
P/S RB-433, добавил конфиг:
********************************************************************************************

Код: Выделить всё

/interface bridge
add name=bridge_link
add name=bridge_link2
/interface pppoe-client
add disabled=no interface=ether1 name=pppoe-out1 password=XXX user=XXX
add disabled=no interface=ether1 name=pppoe-out2 password=YYY user=YYY
/ip pool
add name=dhcp_pool1 ranges=172.16.10.2-172.16.10.25
add name=dhcp_pool2 ranges=172.16.11.4-172.16.11.25
/ip dhcp-server
add add-arp=yes address-pool=dhcp_pool1 disabled=no interface=bridge_link name=dhcp1
add add-arp=yes address-pool=dhcp_pool2 disabled=no interface=bridge_link2 name=dhcp2
/interface bridge port
add bridge=bridge_link interface=ether3
add bridge=bridge_link2 interface=ether2
/ip address
add address=172.16.10.1/24 interface=bridge_link network=172.16.10.0
add address=172.16.11.1/24 interface=bridge_link2 network=172.16.11.0
/ip dhcp-server network
add address=172.16.10.0/24 dns-server=77.88.8.8,77.88.8.1 gateway=172.16.10.1
add address=172.16.11.0/24 dns-server=77.88.8.8,77.88.8.1 gateway=172.16.11.1
/ip dns
set allow-remote-requests=yes servers=77.88.8.8,77.88.8.1
/ip firewall address-list
add address=172.16.10.0/24 list=Ethernet
add address=172.16.11.0/24 list=WiFi
/ip firewall mangle
add action=mark-routing chain=prerouting new-routing-mark=PPPoE_1 passthrough=yes src-address-list=Ethernet
add action=mark-routing chain=prerouting new-routing-mark=PPPoE_2 passthrough=yes src-address-list=WiFi
/ip firewall nat
add action=masquerade chain=srcnat src-address-list=Ethernet
add action=masquerade chain=srcnat src-address-list=WiFi
/ip route
add comment="Route Mark \"PPPoE_1\"" distance=1 gateway=pppoe-out1 routing-mark=PPPoE_1
add comment="Route Mark \"PPPoE_2\"" distance=1 gateway=pppoe-out2 routing-mark=PPPoE_2
/ip route rule
add action=drop disabled=yes dst-address=172.16.11.0/24 src-address=172.16.10.0/24
add action=drop disabled=yes dst-address=172.16.10.0/24 src-address=172.16.11.0/24


Аватара пользователя
Vlad-2
Модератор
Сообщения: 2531
Зарегистрирован: 08 апр 2016, 19:19
Откуда: Петропавловск-Камчатский (п-ов Камчатка)
Контактная информация:

kriostar писал(а):Здравствуйте!
Решил распределить нагрузку (WiFi и Ethernet) на два подключения PPPoE, значит убрал DNS автоматом, add default route удалил из PPPoE соединений. Создал два адрес листа (WiFi и Ethernet), два маркера в NAT (PPPoE_1 и PPPoE_2). В Routes создал два правила обработки маркированного трафика. Включил, соединения поднялись, смотрю трафик ходит, а маршрутизатор в качестве DNS сервера не работает, хоть ставь галку на IP-DNS хоть не ставь. В результате выдача внешнего DNS посредством DHCP спасла ситуацию, в квартире появился интернет. Конфиг в данный момент прицепить не могу на работе работаю.
Может есть у кого соображения как поправить мои кривые руки?


1) Ну давайте начнём с простого (относительно конечно):
а) заходим в IP - DNS и ставим там галочку (allow....) и руками вручную указываем скажем 8.8.8.8
б) заходим в DHCP сервер, вторая закладка, где описывается сеть, и в качестве DNS для локалки указываем ЛОКАЛЬНЫЙ IP Вашего микротика.
в) идём на компьютер, отключаем сетевуху или делаем ipconfig /renew, проверяем командой ipconfig /all что DHCP отдал в качестве DNS - IP-адрес Вашего микротика.
г) запускаем консольку (cmd) и запустив потом nslookup в интерактивном режиме - убеждаемся, что он подключился к DNS серверу на IP-микротика
д) пробуем отрезолвиить ya.ru

2) сложнее, но более гибкий способ:
а) в настройках IP - DNS убираем все DNS'ы статические (должно быть пусто)
б) лезем в настройки рррое профиля первого провайдера, ставим в свойствах "Use Peer DNS" и переподключаемся к провайдеру
в) идём снова в IP - DNS и записываем на бумажке те IP-адреса DNS'ов первого провайдера что нам BRAS сервер отдал.
г) убираем галочку в профиле рррое для первого провайдера (возвращаем как было)
Повторяем процедуры для второго провайдера также с б-в-г
В итоге мы будем иметь как минимум по одному DNS серверу для каждого провайдера.
Лезем в таблицу маршрутизации и руками делаем статические записи, в таком формате:
IP-адрес DNS провайдера1 идёт через рррое провайдера 1 (можете явно поиграться и указать/не указывать маркировку маршрута)
IP-адрес DNS провайдера2 идёт через рррое провайдера 2 (можете явно поиграться и указать/не указывать маркировку маршрута)
Тем самым мы явно заставим обращаться тому или иному DNS'у явно через то подключение, что надо.
Ну и конечно осталось эти же адреса прописать уже в ручную в IP - DNS микротика.
Для локальной сети в DHCP всё также оставляем локальный IP микротика.

Важные моменты:
Ну и хочу напомнить, что маркировка существует только в рамках роутера, ну и маркировать локальный трафик не надо без
надобности, поэтому на всякий случай проверьте всё, ну и начните с первого способа, дабы убедиться ....
Также на всякий случай, после того как Вы включите внутренний сервер DNS микротика, у Вас сразу могут
быть атака по этим портам, поэтому Вам надо на файрволле закрыть для рррое интерфейсов входящие запросы
по 53 порту по протоколам UDP и TCP.

Удачи...



На работе(ах): 2xCCR1016-12G, RB3011UiAS и hAP lite (RB941)
Дома: CCR1016-12G, RBcAP2n (standalone), RB wAP LTE kit
Для тестов(под рукой): RB3011UiAS, hAP mini (RB931) и что-то ещё по мелочи
MTCNA
MTCRE
Аватара пользователя
Vlad-2
Модератор
Сообщения: 2531
Зарегистрирован: 08 апр 2016, 19:19
Откуда: Петропавловск-Камчатский (п-ов Камчатка)
Контактная информация:

kriostar писал(а):/ip dhcp-server network
add address=172.16.10.0/24 dns-server=77.88.8.8,77.88.8.1 gateway=172.16.10.1
add address=172.16.11.0/24 dns-server=77.88.8.8,77.88.8.1 gateway=172.16.11.1

ну вот при такой настройке с DNS'ом и могут проблемы в том плане,
что обе сети пытаются общаться с данными общими для них - DNS'ами,
но так как Вы их явно не помечаете, а DNS-клиенты (компы) ждут ответ на свой запрос,
роутер по сути не знает кому какой ответ пришедший с этих DNS'ов и отдавать.
Как проверка этой моей идеи, попробуйте одной сети прописать только яндекс-днс,
а другой только гугл-днс, для проверки РАДИ!

А в целом, как я описал выше (в первом сообщении) - коли у Вас и два DHCP сервера,
то в каждом DHCP указываете IP-адрес бриджа как DNS-локальный для своей сети и всё.
Тогда пользователи не будут дважды бегать, как сейчас, пример: клиент запросили адрес вконтаке-ком,
через роутер добежали пакеты до внешнего днса, вернулись клиенту с адресом,
и потом начали снова бежать до самого ресурса нужного.
Поэтому запускайте локальный DNS на микротике, настройте его и отдавайте в каждую сеть и всё будет работать....



На работе(ах): 2xCCR1016-12G, RB3011UiAS и hAP lite (RB941)
Дома: CCR1016-12G, RBcAP2n (standalone), RB wAP LTE kit
Для тестов(под рукой): RB3011UiAS, hAP mini (RB931) и что-то ещё по мелочи
MTCNA
MTCRE
kriostar
Сообщения: 52
Зарегистрирован: 26 фев 2013, 16:59

Код: Выделить всё

/ip dhcp-server network
add address=172.16.10.0/24 dns-server=77.88.8.8,77.88.8.1 gateway=172.16.10.1
add address=172.16.11.0/24 dns-server=77.88.8.8,77.88.8.1 gateway=172.16.11.1

Спасибо, что отозвались на проблему, но как раз при такой настройке все работает.
Не работает как только, если конфиг:

Код: Выделить всё

/ip dhcp-server network
add address=172.16.10.0/24 dns-server=172.16.10.1 gateway=172.16.10.1
add address=172.16.11.0/24 dns-server=172.16.10.1 gateway=172.16.11.1

Пинг есть непосредственно до ip, но ничего не резольвится. Выключил PPPoE-2 и связанную с ним маркировку, такая же беда (думал что проблема связана с одним и тем же ДНС, PPPoЕ от одного прова, нет ошибся). Как только вытаскиваешь канал какой-то из маркировки все чудом работает...
Вот так примерно работает:

Код: Выделить всё

/interface bridge
add name=bridge_link
add name=bridge_link2
/interface pppoe-client
add add-default-route=yes disabled=no interface=ether1 name=pppoe-out1 password=89838765 use-peer-dns=yes user=j34rtkan74
add disabled=no interface=ether1 max-mru=1480 max-mtu=1480 mrru=1600 name=pppoe-out2 password=xdsl user=xdsl
/ip pool
add name=dhcp_pool1 ranges=172.16.10.2-172.16.10.25
add name=dhcp_pool2 ranges=172.16.11.4-172.16.11.25
/ip dhcp-server
add add-arp=yes address-pool=dhcp_pool1 disabled=no interface=bridge_link name=dhcp1
add add-arp=yes address-pool=dhcp_pool2 disabled=no interface=bridge_link2 name=dhcp2
/interface bridge port
add bridge=bridge_link interface=ether3
add bridge=bridge_link2 interface=ether2
/ip address
add address=172.16.10.1/24 interface=bridge_link network=172.16.10.0
add address=172.16.11.1/24 interface=bridge_link2 network=172.16.11.0
/ip dhcp-server network
add address=172.16.10.0/24 dns-server=172.16.10.1 gateway=172.16.10.1
add address=172.16.11.0/24 dns-server=172.16.11.1 gateway=172.16.11.1
/ip dns
set allow-remote-requests=yes
/ip firewall address-list
add address=172.16.10.0/24 list=Ethernet
add address=172.16.11.0/24 list=WiFi
/ip firewall mangle
add action=mark-routing chain=prerouting new-routing-mark=PPPoE_2 passthrough=yes src-address-list=WiFi
/ip firewall nat
add action=masquerade chain=srcnat src-address-list=Ethernet
add action=masquerade chain=srcnat src-address-list=WiFi
/ip route
add distance=1 gateway=pppoe-out2 routing-mark=PPPoE_2

Но PPPoE может быть не два, а три к примеру. Черт кроется в деталях...


Аватара пользователя
Vlad-2
Модератор
Сообщения: 2531
Зарегистрирован: 08 апр 2016, 19:19
Откуда: Петропавловск-Камчатский (п-ов Камчатка)
Контактная информация:

kriostar писал(а):Пинг есть непосредственно до ip, но ничего не резольвится. Выключил PPPoE-2 и связанную с ним маркировку, такая же беда (думал что проблема связана с одним и тем же ДНС, PPPoЕ от одного прова, нет ошибся). Как только вытаскиваешь канал какой-то из маркировки все чудом работает...

Давайте отделять внутреннюю работу роутера от внешней.
По правилам хорошего тона или из лучшей практики, рекомендуют задействовать
DNS микротика для локальных пользователей, поэтому локальный DNS для каждой сети
должен быть сделан и это будет только плюс, почему не резолвиться, это уже вторая часть,
но к работе DHCP и какие адреса он должен давать клиентам не относиться.
Поэтому рекомендую убрать внешние DNS's и сделать красиво с локальными.
kriostar писал(а):Но PPPoE может быть не два, а три к примеру. Черт кроется в деталях...

Деталей много, но одна из них, в виде аллегории опишу:
"Вы хотите пожарить курицу, но решаете не делать это в духовке, а делать в микроволновке",
так и тут, Вы маркируете NAT для каждого провайдера, и всё, то есть делаете только 30%
от нужных действий, а этого мало.
1-я ошибка, Вы маркируете только пакеты NAT, а надо маркировать и входящие и исходящие и промежуточные
пакеты для каждого провайдера, чтобы роутер и Вы знали какой пакет откуда пришёл и куда должен уйти.
Поэтому Вы должны маркировку делать в закладке MANGLE и там это всё прописывать,
два Ваших правила NAT с маркировкой мало.
2-я ошибка, Вы не создали в таблице маршрутизации шлюз по умолчанию, то есть у Вас один провайдер
должен быть по-дефолту, вот сделайте к уже помеченным маршрутом, такой же маршрут на любого
провайдера как дефолтный и у Вас сразу заработает уже DNS и другие моменты, как роутеру,
как и другим функциям, им надо знать куда уйти и откуда прийти.

Ну и вот Вам презент: очень хорошая шпаргалка, я человеку на протяжении пару дней тут
почти всё досконально описал как делать правильно и гибко, почитайте, там на 90-95% готовая конфигурация.
(Шпора тута ===>) http://forummikrotik.ru/viewtopic.php?f=1&t=7461



На работе(ах): 2xCCR1016-12G, RB3011UiAS и hAP lite (RB941)
Дома: CCR1016-12G, RBcAP2n (standalone), RB wAP LTE kit
Для тестов(под рукой): RB3011UiAS, hAP mini (RB931) и что-то ещё по мелочи
MTCNA
MTCRE
Ответить