Рубрика: "Linux"
sendmail и ipv6
Столкнулся с проблемой, на которую потратил достаточно много времени.
Суть: при отправке письма через sendmail оно уходило с минутной задержкой. При этом sendmail в логе отчитывается "Message accepted for delivery", а удаленному серверу письмо отдает только через минуту. После ряда экспериментов выяснил зависимость этой задержки от параметра confTO_CONNECT.
Логика не подсказала причины подобного таймаута. Заметил, что процесс отправки (sendmail в отдельном процессе это делает) запускается сразу, но тупо висит. Натравливаю strace на этот процесс и наблюдаю, как он упорно пытается подключиться к удаленному серверу через ipv6 :)
Кстати, найти способ отключить поиск AAAA-записей в sendmail без пересборки не удалось. Поэтому просто отключил ipv6 на уровне ядра: добавил
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
в /etc/sysctl.conf и применил: sysctl -p.
15000
Сегодня, 26 января 2011 г., наступил 15000-й день от начала отсчета часов Unix. Даже создан специальный сайт по этому поводу: www.day15000.com.
Q-in-Q на Linux и коммутаторах D-Link
Q-in-Q – технология, позволяющая назначать два Vlan-тега Ethernet-фрейму. Активно используется провайдерами для увеличения количества доступных вланов или прозрачного пропускания клиентских тегированных вланов. Принцип работы хорошо виден на схеме:
Роутинг и policy-routing в Linux при помощи iproute2
Речь в статье пойдет о роутинге сетевых пакетов в Linux. А конкретно – о типе роутинга под названием policy-routing (роутинг на основании политик). Этот тип роутинга позволяет маршрутизировать пакеты на основании ряда достаточно гибких правил, в отличие от классического механизма маршрутизации destination-routing (роутинг на основании адреса назначения). Policy-routing применяется в случае наличия нескольких сетевых интерфейсов и необходимости отправлять определенные пакеты на определенный интерфейс, причем пакеты определяются не по адресу назначения или не только по адресу назначения. Например, policy-routing может использоваться для: балансировки трафика между несколькими внешними каналами (аплинками), обеспечения доступа к серверу в случае нескольких аплинков, при необходимости отправлять пакеты с разных внутренних адресов через разные внешние интерфейсы, даже для отправки пакетов на разные TCP-порты через разные интерфейсы и т.д.
Для управления сетевыми интерфейсами, маршрутизацией и шейпированием в Linux служит пакет утилит iproute2.