Mikrotik split-dns: ΠΎΠ½ΠΈ это сдСлали

НС ΠΏΡ€ΠΎΡˆΠ»ΠΎ ΠΈ 10 Π»Π΅Ρ‚, ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ RoS (Π² stable 6.47) Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ DNS запросы Π² соотвСтствии со ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ. Если Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π°Π΄ΠΎ Π±Ρ‹Π»ΠΎ ΠΈΠ·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ с Layer-7 ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ Π² firewall, Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ это дСлаСтся просто ΠΈ изящно:

/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

ΠœΠΎΠ΅ΠΌΡƒ ΡΡ‡Π°ΡΡ‚ΡŒΡŽ Π½Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π΅Π»Π°!

Π§Π΅ΠΌ это Π½Π°ΠΌ Π³Ρ€ΠΎΠ·ΠΈΡ‚?

Как ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ, ΠΌΡ‹ избавляСмся ΠΎΡ‚ странных конструкций с NAT Π½Π° ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ этой:


/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

И это Π½Π΅ всС, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ нСсколько сСрвСров пСрСсылки, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ dns failover.
Π˜Π½Ρ‚Π΅Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° DNS даст Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ ipv6 Π² ΡΠ΅Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π”ΠΎ этого я этого Π½Π΅ Π΄Π΅Π»Π°Π», ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ряд dns ΠΈΠΌΠ΅Π½ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ адрСса, Π° Π² ipv6 это Π±Ρ‹Π»ΠΎ Π½Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π±Π΅Π· довольно Π±ΠΎΠ»ΡŒΡˆΠΈΡ… костылСй.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com