Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

NAT и активный ftp.

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Сети
Предыдущая тема :: Следующая тема  
Автор Сообщение
TechNoir



Зарегистрирован: 22.08.2003
Сообщения: 1632
Откуда: Moscou

СообщениеДобавлено: Сб Апр 10 2004 15:27    Заголовок сообщения: NAT и активный ftp. Ответить с цитатой

Существует утверждение, что клиент с приватным IP, ходящий в инет через NAT не может заходить на ftp в активном режиме.

Внимание вопрос: Верно ли утверждение?

_________________
Vive la Russie!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Met
Гость





СообщениеДобавлено: Сб Апр 10 2004 18:03    Заголовок сообщения: Ответить с цитатой

В принципе да .... поскольку при не пассивном режиме работы ftp , взаимодействие происходит если не изменяет память:
1. клиент обращается на 21-й порт сервера с определенного порта по tcp
2. сервер со своего 20-го производит коннект на вышеуказанный клиентский порт и передает list доступных файлов по протоколу подобному telnet
3. дальше между 20-м портом сервера и идет сама прокачка файла ...

Может чего то и попутал с портами , но суть в том ,что при NAT - клиентский хост отшлет серверу ftp не свой реальный ip и порт по которому обращался , а ip NAT сервера и подложный порт который будет отмечен в таблице трансляции ... ничего не подозревающий сервер естественно начнет конектится на тот ip:port который нашел в заголовках и попытается установить сессию по этим параметрам . Естественно ничего не подозревающий NAT тупо отбрасывает пришедший пакет , так как не видит в своих таблицах совпадающих адресатов для порта 20 ftp сервера. В общем вся проблема , что вторая сессия иницилизируется снаружи и за NAT попасть не может .
Для того чтобы все работало - включаем в настройках клиента пассивный режим, при котором на шаге 1 клиент объявляет серверу , что не надо 2-м шагом конектится к нему с 20-го порта , а типа подожди и я сам устанавлю сессию с другого выбранного порта на твой порт 20 и мы начнем работать .
Вернуться к началу
TechNoir



Зарегистрирован: 22.08.2003
Сообщения: 1632
Откуда: Moscou

СообщениеДобавлено: Сб Апр 10 2004 18:29    Заголовок сообщения: Ответить с цитатой

Все дело в том что у меня через NAT все прокатывает.
Через пассивный (само собой) и что удивительно через обычный ("активный"). Наблюдаю это, во-первых с самого ftp-клиента, а также tcpdump показывает в сети перед NAT и в сети после что NAT действительно NATит при запросе с ftp сервера с исходящего порта номер 20 (ftp-data). Но как, запись в таблице соответствий ведь не могла появиться.

Однако, порылся в инете. Написано:
------------------------------------

"Команды PORT и ответ на PASV посылают IP адрес и номер порта в теле сообщения в десятичном представлении. При прохождении через NAT возникает необходимость, корректировать эту информацию в теле FTP-сообщения. Поскольку каждая цифра в представленном в десятичном ASCII виде IP адресе это лишний байт нашего пактеа, при изменении адреса в сторону увеличения или уменьшения количества цифр в октетах, размер всего пакета соответствующим образом изменится. Таким образом перед NATом стоит дополнительная задача - внести изменения в TCP sequence number, пересчитать контрольные суммы и размеры пакетов как IP так и TCP. Так что если у вас "нерадивый" NAT, не утруждающий себя хотя бы одним из вышеперечисленных занятий - с ftp могут случится проблемы. Все вышесказанное, кстати, справедливо и применительно к другим протоколам, в которых изменения IP адреса влечет за собой изменение размера пакета."
-----------------------------------
_________________
Vive la Russie!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Гость






СообщениеДобавлено: Сб Апр 10 2004 22:56    Заголовок сообщения: Ответить с цитатой

Хм ... очень интересно ! Спасибо за интересную тему !
Кстати а на чем реализована трансляция в твоем случае ? - небось ipchains или iptables Smile Потому что со WinRoute, WinGate точно не пашет ... а с аппаратными основами , например Cisco IOS я не пробовал ... как то по автомату всегда включаю пассив за натом.
Вернуться к началу
TechNoir



Зарегистрирован: 22.08.2003
Сообщения: 1632
Откуда: Moscou

СообщениеДобавлено: Вс Апр 11 2004 11:40    Заголовок сообщения: Ответить с цитатой

Я не особенно знаком с WinRoute и WinGate. - вообще с NAT'ом под Windows.
Ты хочешь сказать, что например используя ftp-клиент Windows Commander ты вынужден ходить на ftp-сервера только в пассивном режиме. В обычном ТОЧНО не получается?

У меня Unix FreeBSD. Делаю с помощью ipfw. На удивление работает.
Кто расскажет работает ли активный ftp - через линуксовый NAT?

_________________
Vive la Russie!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
TechNoir



Зарегистрирован: 22.08.2003
Сообщения: 1632
Откуда: Moscou

СообщениеДобавлено: Вт Апр 13 2004 21:34    Заголовок сообщения: Ответить с цитатой

Да... это... И3008 ты бы тоже сказал чего-нибудь
_________________
Vive la Russie!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
DmitriyS



Зарегистрирован: 19.06.2002
Сообщения: 381
Откуда: Е-бург

СообщениеДобавлено: Ср Апр 14 2004 07:34    Заголовок сообщения: Ответить с цитатой

Из-за ната работает активный FTP, если используется ядровый модуль модуль ip_nat_ftp.o (или если он вкомпилен в ядро). Это в линухе, в других юнихах есть подобное. Так же для ната реализованы и другин протоколы аля irc, quake1 и т.д.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Сети Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...