Tag: DD-WRT
Локальный DNS на DD-WRT
by Bozaro on Окт.29, 2010, under Скрипты
Так уж получилось, что моя домашняя сеть разнесена географически.
Для обеспечения прозрачной маршрутизации я пробросил IP-over-IP тунель, но у этого решения остался один существенный недостаток – DNS оставался в каждой подсети свой.
От идеи поднять общий DNS-сервер я сразу отказался, так как каждая сеть должна работать независимо от работоспособности другой сети.
Принцип решения данной проблемы:
- На DD-WRT установлен DNS-сервер Dnsmasq. Он не только работает, как кэширующий DNS-сервер, но и возвращает A и PTR для записей, которые перечислены в файле /etc/hosts на точке доступа;
- Файл /etc/hosts на точке доступа не статичен – он может измениться внутренним DHCP-сервером и при перезагрузке точки доступа;
- Для того, чтобы Dnsmasq перечитал файл, ему нужно отправить HUP сигнал: killall -1 dnsmasq
В результате я написал на python небольшой скрипт: dns-ddwrt.
Этот скрипт:
- скачивает с моих точек доступа по SSH исходные файлы hosts;
- объединяет их;
- добавляет к этому списку перечень виртуальных OpenVZ машин;
- записывает полученный результат обратно на точки доступа и перезапускает на них dnsmasq.
Скрипт поставил в cron и радуюсь
Установка DD-WRT на D-Link DIR-320
by Bozaro on Июн.20, 2010, under Сети
Недавно прикупил в магазине точку доступа D-Link DIR-320 с намерением поставить на неё прошивку DD-WRT.
Все делал по инструкции – прошивка по tftp заливается, но толку с этого ноль: после перезагрузки точки доступа она кажет по адресу 192.168.0.1 страницу для перепрошивки.
Оказывается, что перепрошить её можно еще проще:
- заливаем через штатную WEB-морду официальной прошивки прошивку: DIR320-wimax-1.2.6 (2.7Mb);
- заливаем через штатную WEB-морду свежеустановленной прошивки любую другую – в моем случае DD-WRT.
К сожалению, я запамятовал, где подсмотрел этот рецепт
Настройка IP-over-IP туннеля между DD-WRT и Ubuntu Linux
by Bozaro on Май.25, 2010, under Сети
Встала задача – пробросить туннель между двумя SOHO-сетями с минимальными затратами.
- Сеть A: функцию маршрутизатора выполняет компьютер на Linux Ubuntu 8.10, интернет через PPPoE;
- Сеть B: маршрутизатор D-Link DIR-300 rev. B1, интернет приходит по Ethernet-у.
В обоих сетях от провайдера получен белый IP. Кол-во компьютеров в каждой сетки более одного.
Сети должны быть связаны, но при этом максимально автономны (у каждой свой DNS и DHCP-сервер).
Алгоритм решения у меня был следующий:
- Установить на D-Link DIR-300 rev. B1 прошивку DD-WRT v24-sp2;
- Настроить туннель IP-over-IP между DD-WRT и Linux;
- Настроить маршрутизацию между подсетями через тунель.
Важный момент: трафик в туннеле передается в открытом виде. Каким образом его можно зашифровать я не разбирался.
Теперь по каждому пункту подробнее… (continue reading…)