[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Real IP behind NAT



> > А ничего если адреса не подряд а надерганы из одного класса C ("C", да?
где
> > маска 24 бита)?
> > Дело в том что это не провайдер, а лаборатория в институсткой сети.
> > Стандартно у все компы в одной и той-же сетке, что не есть хороше, так
что
> > сегметируем потихоньку. Проблема с некоторыми "продвинытыми" которые на
дыбы
> > встали и хотят оставить за собой реальный IP (это же сокровище
такое...),
> > вот и изворачиваюсь.
>
> Если внутренная сеть сегментирована, и внешние адреса разбросаны по
> сегментам в достаточно призвольном порядке, так, что их не удаётся
> объединить в подсети, то возникают сложности. В linux можно явно указть
> от какого адреса в заданном напрвлении слать пакеты (router_ip и ext_ip
> могут быть в разных подсетях: ip route add default via router_ip src
> ext_ip), но в windows такое врядли возможно. Так что если операционка на
> хостах, к которым требуется доступ извне, недостаточно продвинута, то
> проще реализовать вариант с NAT'ом
Клиенты в основном под юниксами (разными), но предпочтение в пользу
максимальной настройки сети на клиентах.

> >>Второй вариант - прозрачный NAT внутрь/наружу:
> >>iptables -A PREROUTING -t nat -d ext_ip -j DNAT --to-destination int_ip
> >>iptables -A POSTROUTING -t nat -s int_ip -j SNAT --to-source ext_ip
> >
> > Т.е. все реальные IP принадлежат рутеру, сидят на наружном интерфейсе,
но
> > сам он пользуется только одним, а остальные передает внутырь, так?
>
> Никуда адреса "сажать" не нужно, ни на роутере, ни на хосте в локальной
> сети - достаточно прописать iptables-правила для каждой пары адресов как
> я продемонстрировал выше. В результате при входе на внешний интерфейс
> роутера адрес назначения ext_ip будет переписан в int_ip (отработает
> DNAT) и, если это позволяют правила в FORWARD, пакет будет отправлен в
> локалку в соответсвии с маршрутизацией к int_ip. Таким образом,
> локальный хост будет доступен для Сети. Второе правило (с SNAT) даст
> аналогичный эффект когда оригинатором соединения будет локальный хост -
> адрес int_ip при выходе наружу перепишется в ext_ip - в результате Сеть
> будет доступна для локального хоста.
Понятно, спасибо!
Так и сделаю.
Под "сажать" я имел ввиду, что на наружном интерфейсе роутера будет его
(роутера) IP, а так-же по алиасу на каждый IP который надо будет передавать
на внутренний хост (должен же роутер их как-то отличать друг от друга, и
принимать пакеты для них?)

> > Я так думаю, маверное можно скомбинировать. Чтоб каждый адрес
существовал 2
> > раза, один на наружноном интерфейся (рутера) а другой на внутреннем
(рутера
> > или киента), Между каждой парой мостик NAT'ом, и вручную прописать
таблицы
> > маршрутизации. Дело?
>
> Я не совсем понял что вы написали. Наверное, потому что вы не совсем
> поняли что написал я.
Ннда...
Нарисовать бы, но пожалуй не имеет смысла, предидущий вариант проще, удобнее
и, наверное, стандартнее.

Сапасибо большое!



Reply to: