пятница, 26 апреля 2013 г.

[MIKROTIK] Условная DNS-пересылка

Дано: две локальные сети: одна в центральном офисе (ЦО), другая в филиале, объединенные туннелем IP-IP с помощью роутеров Mikrotik. В филиале DNS-сервером является роутер. Необходимо сделать так, чтобы доменные имена ЦО корректно разрешались клиентами филиала.

Вариант 1: указать на клиентах филиала первичным DNS-сервером IP-адрес сервера имен ЦО (домен hq.in, IP; 10.0.0.2). Этот вариант не "катит", т.к клиенты филиала будут разрешать имена Интернет через DNS-сервер ЦО.

Вариант 2: уловная пересылка. Идеальный вариант, который с успехом используется на DNS-серверах Windows. Но, так как у нас в филиале установлен Mikrotik (IP: 10.1.0.1), по умолчанию такой опции там нет. Однако, нас это не пугает. Открываем в настройках Mikrotik новый терминал и последовательно вводим команды:

/ip firewall layer7-protocol add name=hq.in regexp=hq.in
/ip firewall mangle add chain=prerouting dst-address=10.1.0.1 layer7-protocol=hq.in action=mark-connection new-connection-mark=hq.in-fwd protocol=tcp dst-port=53
/ip firewall mangle add chain=prerouting dst-address=10.1.0.1 layer7-protocol=hq.in action=mark-connection new-connection-mark=hq.in-fwd protocol=udp dst-port=53
/ip firewall nat add action=dst-nat chain=dstnat connection-mark=hq.in-fwd to-addresses=10.0.0.2
/ip firewall nat add action=masquerade chain=srcnat connection-mark=hq.in-fwd

Вуаля! Теперь клиенты филиала, имея DNS-сервером IP-адрес роутера, прекрасно разрешают имена ЦО с помощью сервера ЦО, а Интернет-имена разрешают с помощью своего роутера.

4 комментария:

  1. Огромное спасибо! Если клиентов филиала не вгонять в домен центрального офиса, то разрешать можно только FQDN имена. Так и должно быть?

    ОтветитьУдалить
  2. а вариант, что объеденены две недоменные сети, а средствами микротика прописане домен.
    указанное выше решение в таком случае - не работает

    ОтветитьУдалить
  3. на версии 6.38.5 не работает.
    Пробовал менять regexp на ^.*\.domain\.ru$ тоже не помогло.

    ОтветитьУдалить