Mikrotik split-dns: fixérono

Pasaron menos de 10 anos desde que os desenvolvedores de RoS (na versión estable 6.47) engadiron unha funcionalidade que lle permite redirixir as solicitudes de DNS de acordo con regras especiais. Se antes era necesario esquivar as regras de capa 7 no firewall, agora faise de forma sinxela e elegante:

/ip dns static
add forward-to=192.168.88.3 regexp=".*\.test1\.localdomain" type=FWD
add forward-to=192.168.88.56 regexp=".*\.test2\.localdomain" type=FWD

A miña felicidade non ten límites!

Con que nos ameaza isto?

Como mínimo, desfacemos estrañas construcións NAT como esta:


/ip firewall layer7-protocol
add comment="DNS Nat contoso.com" name=contoso.com regexp="\x07contoso\x03com"
/ip firewall mangle
add action=mark-packet chain=prerouting comment="mark dns contoso.com" dst-address-type=local dst-port=53 in-interface-list=DNSMASQ layer7-protocol=contoso.com new-packet-mark=dns-contoso.com passthrough=yes protocol=udp
add action=mark-packet chain=prerouting comment="mark dns contoso.com" dst-address-type=local dst-port=53 in-interface-list=DNSMASQ layer7-protocol=contoso.com new-packet-mark=dns-contoso.com passthrough=yes protocol=tcp
/ip firewall nat
add action=dst-nat chain=dstnat comment="DST-NAT dns contoso.com" dst-port=53 in-interface-list=DNSMASQ packet-mark=dns-contoso.com protocol=udp to-addresses=192.0.2.15
add action=dst-nat chain=dstnat comment="DST-NAT dns contoso.com" dst-port=53 in-interface-list=DNSMASQ packet-mark=dns-contoso.com protocol=tcp to-addresses=192.0.2.15
add action=masquerade chain=srcnat comment="mask dns contoso.com" dst-port=53 packet-mark=dns-contoso.com protocol=udp
add action=masquerade chain=srcnat comment="mask dns contoso.com" dst-port=53 packet-mark=dns-contoso.com protocol=tcp

E iso non é todo, agora podes rexistrar varios reenviadores, o que axudará a facer un failover de dns.
O procesamento intelixente de DNS permitirá comezar a introducir ipv6 na rede da empresa. Antes diso, non fixen isto, a razón é que necesitaba resolver unha serie de nomes de dns en enderezos locais, e en ipv6 isto non se podía facer sen muletas bastante grandes.

Fonte: www.habr.com