LINUX.ORG.RU

Помогите с маскарадингом


0

0

Имеем ядро 2.4.7, локальную сеть, выделенный ip. Пишем: iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j SNAT --to 1.2.3.4. Делает вид что работает, но на деле не работает!

anonymous

Чтобы транслировать все запросы из внутренней сети 192.168.0.0/24 ==> 1.2.3.4/24 - тебе надо использовать NETMAP, чего тебе я делать не советую. Глючит он, несмотря на заверения авторов. Решение твоей проблемы -j MASQUERADE.
SNAT и DNAT работают только с отдельными адресами.

Krause
()

Насколько я правильно понял NAT-howto, -j MASQUERADE работает только с динамическими ip, а для статических использутся SNAT!

anonymous
()

OK. Ты можешь транслировать одним правилом ОДИН внутренний адрес на ОДИН внешний при помощи DNAT/SNAT. Два правила - два адреса. 255 внутренних адресов на 255 внешних ты можешь транслировать одним правилом
iptables -t nat -A PREROUTING -d 1.2.3.0/24 -j NETMAP --to 5.6.7.0/24
прикрутив соответствующий патч к ядру и скомпилив iptables с нужным модулем. Транслировать сеть на один внешний адрес можно только при помощи MASQUERADE.

MASQUERADE работает с любым IP.

Krause
()

Приведенная в вопросе команда должна работать нормально, я постоянно использую похожие варианты. Одно замечание: в 2.4.7 была какая то проблема с Netfilter. У меня не устанавливались дополнительные патчи из iptables так что это ядро я пропустил.

ibk
()

Да, прогнал, каюсь:)) В свое время у меня были эти проблемы, но сейчас с Iptabes 1-2-2 и ядрышком 2-4-7 заработало.

Krause
()
20 октября 2001 г.

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o сt0 -j SNAT --to 1.2.3.4 - все работает - проверено на практике

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.