Bozaro

Скрипты

Локальный DNS на DD-WRT

by on Окт.29, 2010, under Скрипты

Так уж получилось, что моя домашняя сеть разнесена географически.

Для обеспечения прозрачной маршрутизации я пробросил IP-over-IP тунель, но у этого решения остался один существенный недостаток – DNS оставался в каждой подсети свой.

От идеи поднять общий DNS-сервер я сразу отказался, так как каждая сеть должна работать независимо от работоспособности другой сети.

Принцип решения данной проблемы:

  1. На DD-WRT установлен DNS-сервер Dnsmasq. Он не только работает, как кэширующий DNS-сервер, но и возвращает A и PTR для записей, которые перечислены в файле /etc/hosts на точке доступа;
  2. Файл /etc/hosts на точке доступа не статичен – он может измениться внутренним DHCP-сервером и при перезагрузке точки доступа;
  3. Для того, чтобы Dnsmasq перечитал файл, ему нужно отправить HUP сигнал: killall -1 dnsmasq

В результате я написал на python небольшой скрипт: dns-ddwrt.

Этот скрипт:

  1. скачивает с моих точек доступа по SSH исходные файлы hosts;
  2. объединяет их;
  3. добавляет к этому списку перечень виртуальных OpenVZ машин;
  4. записывает полученный результат обратно на точки доступа и перезапускает на них dnsmasq.

Скрипт поставил в cron и радуюсь :)

Leave a Comment :, , , , more...

Сборка шаблона Gentoo для OpenVZ

by on Окт.29, 2010, under Без рубрики, Серверный софт, Скрипты

На странице http://wiki.openvz.org/Download/template/precreated есть шаблон для Gentoo.

Этот шаблон датирован 2008-ым годом и с тех пор не обновлялся. При этом, если обновить уже установленный контейнер, то после его перезагрузки перестаюст стартовать демоны.

Пошаговая инструкция для сборки контейнера есть на: http://wiki.openvz.org/Gentoo_template_creation.

После прочтения этого руководства я написал скрипт, который позволяет собрать шаблон из архивов stage-3 и portage: openvz.zip

Скрипт должен запускаться под рутом. Сборка может производиться из любой Linux-системы (не обязательно из Gentoo).

2 Comments :, , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...