msh_1 Posted December 16, 2009 Posted December 16, 2009 Добрый день ! проходят ли транзитные пакеты идущие между портами bridge'а в linux через таблицу nat iptables? а то в интернете как-то противоричиво пишут. попробывал экпериментально - походу пакеты не проходят. может какая настройка есть для решения этой проблемы. (конкретно интересует реализация прозрачного NETMAP на bridge). Вставить ник Quote
Jugernault Posted December 16, 2009 Posted December 16, 2009 http://ebtables.sourceforge.net/br_fw_ia/PacketFlow.png Вставить ник Quote
msh_1 Posted December 17, 2009 Author Posted December 17, 2009 (edited) http://ebtables.sourceforge.net/br_fw_ia/PacketFlow.pngспасибо.нашел у себя ошибку (не ту циферку написал в IP-адресе). теперь другая проблема: собрал тестовый стенд с конфигурацией хост1-bridge-хост2 настройки bridge echo 0 >/proc/sys/net/ipv4/conf/all/rp_filter echo 0 >/proc/sys/net/ipv4/conf/default/rp_filter echo 1 >/proc/sys/net/ipv4/ip_forward /sbin/modprobe ipt_NETMAP /sbin/modprobe e1000 /sbin/ifconfig eth2 0.0.0.0 promisc up /sbin/ifconfig eth3 0.0.0.0 promisc up /usr/sbin/brctl addbr br0 /usr/sbin/brctl stp br0 off /usr/sbin/brctl addif br0 eth2 /usr/sbin/brctl addif br0 eth3 /usr/bin/iptables -t nat -A POSTROUTING -m physdev --physdev-in eth2 -s 10.7.0.0/16 -j NETMAP --to 10.204.0.0/16 /usr/bin/iptables -t nat -A PREROUTING -m physdev --physdev-in eth3 -d 10.204.0.0/16 -j NETMAP --to 10.7.0.0/16 /sbin/ifconfig br0 up к сетевухе eth2 подключен хост1 c IP 10.7.5.10/8 к сетевухе eth3 хост2 с адресом IP 10.205.5.250/8 на хост1 и хост2 для друг друга сделаны статические записи ARP пингуем с хост1 хост2 : $ ping 10.205.5.250 не пингуется :( на хост2 снифером видно что приходят icmp запросы с адреса 10.204.5.10 и уходят ответы на 10.204.5.10 на bridge видно что на eth3 есть и запросы и ответы, а на eth2 только запросы(!). а отсутмтвующие ответы появляются на интерфейсе br0 (dst ip=10.7.5.10 dst_mac=mac_br0(!!!), а не MAC хост1, как должно быть) как заставить bridge не менять MAC-адрес получателя? Edited December 17, 2009 by msh_1 Вставить ник Quote
Ilya Evseev Posted December 18, 2009 Posted December 18, 2009 Настоятельно рекомендую для отладки использовать "iptables -A FORWARD -p icmp ... -j log --log-prefix 'Trap1: '". iptables -nvL | grep -i trap будет сразу показывать количество прошедших через правило пакетов, а в /var/log/security будет записываться детальная информация о них. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.