Собираем iptables на Ubuntu
Причина
Делая балансировку каналов обнаружил, что вот такая вот строка не работает:
# iptables -t mangle -A NEW_OUT_CONN -m statistic --mode random --probability 0.50 -j RETURN /lib/xtables/libxt_statistic.so: /lib/xtables/libxt_statistic.so: undefined symbol: lround iptables v1.4.12: Couldn't load match `statistic':Success
при этом сам модуль /lib/xtables/libxt_statistic.so существует, при попытке подгрузить получаем:
modprobe kernel/net/netfilter/xt_statistic.ko FATAL: Module /lib/xtables/libxt_statistic.so not found.
По данной ошибке /lib/xtables/libxt_statistic.so: undefined symbol: lround
находим патчик http://www.calculate-linux.ru/packages/net-firewall/iptables/files/iptables-1.4.12.1-lm.patch
Ну и пока что нет решения, кроме как пересобрать iptables самостоятельно.
Собираем iptables
# sudo su # cd /usr/src # apt-get build-dep iptables # apt-get source iptables # apt-get install quilt # wget https://launchpadlibrarian.net/104349144/xtables-lm-noasneeded.patch # cd iptables-1.4.12 # quilt import ../xtables-lm-noasneeded.patch # quilt push -a # dpkg-buildpackage -b # cd .. # dpkg -i iptables_1.4.12-1ubuntu4_i386.deb