<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Mikrotik.moscow [тема: Аренда DHCP для DNS.]</title>
		<link>http://mikrotik.moscow</link>
		<description>Новое в теме Аренда DHCP для DNS. форума RouterOS на сайте Mikrotik.moscow [mikrotik.moscow]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Thu, 20 Aug 2026 14:54:45 -0400</pubDate>
		<item>
			<title>Аренда DHCP для DNS.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277515">Аренда DHCP для DNS.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Ничего хорошего не вышло… скрипт даже не запускается… просто ничего не делает. <br />
			<i>22.08.2012 02:18:00, SeaburyNorton.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277515</link>
			<guid>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277515</guid>
			<pubDate>Wed, 22 Aug 2012 02:18:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Аренда DHCP для DNS.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277514">Аренда DHCP для DNS.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Просто чтобы сыграть роль адвоката дьявола, второй скрипт на странице опса выше (я вставлю его ниже) позволяет использовать TTL для различения статических и динамически добавленных DNS-записей. В своих скитаниях я нахожу, что этот скрипт чаще используется, чем первый, потому что TTL защищает вручную добавленные записи от перезаписи через DHCP. Не могли бы вы подумать о добавлении вашего скрипта ниже? # Домен, который будет добавлен к имени хоста ваших DHCP-клиентов<br />:local topdomain;<br />:set topdomain "lan";<br /><br /># Используйте ttl, чтобы различать динамически добавленные DNS-записи<br />:local ttl;<br />:set ttl "00:59:59";<br /><br /># Установите переменные для использования<br />:local hostname;<br />:local hostip;<br />:local free;<br /><br /># Удалите все динамические записи<br />/ip dns static;<br />:foreach a in=[find] do={<br /> &nbsp;:if ([get $a ttl] = $ttl) do={<br /> &nbsp; &nbsp;:put ("Удаляю: " . [get $a name] . " : " . [get $a address]);<br /> &nbsp; &nbsp;remove $a;<br /> &nbsp;}<br />}<br /><br />/ip dhcp-server lease ;<br />:foreach i in=[find] do={<br /> &nbsp;/ip dhcp-server lease ;<br /> &nbsp;:if ([:len [get $i host-name]] &gt; 0) do={<br /> &nbsp; &nbsp;:set free "true";<br /> &nbsp; &nbsp;:set hostname ([get $i host-name] . "." . $topdomain);<br /> &nbsp; &nbsp;:set hostip [get $i address];<br /> &nbsp; &nbsp;/ip dns static ;<br /># Проверьте, существует ли запись<br /> &nbsp; &nbsp;:foreach di in [find] do={<br /> &nbsp; &nbsp; &nbsp;:if ([get $di name] = $hostname) do={<br /> &nbsp; &nbsp; &nbsp; &nbsp;:set free "false";<br /> &nbsp; &nbsp; &nbsp; &nbsp;:put ("Не добавляю уже существующую запись: " . $hostname);<br /> &nbsp; &nbsp; &nbsp;}<br /> &nbsp; &nbsp;}<br /> &nbsp; &nbsp;:if ($free = true) do={<br /> &nbsp; &nbsp; &nbsp;:put ("Добавляю: " . $hostname . " : " . $hostip ) ;<br /> &nbsp; &nbsp; &nbsp;/ip dns static add name=$hostname address=$hostip ttl=$ttl;<br /> &nbsp; &nbsp;}<br /> &nbsp;}<br />} <br />
			<i>20.08.2012 17:12:00, SeaburyNorton.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277514</link>
			<guid>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277514</guid>
			<pubDate>Mon, 20 Aug 2012 17:12:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Аренда DHCP для DNS.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277513">Аренда DHCP для DNS.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Я это проверю и сообщу! Полагаю, тебе нужно изменить параметры “server1” и “server2” на те, что указаны на твоем устройстве, а также “.dhcp.lan.local” и “.dhcp.hotspot.local”… (Заранее спасибо!) <br />
			<i>20.08.2012 16:57:00, SeaburyNorton.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277513</link>
			<guid>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277513</guid>
			<pubDate>Mon, 20 Aug 2012 16:57:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Аренда DHCP для DNS.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277512">Аренда DHCP для DNS.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Ну да… вот до чего дошло… <br />
			<i>19.08.2012 20:52:00, SeaburyNorton.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277512</link>
			<guid>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277512</guid>
			<pubDate>Sun, 19 Aug 2012 20:52:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Аренда DHCP для DNS.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277511">Аренда DHCP для DNS.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Ах… так, значит, нужно настраивать DNS-запись в роутере для каждого лиза. Теперь понятно. Ну, сервер, от которого получен лиз, можно увидеть в свойстве "server" лиза. Так что… если я правильно понимаю скрипт, вместо того, чтобы определять `$topdomain` в начале, его нужно определять условно внутри `:if ([:len [get $i host-name]] &gt; 0) do={ \ part`. Что-то вроде: /ip dhcp-server lease ;<br />:foreach i in=[find] \<br />do={ &nbsp;\<br /> &nbsp; &nbsp;/ip dhcp-server lease ;<br /> &nbsp; &nbsp;:if ([:len [get $i host-name]] &gt; 0) do={ \<br /> &nbsp; &nbsp; &nbsp; &nbsp;:if ("server1" == [get $i server]) do={ \<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;:set hostname ([get $i host-name] . ".dhcp.lan.local"); \<br /> &nbsp; &nbsp; &nbsp; &nbsp;} else { \<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;:if ("server2" == [get $i server]) do={ \<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;:set hostname ([get $i host-name] . ".dhcp.hotspot.local"); \<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br /> &nbsp; &nbsp; &nbsp; &nbsp;} \<br /> &nbsp; &nbsp; &nbsp; &nbsp;:set hostip [get $i address]; \<br /> &nbsp; &nbsp; &nbsp; &nbsp;:put ( $hostname . " : " . $hostip ) ; \<br /> &nbsp; &nbsp; &nbsp; &nbsp;/ip dns static ;<br /> &nbsp; &nbsp; &nbsp; &nbsp;:foreach di in [find] do = { :if ([get $di name] = $hostname) do {/ip dns static remove $di }}<br /> &nbsp; &nbsp; &nbsp; &nbsp;/ip dns static add name=$hostname address=$hostip<br /> &nbsp; &nbsp; } &nbsp;\<br />}; <br />
			<i>19.08.2012 20:41:00, boen_robot.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277511</link>
			<guid>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277511</guid>
			<pubDate>Sun, 19 Aug 2012 20:41:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Аренда DHCP для DNS.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277510">Аренда DHCP для DNS.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Что делает этот скрипт, так это создает статические записи в DNS для всех DHCP-аренд, чтобы их можно было легко разрешать по имени. Например, если dhcp1 выдаёт аренды на интерфейсе eth1 с тегом сети "network.lan", то скрипт создаёт записи DNS так, что каждая аренда разрешается по имени хоста: например, mach1.network.lan = 192.168.2.100. Скрипт работает отлично... проблема в том, что если ваша реализация работает с более чем одним DHCP-сервером. Например, если dhcp2 работает от eth2 с тегом сети "second.lan", скрипт постоянно добавляет тег "network.lan" к выдаваемым адресам. Думаю, нужен скрипт, который сможет действительно различать их, если это вообще возможно. <br />
			<i>19.08.2012 19:55:00, SeaburyNorton.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277510</link>
			<guid>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277510</guid>
			<pubDate>Sun, 19 Aug 2012 19:55:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Аренда DHCP для DNS.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277509">Аренда DHCP для DNS.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Нельзя было просто указать это вручную? Например: /ip dhcp-server network add address=192.168.0.100/32 dns-server=dns-for-this-IP <br />
			<i>19.08.2012 19:40:00, boen_robot.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277509</link>
			<guid>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277509</guid>
			<pubDate>Sun, 19 Aug 2012 19:40:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Аренда DHCP для DNS.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277508">Аренда DHCP для DNS.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Я тоже хотел бы узнать ответ на этот вопрос… У меня запущено два DHCP-сервера на 2 разных интерфейсах с 2 разными сетевыми тегами… кто-нибудь? <br />
			<i>19.08.2012 19:07:00, SeaburyNorton.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277508</link>
			<guid>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277508</guid>
			<pubDate>Sun, 19 Aug 2012 19:07:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Аренда DHCP для DNS.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277507">Аренда DHCP для DNS.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Привет! Я нашёл скрипт "Настройка статического DNS-записи для каждого DHCP-лизе" на Wiki, НО у меня несколько разных DHCP-серверов с разными диапазонами IP-адресов. А скрипт добавляет только одно доменное имя ко всем разным лизам. Как мне сделать разницу между разными сетями dhcp.lan.local, dhcp.hotspot.local, dhcp.laptop1.local, dhcp.laptop2.local? :set topdomain "yourdomain.com" ;<br />/ip dhcp-server lease ;<br />:foreach i in=[find] \<br />do={ &nbsp;\<br /> &nbsp; &nbsp;/ip dhcp-server lease ;<br /> &nbsp; &nbsp; &nbsp; &nbsp;:if ([:len [get $i host-name]] &gt; 0) do={ \<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :set hostname ([get $i host-name] . "." . $topdomain); \<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :set hostip [get $i address]; \<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :put ( $hostname . " : " . $hostip ) ; \<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /ip dns static ;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :foreach di in [find] do = { :if ([get $di name] = $hostname) do {/ip dns static remove $di }}<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /ip dns static add name=$hostname address=$hostip<br /> &nbsp; &nbsp; &nbsp; &nbsp; } &nbsp;\<br />}; <br />
			<i>10.12.2007 13:05:00, raymonvdm.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277507</link>
			<guid>http://mikrotik.moscow/forum/forum57/70088-arenda-dhcp-dlya-dns./message277507</guid>
			<pubDate>Mon, 10 Dec 2007 13:05:00 -0500</pubDate>
			<category>RouterOS</category>
		</item>
	</channel>
</rss>
