<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Mikrotik.moscow [тема: Синхронизировать два списка адресов в определённое время.]</title>
		<link>http://mikrotik.moscow</link>
		<description>Новое в теме Синхронизировать два списка адресов в определённое время. форума RouterOS на сайте Mikrotik.moscow [mikrotik.moscow]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Wed, 05 Aug 2026 05:23:11 -0400</pubDate>
		<item>
			<title>Синхронизировать два списка адресов в определённое время.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421169">Синхронизировать два списка адресов в определённое время.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Привет. Я пытаюсь синхронизироваться по примеру 1, и получаю такую ошибку: PHP Fatal error: Uncaught exception 'PEAR2\Net\RouterOS\DataFlowException' с сообщением 'Асинхронные команды должны иметь тег.' в phar:///home/kolan/sync/PEAR2_Net_RouterOS-1.0.0b5.phar/PEAR2_Net_RouterOS-1.0.0b5/src/PEAR2/Net/RouterOS/Client.php:359 &nbsp;<br />Стек вызовов: &nbsp;<br />#0 /home/kolan/sync/sync.php(34): PEAR2\Net\RouterOS\Client-&gt;sendAsync(Object(PEAR2\Net\RouterOS\Request), Object(Closure)) &nbsp;<br />#1 {main} &nbsp;<br />брошено в phar:///home/kolan/sync/PEAR2_Net_RouterOS-1.0.0b5.phar/PEAR2_Net_RouterOS-1.0.0b5/src/PEAR2/Net/RouterOS/Client.php на строке 359. &nbsp;<br />Что я делаю не так?) <br />
			<i>03.03.2020 15:03:00, operhunt.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421169</link>
			<guid>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421169</guid>
			<pubDate>Tue, 03 Mar 2020 15:03:00 -0500</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Синхронизировать два списка адресов в определённое время.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421168">Синхронизировать два списка адресов в определённое время.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Ох, да… Нужно было добавить удаление там… Ладно, я исправил это выше, теперь старый список адресов очищается перед тем, как элементы добавляются (или перезагружаются). <br />
			<i>02.04.2015 12:41:00, boen_robot.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421168</link>
			<guid>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421168</guid>
			<pubDate>Thu, 02 Apr 2015 12:41:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Синхронизировать два списка адресов в определённое время.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421167">Синхронизировать два списка адресов в определённое время.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Очевидно, что boen_robot обладает куда большим опытом в Mikrotik Scripting, это действительно очень аккуратное решение. Как бы ты поступил во втором примере, чтобы убедиться, что записи тоже удаляются? <br />
			<i>02.04.2015 11:56:00, jurgenskrause.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421167</link>
			<guid>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421167</guid>
			<pubDate>Thu, 02 Apr 2015 11:56:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Синхронизировать два списка адресов в определённое время.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421166">Синхронизировать два списка адресов в определённое время.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Если вы используете API-приложение, вам даже не нужно планировать синхронизацию. Можно держать API-соединение открытым и синхронизировать сразу, как только элемент будет добавлен или удалён из списка адресов. Например, с PHP (запускается из командной строки, а не с веб-страницы!):<br /><br />&lt;?php<br />use PEAR2\Net\RouterOS;<br /><br />require_once 'PEAR2_Net_RouterOS-1.0.0b5.phar';<br /><br />$master = new RouterOS\Client('master-router-ip', 'admin', 'password');<br />$slaveUtil = new RouterOS\Util($slave = new RouterOS\Client('slave-router-ip', 'admin', 'password'));<br />$slaveUtil-&gt;setMenu('/ip firewall address-list');<br /><br />$addressLists = array('List1', 'List2');<br /><br />$master-&gt;sendAsync(<br /> &nbsp; &nbsp;new RouterOS\Request('/ip firewall address-list listen'),<br /> &nbsp; &nbsp;function ($response) use ($addressLists, $slave, $slaveUtil) {<br /> &nbsp; &nbsp; &nbsp; &nbsp;if (in_array($response('list'), $addressLists, true)) {<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (null !== $response('.dead')) {<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//Удалено<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$slaveUtil-&gt;remove(<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$slaveUtil-&gt;find(<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;RouterOS\Query::where('list', $response('list'))-&gt;andWhere('address', $response('address'))<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;)<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;);<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} else {<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//Добавлено<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$slaveUtil-&gt;add(<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;array(<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;'list' =&gt; $response('list'),<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;'address' =&gt; $response('address')<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;)<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;);<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br /> &nbsp; &nbsp; &nbsp; &nbsp;}<br /> &nbsp; &nbsp;}<br />);<br />$master-&gt;loop();<br /><br />Или, если вы не хотите использовать третье устройство, можно воспользоваться идеей jurgenskrause… Только её можно реализовать проще и эффективнее…<br /><br />На мастере запланируйте:<br /><br /># Список через точку с запятой адресных списков, которые нужно синхронизировать<br />:local lists {"List1";"List2"}<br /><br /># Имя файла экспорта (должно совпадать с именем файла импорта на принимающем роутере)<br />:local exportFile "ExportAddressList.rsc"<br /><br />:local fileContents "/ip firewall address-list\n"<br />:foreach i in=$lists do={<br /> &nbsp; &nbsp;:set $fileContents ($fileContents . "remove [find list=\"" . $i . "\"]\n")<br /> &nbsp; &nbsp;:foreach j in=[/ip firewall address-list print as-value where list=$i] do={<br /> &nbsp; &nbsp; &nbsp; &nbsp;:set $fileContents ($fileContents . "add list=\"" . ($j-&gt;"list") . "\" address=\"" . ($j-&gt;"address") . "\"\n")<br /> &nbsp; &nbsp;}<br />}<br /><br /># Только первый раз<br />:if ([/file print count-only where name=$exportFile] = 0) {<br /> &nbsp; &nbsp;/file print file=$exportFile<br /> &nbsp; &nbsp;:delay 2s<br />}<br /><br />/file set $exportFile contents=$fileContents<br /><br />На слейве запланируйте:<br /><br /># Имя файла экспорта (должно совпадать с именем файла импорта на принимающем роутере)<br />:local importFile "ExportAddressList.rsc"<br /><br /># IP-адрес роутера с существующими адресными списками<br />:local hostIP 1.2.3.4<br /><br /># FTP-пользователь и пароль<br />:local ftpUser username<br />:local ftpPassword userpassword<br /><br />/tool fetch address=$hostIP src-path=$importFile dst-path=$importFile mode=ftp user=$ftpUser password=$ftpPassword<br />/import $importFile <br />
			<i>02.04.2015 10:49:00, boen_robot.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421166</link>
			<guid>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421166</guid>
			<pubDate>Thu, 02 Apr 2015 10:49:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Синхронизировать два списка адресов в определённое время.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421165">Синхронизировать два списка адресов в определённое время.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Знаю, что отвечаю с опозданием, но у меня была такая же проблема. Списки адресов, которые мне нужно синхронизировать, достаточно маленькие, поэтому я смог сделать это с помощью скриптов на обоих роутерах. Скрипт доступен по ссылке: <noindex><a href="http://binaryheartbeat.blogspot.com/2015/03/mirkotik-synchronize-address-list.html" target="_blank" rel="nofollow" >http://binaryheartbeat.blogspot.com/2015/03/mirkotik-synchronize-address-list.html</a></noindex> <br />
			<i>02.04.2015 10:00:00, jurgenskrause.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421165</link>
			<guid>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421165</guid>
			<pubDate>Thu, 02 Apr 2015 10:00:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Синхронизировать два списка адресов в определённое время.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421164">Синхронизировать два списка адресов в определённое время.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Тебе придётся создать какую-то внешнюю программу для этого. Можно посмотреть в сторону API или скриптов. Я бы выбрал сделать API и базу данных, чтобы синхронизировать и отправлять только изменения. <br />
			<i>13.12.2011 13:23:00, janisk.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421164</link>
			<guid>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421164</guid>
			<pubDate>Tue, 13 Dec 2011 13:23:00 -0500</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Синхронизировать два списка адресов в определённое время.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421163">Синхронизировать два списка адресов в определённое время.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Привет! Есть похожая задача. Все изменения происходят на главном ROS, на списках-ведомых только копируются. Подскажи, как это лучше реализовать? <br />
			<i>13.12.2011 07:47:00, dimedrol.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421163</link>
			<guid>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421163</guid>
			<pubDate>Tue, 13 Dec 2011 07:47:00 -0500</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>Синхронизировать два списка адресов в определённое время.</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421162">Синхронизировать два списка адресов в определённое время.</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Мне это нужно — периодически синхронизировать два списка адресов, есть какой-то способ? Понятия не имею, как это сделать... Очевидно, что это две разные mikritok на двух разных X86... <br />
			<i>26.10.2011 18:35:00, sirkike.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421162</link>
			<guid>http://mikrotik.moscow/forum/forum57/87866-sinkhronizirovat-dva-spiska-adresov-v-opredelyennoe-vremya./message421162</guid>
			<pubDate>Wed, 26 Oct 2011 18:35:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
	</channel>
</rss>
