|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Igor Suvorov 2:5020/400 05 Feb 2003 22:44:50 To : Aleksey Barabanov Subject : Re: tell how to up NAT into linux? -------------------------------------------------------------------------------- Aleksey Barabanov <alekseybb@mtu-net.ru> writes: > > Вот с этого. С того, что маршрут на loopback прописан для других пакетов. > > Опять же, в таком случае почему я не вижу обратного правила, чтобы > > исходящие пакеты так же проходили через loopback? > Я думаю у нас с вами есть одно белое пятно в обсуждении. Для решения этой > проблемы, я вам предлагаю посмотреть на диаграмму прохождения пакетов через > netfilter. Я согласен, что это неочевидно, и многое приходится > компилировать из разных источников, но оно того стоит. Теперь я буду > писать, исходя из того, что вы эту картинку держите перед глазами. > > И так. Lo это все локальные процессы. Пакеты на lo попадают через INPUT и > выходят через OUTPUT. И на входе INPUT и на выходе OUTPUT стоит routing > discussion. Теперь снова возвращаемся к nat. Правило в POSTROUTING > произведет замену адреса источника - SNAT. Стоп.. Причем тут SNAT? Вот именно из этого и идет все недопонимание. И с iproute все проблемы вытекают ровно из этого. SNAT - это трансляция адреса отправителя, а не получателя. Работа этого механизма не обсуждалась вообще. Проблемы в DNAT. И хаки через proxy arp ориентированы именно на него. Давай все же сначала определим, с каким именно механизмом идут разборки. > Пакет достигнет точки назначения и сервер ответит на запрос, использую > подмененный адрес. По моему, я понял в чем дело. Идем ну хотя бы вот сюда: http://www.cisco.com/en/US/tech/tk648/tk361/tk438/tech_protocol_home.html и внимательно смотрим, что такое nat в оригинале. Или, более конкретно и в картинках, например: http://www.cisco.com/en/US/tech/tk648/tk361/technologies_tech_note09186a00800948 31.shtml Если картинки с cisco.com не нравятся, тогда rfc1631. Это технология для _транзитного_ трафика. Hе надо эмулировать ее работу на одном компьютере и делать выводы на основании увиденного. Или, по крайней мере, не надо смотреть на нее с точки зрения применения на одной машине. [ остальные ужасы skip ] > >> Увы. Проверить не проблема. И уже не однажды. Может я туп на iproute2, но > >> у меня такие правила ничего не маскарадят для локального хоста. > > > > А причем тут локальный хост? Это правила для трансляции _транзитных_ > > пакетов. > ???? А-а-а ! Hу тогда вопрос снят. Hу слава богу ... > Я вообще не вижу проблем в преобразовании вообще любого транзитного трафика. > Для этого трафика вообще не важно какие у вас адреса на интерфейсах. Пакеты > могут вам попадать хоть по MAC, хоть по VLAN хоть через P-t-P - адрес не > важен. С такими пакетами можно делать что угодно и совершенно безнаказанно. Hо чтобы с ними можно было что нибудь делать, их для этого необходимо принять. Собственно, с этого и начался разговор. > > В чем смысл трансляции пакетов для локального хоста? > ??? Это уже другой вопрос. Это вопрос применения технологии не по назначению. > Hо вот я цитирую ваше же письмо: > IS> AB> И если можно также и в отношении iptables. > IS> > IS> Вроде, особенных гадостей пока не встречал. Разве что помнить о том, > IS> что для всех транслируемых внешних адресов снаружи должны быть созданы > IS> соответсвующие интерфейсы. Иначе линукс пакеты для них за адресованные > IS> себе считать не будет и на arp запросы не ответит. > IS> > То есть, я таки проиллюстрировал, что и с iptables не надо создавать никаких > алиасов для транслируемых внешних адресов. Можно не создавать. Это несколько иное. > Тут в контексте подразумевается, что это SNAT локальный адресов во внешние. Да нет, это dnat для пакетов, идущих на машину, стоящий в локальной сети _за_ реализующей трансляцию машину. И имеющую внутренний адрес. snat локальных адресов во внешние вообще не имеет смысла - при обращении во внешнюю сеть маршрутизатор и так будет использовать свои внешние адреса, а не внутренние. > И разговор шел не о транзитном трафике. С чего бы? > Если теперь контекст ясен, то мне так и не ясно, какое такое откровение в > использовании iproute в противовем iptables мною пропущенов при > штудировании LARG. Боюсь, если я попытаюсь опять ответить на этот вопрос, опять возникнет путаница между маскарадингом в 2.2 ядрах и нормальным nat'ом. > Hо в принципе вопрос исчерпан. Хорошо, если так. -- Igor --- ifmail v.2.15dev5 * Origin: no gnus is a bad news (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/3677ed924994.html, оценка из 5, голосов 10
|