Вы вероятно блокируете DNS; это будет приводить к таймаутам.
Пробуйте использовать опцию "-n" (numeric) для ipchains, который подавляет
преобразование имен.
Удостоверьтесь, что форвардинг пакетов разрешен (в последних версиях ядра, он
не блокируется по умолчанию, что означает, что пакеты не приходят в цепочку
"forward"). Вы можете отменить этот (от root), введя команду
# echo 1 > /proc/sys/net/ipv4/ip_forward
#
Если это у вас сработает, то вы можете поместть эту строку куда-нибудь в ваши
загрузочные сценарии, чтобы она выполнялась при загрузке; firewalling должен
устанавливаться прежде, чем выполнится эта команда.
Вы должны разрешить форвардинг пакетов (см. выше) для того, чтобы
переназначение работало; иначе код маршрутизации отбрасывает пакет. Так, если
вы используете только перенаправление, и вообще не используете форвардинг, то
вы должны знать об этом.
Обратите внимание, что REDIR (находящийся во цепочке input) не вохдействует на
соединения из локального процесса.
В версиях ядра 2.1.102 и 2.1.103 имелась ошибка (и некоторых старых моих
патчах), из-за которой не работали команды ipchains, в которых используется
уайлдкарты интерфейсов (например, -i ppp +).
Это исправлено в последних ядрах, и в сети есть патч для ядра 2.0.34. Вы
можете также установить его вручную на исходники ядра, заменив строку 63 или
около того в include/linux/ip_fw.h:
#define IP_FW_F_MASK 0x002F /* All possible flag bits mask */
Здесь должно стоять ``0x003F". Исправьте это, и пересоберите ядро.
Это было моей ошибкой: установка поля Type of Service фактически не
устанавливала Type of Service в ядрах версий 2.1.102 - 2.1.111. Эта проблема
была исправлена в 2.1.112.
Для 2.0.x это так; у меня нет времени на создание и поддержку
гигантского патча для ipchains и ipautofw/ipportfw.
Для 2.1.x скачайте ipmasqadm Juan Ciarlante'а с
http://juanjox.linuxhq.com/
и используйте его точно так же, как вы использовали бы ipautofw или ipportfw,
за исключением того, что вместо ipportfw вы печатаете ipmasqadm portfw, а
вместо ipautofw печатаете ipmasqadm autofw.
Возьмите версию 1.6.0 или выше, которым для ядер 2.1.x не требуются никаких
правил firewall. Эта ошибка автора, кажется, снова появилась в версии 1.6.1
(это не моя ошибка!).
Это была ошибка в ipchains версии 1.3.3. Пожалуйста обновите.
Это было так (для ядер 2.1.x) до 2.1.123. В 2.1.124 попытка установить таймаут
для маскарадинга вызывает зависание ядра (изменить return на ret = в строке
1328 net/ipv4/ip_fw.c). В 2.1.125 все прекрасно работает.
Этим, как мне кажется, занимаются другие. К сожалению, мой код относится только
к IP. On the good side, all the hooks are there to firewall IPX!
Вам только надо написать код; я счастлив буду помочь там, где возможно.
Вперед
Назад
Содержание