<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Unix notes &#187; dns</title>
	<atom:link href="http://unix-notes.ru/category/dns/feed/" rel="self" type="application/rss+xml" />
	<link>http://unix-notes.ru</link>
	<description>Заметки по настройке Unix/Linux систем, хостинг-серверов</description>
	<lastBuildDate>Thu, 03 Nov 2011 12:43:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Организация Backup DNS</title>
		<link>http://unix-notes.ru/2010/07/12/organizaciya-backup-dns/</link>
		<comments>http://unix-notes.ru/2010/07/12/organizaciya-backup-dns/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 13:19:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[dns]]></category>

		<guid isPermaLink="false">http://unix-notes.ru/?p=615</guid>
		<description><![CDATA[Отличный бесплатный сервис для организации backup dns &#8211; afraid.org. Прописываете домен, мастера откуда будет синхронизироваться и все, он сам будет периодически ходить и тягать зону. UPD. удобная тулза для разностороннего теста DNS http://www.intodns.com/]]></description>
			<content:encoded><![CDATA[<p>Отличный бесплатный сервис для организации backup dns &#8211; <noindex><a rel="nofollow" target="_blank" href="http://freedns.afraid.org">afraid.org</a></noindex>. Прописываете домен, мастера откуда будет синхронизироваться и все, он сам будет периодически ходить и тягать зону. </p>
<p>UPD. удобная тулза для разностороннего теста DNS <noindex><a rel="nofollow" target="_blank" href="http://www.intodns.com" >http://www.intodns.com/</a></noindex></p>
]]></content:encoded>
			<wfw:commentRss>http://unix-notes.ru/2010/07/12/organizaciya-backup-dns/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Установка Bind (named) на CentOS</title>
		<link>http://unix-notes.ru/2009/09/14/ustanovka-bind-named-na-centos/</link>
		<comments>http://unix-notes.ru/2009/09/14/ustanovka-bind-named-na-centos/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 10:26:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[dns]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[named]]></category>

		<guid isPermaLink="false">http://unix-notes.ru/?p=481</guid>
		<description><![CDATA[В этой заметке рассмотрим установку bind на CentOS в chroot и синхронизацию (в том числе создание/удаление зон на первом и втором ДНС-сервере). Ставим yum install bind-chroot Создаем файл /var/named/chroot/etc/named.conf options { &#160; &#160; &#160; &#160; listen-on port 53 { 1.2.3.1; }; &#160; &#160; &#160; &#160; directory &#160; &#160; &#160; &#34;/var/named&#34;; &#160; &#160; &#160; &#160; allow-query [...]]]></description>
			<content:encoded><![CDATA[<p>В этой заметке рассмотрим установку bind на CentOS в chroot и синхронизацию (в том числе создание/удаление зон на первом и втором ДНС-сервере).<br />
Ставим</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">yum install bind-chroot</div></div>
<p>Создаем файл /var/named/chroot/etc/named.conf</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">options {<br />
&nbsp; &nbsp; &nbsp; &nbsp; listen-on port 53 { 1.2.3.1; };<br />
&nbsp; &nbsp; &nbsp; &nbsp; directory &nbsp; &nbsp; &nbsp; &quot;/var/named&quot;;<br />
&nbsp; &nbsp; &nbsp; &nbsp; allow-query &nbsp; &nbsp; { any; };<br />
&nbsp; &nbsp; &nbsp; &nbsp; recursion no;<br />
&nbsp; &nbsp; &nbsp; &nbsp; allow-transfer { none; };<br />
&nbsp; &nbsp; &nbsp; &nbsp; version &quot;no version info&quot;;<br />
};<br />
<br />
include &quot;/var/named/zone.conf&quot;;</div></div>
<p>Создаем файл /var/named/chroot/var/named/zone.conf</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">zone &quot;domain1.com&quot; IN {<br />
&nbsp; &nbsp; &nbsp; &nbsp; type master;<br />
&nbsp; &nbsp; &nbsp; &nbsp; file &quot;domain1.com.conf&quot;;<br />
&nbsp; &nbsp; &nbsp; &nbsp; allow-update { none; };<br />
};<br />
<br />
zone &quot;domain2.com&quot; IN {<br />
&nbsp; &nbsp; &nbsp; &nbsp; type master;<br />
&nbsp; &nbsp; &nbsp; &nbsp; file &quot;domain2.com.conf&quot;;<br />
&nbsp; &nbsp; &nbsp; &nbsp; allow-update { none; };<br />
};</div></div>
<p>Ну и файлы зон, например, /var/named/chroot/var/named/domain.com.conf</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$TTL 3600<br />
domain.com. &nbsp; &nbsp;IN &nbsp; &nbsp;SOA &nbsp; &nbsp;ns1.dnsdomain.com. &nbsp; &nbsp;root.domain.com. &nbsp; &nbsp;(<br />
20010610 &nbsp; &nbsp;; Serial<br />
10800 &nbsp; &nbsp; &nbsp; &nbsp;; Refresh<br />
3600 &nbsp; &nbsp; &nbsp; &nbsp;; Retry<br />
604800 &nbsp; &nbsp; &nbsp; &nbsp;; Expire<br />
86400 &nbsp; &nbsp;) &nbsp; &nbsp;; Minimum TTL<br />
<br />
@ &nbsp; &nbsp; &nbsp; &nbsp;IN &nbsp; &nbsp;NS &nbsp; &nbsp;ns1.dnsdomain.com.<br />
@ &nbsp; &nbsp; &nbsp; &nbsp;IN &nbsp; &nbsp;NS &nbsp; &nbsp;ns2.dnsdomain.com.<br />
@ &nbsp; &nbsp; &nbsp; &nbsp;IN &nbsp; &nbsp;A &nbsp;1.2.3.1<br />
www &nbsp; &nbsp; &nbsp;IN &nbsp; &nbsp;CNAME &nbsp;@<br />
@ &nbsp; &nbsp; &nbsp; &nbsp;IN &nbsp; &nbsp;MX 10 &nbsp;mail.domain.com.<br />
mail &nbsp; &nbsp; IN &nbsp; &nbsp;A &nbsp; 1.2.3.1</div></div>
<p>На втором сервере делаем все точно так же.<br />
Теперь про <strong>синхронизацию зон</strong>.</p>
<p>На первом сервере:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cd /root/.ssh<br />
ssh-keygen -b 1024 -t dsa</div></div>
<p>На втором сервере:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">/usr/sbin/useradd -s /bin/bash srv-dns-acct<br />
cd /home/srv-dns-acct/<br />
mkdir .ssh<br />
В файл .ssh/authorized_keys копируем id_dsa.pub с первого сервера<br />
chmod 700 .ssh<br />
chmod 600 .ssh/authorized_keys<br />
chown -R srv-dns-acct /var/named/chroot/var/named<br />
chmod +x /var/named/<br />
chmod +x/var/named/chroot/<br />
chmod +x /var/named/chroot/var/</div></div>
<p>На первом сервере создаем файл /var/named/dnssync.sh:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#!/bin/sh<br />
cd /var/named/chroot/var/named/<br />
tar czvf - *.conf | ssh srv-dns-acct@ns2.domain.com tar xzf - -C /var/named/chroot/var/named/</div></div>
<p>Для добавления зон на одном сервере можно пользоваться таким скриптом:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#!/bin/sh<br />
<br />
# first param - domain, Second - IP<br />
<br />
# Domains base<br />
BASE=&quot;/var/named/chroot/var/named&quot;<br />
<br />
sed -e &quot;s/domain.com/$1/g&quot; &quot;$BASE/sample&quot; &gt; &quot;$BASE/$1.db.tmp&quot;<br />
sed -e &quot;s/1.2.3.4/$2/g&quot; &quot;$BASE/$1.db.tmp&quot; &gt; &quot;$BASE/$1.conf&quot;<br />
echo &quot;zone \&quot;$1\&quot; { type master; file \&quot;$BASE/$1.conf\&quot;; };&quot; &gt;&gt; $BASE/zone.conf<br />
rm &quot;$BASE/$1.db.tmp&quot;<br />
<br />
service named reload</div></div>
]]></content:encoded>
			<wfw:commentRss>http://unix-notes.ru/2009/09/14/ustanovka-bind-named-na-centos/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Установка Tinydns (djbdns) на linux</title>
		<link>http://unix-notes.ru/2009/09/07/ustanovka-tinydns-djbdns-na-linux/</link>
		<comments>http://unix-notes.ru/2009/09/07/ustanovka-tinydns-djbdns-na-linux/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 14:41:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[dns]]></category>
		<category><![CDATA[tinydns]]></category>

		<guid isPermaLink="false">http://unix-notes.ru/?p=462</guid>
		<description><![CDATA[Так как нормальных rpm нет придется ставить из исходников. Сначала ставим daemontools, который будет запускать сервис tinydns, следить за его состоянием и тд. cd /root wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz tar zxvf ./daemontools-0.76.tar.gz В src/conf-cc в строку с gcc добавляем -include /usr/include/errno.h cd ./admin/daemontools-0.76/ ./package/install cd /root wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz tar zxvf ./ucspi-tcp-0.88.tar.gz cd ./ucspi-tcp-0.88 В conf-cc в строку [...]]]></description>
			<content:encoded><![CDATA[<p>Так как нормальных rpm нет придется ставить из исходников.<br />
Сначала ставим daemontools, который будет запускать сервис tinydns, следить за его состоянием и тд.</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cd /root<br />
wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz<br />
tar zxvf ./daemontools-0.76.tar.gz<br />
В src/conf-cc в строку с gcc добавляем -include /usr/include/errno.h<br />
cd ./admin/daemontools-0.76/<br />
./package/install<br />
<br />
cd /root<br />
wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz<br />
tar zxvf ./ucspi-tcp-0.88.tar.gz<br />
cd ./ucspi-tcp-0.88<br />
В conf-cc в строку с gcc добавляем -include /usr/include/errno.h<br />
make<br />
make setup check<br />
<br />
cd /root<br />
wget http://cr.yp.to/djbdns/djbdns-1.05.tar.gz<br />
tar zxvf ./djbdns-1.05.tar.gz<br />
cd djbdns-1.05<br />
echo gcc -O2 -include /usr/include/errno.h &gt; conf-cc<br />
make<br />
make setup check<br />
<br />
groupadd dnsuser<br />
/usr/sbin/useradd -g dnsuser -s /sbin/nologin -d /dev/null tinydns<br />
/usr/sbin/useradd -g dnsuser -s /sbin/nologin -d /dev/null dnslog<br />
/usr/local/bin/tinydns-conf tinydns dnslog /etc/tinydns [ip-сервера]<br />
ln -s /etc/tinydns /service/tinydns #говорим daemontools-у о новом сервисе, он сам его запустит через 5 сек</div></div>
<p>Заполняем файл зон (/etc/tinydns/root/data) по образцу:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">.domain.com::ns1.domain.com.:2500<br />
&amp;domain.com::ns2.domain.com.:2500<br />
@domain.com::mail.domain.com.:10:2500<br />
+domain.com:serverip:2500<br />
+*.domain.com:serverip:2500</div></div>
<p>Делаем в /etc/tinydns/root чтобы перекинуть данные в бинарную версию data.cdb:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">make</div></div>
<p>Проверить что data.cdb содержит требуемые данные:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cd /etc/tinydns/root<br />
tinydns-get a www.domain.com</div></div>
<p>Управление сервисами:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">svc -d /service/tinydns #остановить сервис<br />
svc -u /service/tinydns #запустить сервис<br />
svc -t /service/tinydns #рестартануть сервис<br />
svstat /service/tinydns #проверяем статус</div></div>
<p><strong>Синхронизация зон со вторым ДНС-сервером.</strong></p>
<p>Для синхронизации бинарного файла с данными по зонам (с другим сервером) воспользуемся scp.<br />
На втором днс-сервере необходимо установить аналогичный комплект. Затем на первом сервере:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cd /root/.ssh<br />
ssh-keygen -b 1024 -t dsa</div></div>
<p>На втором сервере:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">/usr/sbin/useradd -s /bin/bash srv-dns-acct<br />
cd /home/srv-dns-acct/<br />
mkdir .ssh<br />
В файл .ssh/authorized_keys копируем id_dsa.pub с первого сервера<br />
chmod 700 .ssh<br />
chmod 600 .ssh/authorized_keys</div></div>
<p>На первом сервере в файл /etc/tinydns/root/Makefile добавляем:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">scp data.cdb srv-dns-acct@ns2.domain.com:/etc/tinydns/root/data.cdb</div></div>
<p>Теперь для синхронизации первого сервера со втором надо на первом сервере:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cd /etc/tinydns/root<br />
make</div></div>
<p>Смотрите так же <a href="http://unix-notes.ru/2009/06/16/skript-dobavleniya-zon-dlya-tinydns/">Скрипт добавления зон</a><br />
Для добавления разных экзотических записей есть <noindex><a rel="nofollow" target="_blank" href="http://www.anders.com/projects/sysadmin/djbdnsRecordBuilder/">tinydns Record Builder</a></noindex></p>
<p>Примечание:<br />
Если вдруг была удалена директория /etc/tinydns/supervise то надо сделать ps auxww |grep sup и грохнуть два процесса supervise. Затем сделать ps auxww |grep sv и грохнуть два процесса svscan. Инит перезапустит svscan, а тот перезапустит supervise и он пересоздаст каталоги.</p>
]]></content:encoded>
			<wfw:commentRss>http://unix-notes.ru/2009/09/07/ustanovka-tinydns-djbdns-na-linux/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dnsmasq для резолва любой зоны</title>
		<link>http://unix-notes.ru/2009/07/13/dnsmasq-rezolv-lyubojj-zony/</link>
		<comments>http://unix-notes.ru/2009/07/13/dnsmasq-rezolv-lyubojj-zony/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 13:32:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[dns]]></category>
		<category><![CDATA[dnsmasq]]></category>

		<guid isPermaLink="false">http://unix-notes.ru/?p=424</guid>
		<description><![CDATA[Понадобился DNS-сервер, который бы мог отвечать одинаковым IP-адресом на запрос о любой зоне. Просто для того чтобы припарковать несколько доменов. С этим отлично справился dnsmasq. Ставим: cd /usr/ports/dns/dnsmasq &#38;&#38; make install или yum install dnsmasq В конфиге понадобится всего лишь одна строка: address=/#/10.10.10.10 Кстати, подобным образом он так же может резолвить MX-запросы. Если при запуске [...]]]></description>
			<content:encoded><![CDATA[<p>Понадобился DNS-сервер, который бы мог отвечать одинаковым IP-адресом на запрос о любой зоне.<br />
Просто для того чтобы припарковать несколько доменов. С этим отлично справился dnsmasq.<br />
Ставим:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cd /usr/ports/dns/dnsmasq &amp;&amp; make install</div></div>
<p>или</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">yum install dnsmasq</div></div>
<p>В конфиге понадобится всего лишь одна строка:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">address=/#/10.10.10.10</div></div>
<p>Кстати, подобным образом он так же может резолвить MX-запросы.</p>
<p>Если при запуске в OpenVZ-контейнере ругается:<br />
dnsmasq: setting capabilities failed: Operation not permitted<br />
то надо добавить в конфиг:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">user=root</div></div>
<p>Для того чтобы dnsmasq заработал во FreeBSD jail надо добавить в конфиг:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">bind-interfaces</div></div>
]]></content:encoded>
			<wfw:commentRss>http://unix-notes.ru/2009/07/13/dnsmasq-rezolv-lyubojj-zony/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Скрипт добавления зон для tinydns</title>
		<link>http://unix-notes.ru/2009/06/16/skript-dobavleniya-zon-dlya-tinydns/</link>
		<comments>http://unix-notes.ru/2009/06/16/skript-dobavleniya-zon-dlya-tinydns/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 15:08:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[dns]]></category>
		<category><![CDATA[tinydns]]></category>

		<guid isPermaLink="false">http://unix-notes.ru/?p=378</guid>
		<description><![CDATA[Для добавления одной зоны: #!/bin/bash DIR=&#34;/service/srvdns/root&#34; cd $DIR if [ &#34;x$1&#34; = &#34;x&#34; ]; then &#160; &#160; echo &#34;Usage: domain.com owner ip&#34; &#160; &#160; exit fi if [ &#34;x$2&#34; = &#34;x&#34; ]; then &#160; &#160; echo &#34;Usage: domain.com owner ip&#34; &#160; &#160; exit fi if [ &#34;x$3&#34; = &#34;x&#34; ]; then &#160; &#160; echo &#34;Usage: [...]]]></description>
			<content:encoded><![CDATA[<p>Для добавления одной зоны:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#!/bin/bash<br />
<br />
DIR=&quot;/service/srvdns/root&quot;<br />
cd $DIR<br />
<br />
if [ &quot;x$1&quot; = &quot;x&quot; ]; then<br />
&nbsp; &nbsp; echo &quot;Usage: domain.com owner ip&quot;<br />
&nbsp; &nbsp; exit<br />
fi<br />
if [ &quot;x$2&quot; = &quot;x&quot; ]; then<br />
&nbsp; &nbsp; echo &quot;Usage: domain.com owner ip&quot;<br />
&nbsp; &nbsp; exit<br />
fi<br />
if [ &quot;x$3&quot; = &quot;x&quot; ]; then<br />
&nbsp; &nbsp; echo &quot;Usage: domain.com owner ip&quot;<br />
&nbsp; &nbsp; exit<br />
fi<br />
<br />
domainexist=`cat $DIR/data | grep -c $1`<br />
if [ $domainexist != &quot;0&quot; ]; then<br />
&nbsp; &nbsp; echo &quot;$1 already exist. Exit.&quot;<br />
&nbsp; &nbsp; exit<br />
fi<br />
<br />
sed -e &quot;s/domain.com/$1/g&quot; &quot;$DIR/domain.com&quot; &gt; &quot;$DIR/tmpfile&quot;<br />
sed -e &quot;s/owner/$2/g&quot; &quot;$DIR/tmpfile&quot; &gt; &quot;$DIR/tmpfile2&quot;<br />
sed -e &quot;s/serverip/$3/g&quot; &quot;$DIR/tmpfile2&quot; &gt;&gt; &quot;$DIR/data&quot;<br />
<br />
rm $DIR/tmpfile<br />
rm $DIR/tmpfile2<br />
make</div></div>
<p>Для добавления нескольких зон из файла-списка:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#!/bin/bash<br />
<br />
DIR=&quot;/service/srvdns/root&quot;<br />
cd $DIR<br />
<br />
if [ &quot;x$1&quot; = &quot;x&quot; ]; then<br />
&nbsp; &nbsp; echo &quot;Usage: owner ip&quot;<br />
&nbsp; &nbsp; exit<br />
fi<br />
if [ &quot;x$2&quot; = &quot;x&quot; ]; then<br />
&nbsp; &nbsp; echo &quot;Usage: owner ip&quot;<br />
&nbsp; &nbsp; exit<br />
fi<br />
<br />
cat $DIR/domainsfile | while read domain; do<br />
<br />
&nbsp; &nbsp; domainexist=`cat $DIR/data | grep -c $domain`<br />
&nbsp; &nbsp; if [ $domainexist != &quot;0&quot; ]; then<br />
&nbsp; &nbsp; &nbsp; &nbsp; echo &quot;$domain already exist. Skipped.&quot;<br />
&nbsp; &nbsp; &nbsp; &nbsp; continue<br />
&nbsp; &nbsp; fi<br />
<br />
&nbsp; &nbsp; sed -e &quot;s/domain.com/$domain/g&quot; &quot;$DIR/domain.com&quot; &gt; &quot;$DIR/tmpfile&quot;<br />
&nbsp; &nbsp; sed -e &quot;s/owner/$1/g&quot; &quot;$DIR/tmpfile&quot; &gt; &quot;$DIR/tmpfile2&quot;<br />
&nbsp; &nbsp; sed -e &quot;s/serverip/$2/g&quot; &quot;$DIR/tmpfile2&quot; &gt;&gt; &quot;$DIR/data&quot;<br />
<br />
&nbsp; &nbsp; rm $DIR/tmpfile<br />
&nbsp; &nbsp; rm $DIR/tmpfile2<br />
done<br />
make</div></div>
<p>Где файл domain.com такой:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">###########################<br />
#owner: domain.com<br />
.domain.com::ns1.domainserver.com.:2500<br />
&amp;domain.com::ns2.domainserver.com.:2500<br />
@domain.com::mail.domain.com.:10:2500<br />
+domain.com:serverip:2500<br />
+*.domain.com:serverip:2500</div></div>
]]></content:encoded>
			<wfw:commentRss>http://unix-notes.ru/2009/06/16/skript-dobavleniya-zon-dlya-tinydns/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>установка tinydns на freebsd</title>
		<link>http://unix-notes.ru/2008/12/25/ustanovka-tinydns-na-freebsd/</link>
		<comments>http://unix-notes.ru/2008/12/25/ustanovka-tinydns-na-freebsd/#comments</comments>
		<pubDate>Thu, 25 Dec 2008 15:29:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[dns]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[tinydns]]></category>

		<guid isPermaLink="false">http://unix-notes.ru/?p=129</guid>
		<description><![CDATA[Сразу замечу, что tinydns это днс-сервер для авторитативных запросов. Если надо еще кэширующий днс-резолвер то необходимо настроить dnscache из того же комплекта. Ставим из портов djbdns, daemontools. затем: echo svscan_enable=&#34;YES&#34; &#62;&#62; /etc/rc.conf tinydns-conf bind bind /etc/tinydns 1.2.3.5 mkdir /var/service ln -s /etc/tinydns /var/service /usr/local/etc/rc.d/svscan.sh start создаем файлик /etc/tinydns/root/data с примерно таким содержимым: #domain.com .domain.com::ns1.domain.com.:2500 &#38;domain.com::ns2.domain.com.:2500 [...]]]></description>
			<content:encoded><![CDATA[<p>Сразу замечу, что tinydns это днс-сервер для авторитативных запросов. Если надо еще кэширующий днс-резолвер то необходимо настроить dnscache из того же комплекта.<br />
Ставим из портов djbdns, daemontools.<br />
затем:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">echo svscan_enable=&quot;YES&quot; &gt;&gt; /etc/rc.conf<br />
tinydns-conf bind bind /etc/tinydns 1.2.3.5<br />
mkdir /var/service<br />
ln -s /etc/tinydns /var/service<br />
/usr/local/etc/rc.d/svscan.sh start</div></div>
<p>создаем файлик /etc/tinydns/root/data с примерно таким содержимым:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#domain.com<br />
.domain.com::ns1.domain.com.:2500<br />
&amp;domain.com::ns2.domain.com.:2500<br />
+ns1.domain.com:192.168.0.1:2500<br />
+ns2.domain.com:192.168.0.1:2500<br />
+domain.com:192.168.0.3:2500<br />
+www.domain.com:192.168.0.3:2500</div></div>
<p>Находясь в /etc/tinydns/root/ делаем tinydns-data</p>
]]></content:encoded>
			<wfw:commentRss>http://unix-notes.ru/2008/12/25/ustanovka-tinydns-na-freebsd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>настройка bind</title>
		<link>http://unix-notes.ru/2008/12/09/nastrojjka-bind/</link>
		<comments>http://unix-notes.ru/2008/12/09/nastrojjka-bind/#comments</comments>
		<pubDate>Tue, 09 Dec 2008 12:45:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[dns]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[bind]]></category>

		<guid isPermaLink="false">http://notes.102050.com/?p=21</guid>
		<description><![CDATA[echo &#34;named_enable=&#34;YES&#34;&#34; &#62;&#62; /etc/rc.conf прописать зону (взять образцовую) /etc/rc.d/named forcestart Образцовая зона: $TTL 3600 domain.com. &#160; &#160;IN &#160; &#160;SOA &#160; &#160;ns1.domain.com. &#160; &#160;root.domain.com. &#160; &#160;( 20010610 &#160; &#160;; Serial 10800 &#160; &#160; &#160; &#160;; Refresh 3600 &#160; &#160; &#160; &#160;; Retry 604800 &#160; &#160; &#160; &#160;; Expire 86400 &#160; &#160;) &#160; &#160;; Minimum TTL @ [...]]]></description>
			<content:encoded><![CDATA[<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">echo &quot;named_enable=&quot;YES&quot;&quot; &gt;&gt; /etc/rc.conf</div></div>
<p>прописать зону (взять образцовую)</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">/etc/rc.d/named forcestart</div></div>
<p>Образцовая зона:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$TTL 3600<br />
domain.com. &nbsp; &nbsp;IN &nbsp; &nbsp;SOA &nbsp; &nbsp;ns1.domain.com. &nbsp; &nbsp;root.domain.com. &nbsp; &nbsp;(<br />
20010610 &nbsp; &nbsp;; Serial<br />
10800 &nbsp; &nbsp; &nbsp; &nbsp;; Refresh<br />
3600 &nbsp; &nbsp; &nbsp; &nbsp;; Retry<br />
604800 &nbsp; &nbsp; &nbsp; &nbsp;; Expire<br />
86400 &nbsp; &nbsp;) &nbsp; &nbsp;; Minimum TTL<br />
<br />
@ &nbsp; &nbsp; &nbsp; IN &nbsp; &nbsp; &nbsp;NS &nbsp; &nbsp; &nbsp;ns1.domain.com.<br />
@ &nbsp; &nbsp; &nbsp; IN &nbsp; &nbsp; &nbsp;NS &nbsp; &nbsp; &nbsp;ns2.domain.com.<br />
ns1 &nbsp; &nbsp; IN &nbsp; &nbsp; &nbsp;A &nbsp; &nbsp; &nbsp; 1.2.3.1<br />
ns2 &nbsp; &nbsp; IN &nbsp; &nbsp; &nbsp;A &nbsp; &nbsp; &nbsp; 1.2.3.1<br />
@ &nbsp; &nbsp; &nbsp; IN &nbsp; &nbsp; &nbsp;A &nbsp; &nbsp; &nbsp; 1.2.3.1<br />
* &nbsp; &nbsp; &nbsp; IN &nbsp; &nbsp; &nbsp;A &nbsp; &nbsp; &nbsp; 1.2.3.1<br />
@ &nbsp; &nbsp; &nbsp; IN &nbsp; &nbsp; &nbsp;MX 10 mail.domain.com.</div></div>
<p>Можно использовать такой скрипт для добавления доменов (create_dns.sh):</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#!/bin/sh<br />
<br />
# first param - domain, Second - IP<br />
<br />
# Domains base<br />
BASE=&quot;/etc/namedb&quot;<br />
<br />
sed -e &quot;s/domain.com/$1/g&quot; &quot;$BASE/master/sample&quot; &gt; &quot;$BASE/master/$1.db.tmp&quot;<br />
sed -e &quot;s/1.2.3.1/$2/g&quot; &quot;$BASE/master/$1.db.tmp&quot; &gt; &quot;$BASE/master/$1.db&quot;<br />
echo &quot;zone \&quot;$1\&quot; { type master; file \&quot;$BASE/master/$1.db\&quot;; };&quot; &gt;&gt; $BASE/named.conf<br />
rm &quot;$BASE/master/$1.db.tmp&quot;<br />
<br />
service named reload<br />
# /etc/rc.d/named forcerestart</div></div>
<p>Для массового добавления доменов:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#!/bin/sh<br />
<br />
# Domains base<br />
BASE=&quot;/etc/namedb&quot;<br />
IP=&quot;3.3.3.3&quot;<br />
<br />
cat /home/adwedes/dnslist| while read domain; do<br />
<br />
&nbsp; &nbsp; sed -e &quot;s/domain.com/$domain/g&quot; &quot;$BASE/master/sample&quot; &gt; &quot;$BASE/master/$domain.db.tmp&quot;<br />
&nbsp; &nbsp; sed -e &quot;s/1.2.3.1/$IP/g&quot; &quot;$BASE/master/$domain.db.tmp&quot; &gt; &quot;$BASE/master/$domain.db&quot;<br />
&nbsp; &nbsp; echo &quot;zone \&quot;$domain\&quot; { type master; file \&quot;$BASE/master/$domain.db\&quot;; };&quot; &gt;&gt; $BASE/named.conf<br />
&nbsp; &nbsp; rm &quot;$BASE/master/$domain.db.tmp&quot;<br />
<br />
done<br />
<br />
/etc/rc.d/named forcerestart</div></div>
]]></content:encoded>
			<wfw:commentRss>http://unix-notes.ru/2008/12/09/nastrojjka-bind/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

