Администрирование

Настройка роутинга для домашнего multihomed сервера

Сейчас наличие нескольких подключений к интернет на одном, в том числе и домашнем сервере — не редкость. Городские локалки, ADSL, 3G модемы… Добавим к этому сети домашние локальные и внешние виртуальные (VPN), и получим ядрёную смесь интерфейсов, между которыми необходимо роутить трафик, балансировать трафик между разными каналами в интернет (когда они есть), и переключаться с нерабочих каналов на рабочие (когда они отваливаются).

Прохождение пакета через таблицы и цепочки netfilter

Основные понятия

Ключевыми понятиями iptables являются:
 

  • Критерий — логическое выражение, анализирующее свойства пакета и/или соединения и определяющее, подпадает ли данный конкретный пакет под действие текущего правила.
  • Действие — описание действия, которое нужно проделать с пакетом и/или соединением в том случае, если они подпадают под действие этого правила. О действиях более подробно будет рассказано ниже.
  • Счетчик — компонент правила, обеспечивающий учет количества пакетов, которые попали под критерий данного правила. Также счетчик учитывает суммарный объем таких пакетов в байтах.
  • Правило — состоит из критерия, действия и счетчика. Если пакет соответствует критерию, к нему применяется действие, и он учитывается счетчиком. Критерия может и не быть — тогда неявно предполагается критерий «все пакеты». Указывать действие тоже не обязательно — в отсутствие действия правило будет работать только как счетчик.
  • Цепочка — упорядоченная последовательность правил. Цепочки можно разделить на пользовательские и базовые.
  • ...

  

Miredo: установка IPv6 в GNU/Linux за 1 минуту

В современных дистрибутивах GNU/Linux существует возможность получить автоматически настроенный IPv6-туннель, введя всего одну команду – даже если ваш провайдер не поддерживает IPv6 или предоставляет выход в Интернет только через свой NAT. Достаточно лишь установить программу под названием Miredo.

Настройка IPv6-файрвола (ip6tables)

Поскольку при использовании IPv6 каждый из компьютеров вашей локальной сети будет иметь настоящий, Интернетовский IP-адрес, важно настроить на вашем маршрутизаторе сетевой экран, который будет блокировать входящие соединения из Интернета, но при этом разрешать исходящие из локальной сети. В GNU/Linux это может выглядеть примерно так:

6to4: IPv6 для имеющих статический «белый» IPv4-адрес

Если ваш провайдер не предоставляет IPv6, но при этом ваш IPv4-адрес статичен, т.е. не меняется никогда, или меняется крайне редко, самым простым и быстрым способом получить в дополнение к IPv4 подсеть IPv6-адресов для вас вероятнее всего будет механизм под названием 6to4.

Этот способ идеален для разного рода серверов (включая как dedicated-сервера, так и варианты VDS/VPS, разрешающие добавлять сетевые туннели), на которых размещены WWW/FTP/IRC/почтовые/радио/видео- и прочие сервисы. 6to4 позволит с минимальными затратами труда и времени сделать всё это доступным и по IPv6 – достаточно лишь настроить его и добавить в DNS AAAA-записи, указывающие на только что полученный 6to4-адрес.