LINUX.ORG.RU
ФорумAdmin

приколы с НАТом


0

0

Хай, всеведущий All!

У меня такая проблемка. Локалка разбита на две подсетки, 192.168.20.0 и 192.168.10.0, соединяет их роутер на линухе. На этом же роутере есть еще карточка, которая смотрит в Инет. Поднят NAT через ipchains - прописаны соотвественно две строчки:

ipchains -A forward -j MASQ -s 192.168.20.0/24 -d 0/0 ipchains -A forward -j MASQ -s 192.168.10.0/24 -d 0/0

Все хорошо. Но надо чтобы несколько машин внутри локалки были видны из Инета, т.е. надо назначить им реальные адреса. На роутере прописываю такую вещь:

ip rule add from 192.168.10.x nat a.b.c.d ip route add nat a.b.c.d via 192.168.10.0

Все замечательно, эта машинка видна из Инета. Только вот проблемка: из 192.168.20.0 сетки ее пинговать по ее *внутреннему* адресу (т.е. как 192.1668.10.х) можно, а с этой машины пинг на какую-нить машинку в сети 192.168.10.0 не проходит. В чем может быть дело? Firewall поставлен, но даже если его снимаешь и остается только минимальная конфигурация, описанная выше, проблема все равно остается. Проблема исчезает, если снимаешь приписку реального адреса, т.е. убираешь ip rule и ip route

Буду очень благодарен за помощь! :)

anonymous

т.е. с 192.168.10.x не идет пинг в сеть 192.168._10_.0, а в 192.168._20_.0 идет?!?!?!?
странное дело - не кажется? :)
если все-таки перепутал, то попробуй в ip rule, ip route (впрочем как и в ipchains) указать, что все эти операции относятся к внешнему интерфейсу.

Maks
()

Да, блин, перепутал :) естессно, я имел в виду, что не идет пинг с 192.168.10.х в сетку 192.168.20.0. Но мне не очень понятно, что значит - указать, что все эти операции относятся к внешнему интерфейсу?

anonymous
()

Пусть eth0 - внешний интерфейс.
Для ipchains добавь -i eth0
ip - dev eth0

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