Как стать автором
Обновить

Всемирная сеть, когда под рукой «интернета мало и медленно») Шаг 1

Время на прочтение3 мин
Количество просмотров884
Для того, чтобы уменьшить потребляемый трафик нужно ограничить скачивание ненужного контента и по возможности кешировать трафик.

Шаг первый. Кеширование DNS запросов.



Существуют различные программы для этой цели. Так как я противник комбайнов, где «все включено», мне болле симпатична следующая программа.
Deadwood — легкий(~35 kB) локальный DNS сервер, с функцией кеширования. Официально работает в Windows XP и CentOS Linux, другие ОС под вопросом.

Утановка проста. Разархивировав в нужную папку, достаточно установить службу выполнив в командной строке:
Deadwood --install
Для того, чтобы удалить, достаточно выполнить Deadwood --remove, предварительно остановив службу.

После установки, редактируем файл настроек dwood2rc.txt Запуская нашу службу с параметром:
-f file
в качестве файла настроек будет использоваться file

В кратце про используемые параметры:
upstream_servers — список DNS серверов к которым будут отсылаться запросы. Здесь можно указать DNS сервер провайдера, либо любой другой, какой нам симпатичен. Пусть будет = 208.67.222.222, 208.67.220.220 — сервис OpenDNS.
Тут есть одна интересная особенность в данном параметре. Он реализован как словарь переменных. Строку инициализации данного словаря можно увидеть в начале файла конфигурации:
upstream_servers = {}
Преймущества: для любого домена можно указать свой сервер.
Пример, если добавить после строки инициализации данное значение:
upstream_servers[«google.com.»] = «8.8.8.8»
все заканчивающееся на «google.com» будет запрашиваться у DNS сервера «8.8.8.8», а все остальное, согласно следующей строки, у OpenDNS!
bind_address — IP адрес нашего локального сервера. Так как, пока, не будем использовать в роли кеширующего сервера домашней сети — укажем равным 127.0.0.1
recursive_acl — список адресов, кому разрешено использовать данный DNS сервер. Пока, он будет использоваться как локальный сервер, разрешим тоько локальные соединения(в формате IP/маска) = 127.0.0.1/8.
random_seed_file — файл, со случайным содержимым. Deadwood прочитает оттуда только 256 первых байт. Желательно, для безопасности, чтобы содержимое данного файла изменялось при каждом входе в систему.
cache_file — в данном файле будет храниться кешируемая информация. В имени файла могут быть только прописные латинские буквы, символы "-" и "_", и для указания подпапки "/", все остальные символы должны быть заменены на "_".
Теперь можно запустить службу. Для Windows 2k и выше команда:
net start deadwood
После успешного запуска службы в папке программы будет создан лог файл — dwlog

Также, интересны и полезны могут быть некоторые ключи.
chroot_dir — пака из которой запускается служба;
dns_port — наш сервер будет слушать данный порт;
ip_blacklist — список нежелательных IP адресов;
max_inflights — максимальное количество одновременно обслуживаемых клиентов (по умолчанию 8);
maximum_cache_elements — максимальное количество кешируемых элементов (по умолчанию 1024);
Для защиты от атак, порт исходящих запросов постоянно меняется, настроить данную функцию помогут следующие два параметра:
recurse_min_bind_port — номер наименьшего порта с которого будет наш сервер отсылать запросы (по умолчанию 15000);
recurse_number_ports — количество исходящих портов (по умолчанию 4096).

Теперь, когда наш локальный кеширующего DNS сервер запущен можем изменить настройки сетьевого подключения, чтобы использовать его в качестве системного DNS сервера.
далее...
Шаг второй. Кэширующий веб прокси
Теги:
Хабы:
Всего голосов 9: ↑4 и ↓5-1
Комментарии10

Публикации

Ближайшие события