Nije prošlo ni 10 godina otkako su programeri RoS (u stable 6.47) dodali funkcionalnost koja omogućava preusmjeravanje DNS upita prema posebnim pravilima. Ako je ranije bilo potrebno snalaziti se s Layer-7 pravilima u firewall-u, sada se to postiže jednostavno i elegantno:
/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
Mojoj sreći nema kraja!
Što to za nas znači?
Na minimum, oslobađamo se čudnih konstrukcija s NAT-om poput ove:
/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
I to nije sve, sada se može definirati nekoliko poslužitelja preusmjeravanja, što će pomoći u postizanju dns failover-a.
Inteligentna obrada DNS-a omogućit će uvođenje ipv6 u mrežu tvrtke. Prije toga to nisam radio, razlog je taj što sam trebao prevesti niz dns imena u lokalne adrese, a to u ipv6 nije bilo moguće bez prilično velikih rješenja.
Izvor: habr.com
