Страница 1 из 1

Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Ср июн 28, 2017 3:04 pm
ЕвгенийГуков
Здравствуйте.

Проблема проявляется при передачи файлов и работе с общими и личными папками на FTP-сервере MyChat. Проблему удалось локализовать.
У нас есть несколько удаленных клиентов, которые подключаются посредством программных VPN-клиентов к сети предприятия. Т.е. эти компьютеры имеют два сетевых интерфейса: реальный и VPN. Соответственно у них два IP адреса. MyChat на таких компьютерах подключается нормально, и переписка идет без проблем. Везде (на сервере MyChat и в клиентах MyChat) адрес этих компьютеров отображается правильно - адрес VPN-клиента. Но как только такому клиенту пытаются передать файл, то соединение не происходит, т.к. FTP пытается соединится по реальному IP сетевой карты, а он естественно недоступен. Тоже самое происходит и при подключении таких клиентов к общим папкам на FTP-сервере MyChat. Передача файлов в обратном направлении идет.

Мой компьютер
LAN IP: 192.168.0.50
(4.24 КБ) Скачиваний: 42


Проблемный компьютер
LAN IP: 192.168.1.53
VPN IP: 192.168.12.10
(2.94 КБ) Скачиваний: 42

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Ср июн 28, 2017 4:15 pm
Алексей Пикуров
Добрый день, Евгений.

Я не понял, как устроена ваша сеть, можете пояснить подробнее, с примерами адресов?
MyChat на таких компьютерах подключается нормально, и переписка идет без проблем.

На какой IP соединяется MyChat клиент? Какие IP у вашего сервера MyChat?

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Ср июн 28, 2017 4:48 pm
ЕвгенийГуков
Главный офис сеть: 192.168.0.0/24
IP сервера MyChat: 192.168.0.8

Филиалы находятся в различных подсетях: 192.168.5.0/24, 192.168.6.0/24 и т.д.

Несколько магазинов подключены к центральному офису посредством программных VPN-клиентов. Это значит, что только конкретный компьютер имеет доступ в сеть главного офиса, и именно его мы "видим", а не всю подсеть магазина. Пример: локальная сеть магазина 192.168.1.0/24. Адрес сетевого интерфейса компьютера 192.168.1.53. В момент установления VPN-канала на компьютере появляется дополнительный виртуальный интерфейс с адресом 192.168.12.10. Вся связь идет через виртуальный интерфейс. Все работает: 1С, myChat-клиент (в режиме сообщений)... Только передача файлов не идет в направлении такого компьютера, т.к. FTP соединение пытается установиться с интерфейсом 192.168.1.53, вместо правильного 192.168.12.10

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Пт июл 07, 2017 3:22 pm
ЕвгенийГуков
Здравствуйте.

Что-то ни ответа ни привета. Проблема решается?

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Пт июл 07, 2017 5:00 pm
Алексей Пикуров
Добрый день, Евгений. Первый день из отпуска, обязательно посмотрю и отвечу.

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Пт июл 14, 2017 1:09 pm
Алексей Пикуров
Евгений, покажите пожалуйста список IP адресов клиента с помощью нашей утилиты GetLocalIP. Или ipconfig/all, что вам удобнее.

Также дайте лог клиента сразу после запуска (mcserv.log).

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Вт июл 18, 2017 3:38 pm
ЕвгенийГуков
Здравствуйте.

Утилита GetLocalIP дает результат:
192.168.1.53
192.168.12.10

Протокол mcserv.log:
[18.07.2017 09:45:45] [INFO] Application started. Version 6.1.0 / 09.06.2017, database version: 89
[18.07.2017 09:45:45] [INFO] OS version: Windows 7
[18.07.2017 09:45:46] [INFO] Local IP/MAC: 192.168.1.53; 00-00-00-00-00-00-00-00,00-00-00-00-00-00-00-E0,02-50-F2-5F-32-00,02-50-F2-A3-62-00,1C-6F-65-CC-4F-DC,20-41-53-59-4E-FF,60-E3-27-7E-87-A7,CC-4B-20-52-41-53
[18.07.2017 09:45:46] [INFO] Command line: "C:\Program Files\MyChat Client\mcclient.exe"
[18.07.2017 09:45:47] [INFO] Встроенный FTP запущен, заняты порты 10000 и 10001
[18.07.2017 09:45:47] [INFO] Загружен плагин "AntiCAPS", версия 1.4 от 29.07.2013, API 5.0
[18.07.2017 09:45:47] [INFO] Загружен плагин "Beeper", версия 1.6 от 29.07.2013, API 5.0
[18.07.2017 09:45:47] [INFO] Загружен плагин "VNCServer", версия 1.7 от 14.06.2017, API 5.0
[18.07.2017 09:45:47] [INFO] Поиск сервера MyChat...
[18.07.2017 09:45:47] [INFO] Подключение к серверу (IP mychat.nelva.local, порт 2004)...
[18.07.2017 09:45:51] [INFO] Cryptographic library version: OpenSSL 1.0.2a 19 Mar 2015
[18.07.2017 09:45:51] [INFO] SSL/TLS version: TLSv1.2
Welcome to -=MyChat=- Server
Copyright (c) 2004-2014 by Alexey Pikurov / Network Software Solutions
WWW: https://nsoft-s.com
E-Mail: [email protected]
Support https://nsoft-s.com/forum
Blog: http://blog.nsoft-s.com
[18.07.2017 09:45:51/09:45:52] [INFO] Авторизация...
[18.07.2017 09:45:51/09:45:52] [OK] Авторизация прошла успешно, UIN 120

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Пт сен 08, 2017 10:58 am
ЕвгенийГуков
Здравствуйте.

Прошло 2,5 месяца, а воз и ныне там [smilie=cray.gif]
Перевел компанию на версию клиента MyChat 6.3.0 в надежде, что проблему пофиксили. Но увы - попытка исправить проблему передачи фалов была, но неудачная. А теперь по-порядку.

Еще раз напоминаю вам ситуацию. У нас есть удаленные подразделения, которые работают через программный VPN клиент. У этих компьютеров два IP адреса:
1. Адрес реальной сетевой карты.
2. Адрес виртуального адаптера VPN-канала.

Теперь передать файл такие клиенты уже могут, спасибо. Соединение происходит между правильными IP. А передать файл им по прежнему невозможно. Почему FTP-клиент пытается соединится на оба доступных IP? Это не правильно!

Удаленный компьютер:
LAN IP: 192.168.9.10
VPN IP: 192.168.4.10

Мой компьютер:
LAN IP: 192.168.0.50

При попытке передать файл с 192.168.0.50 на 192.168.4.10 соединение пытается установиться на оба IP.
[08.09.2017 09:53:40] Trying connect to IP 192.168.4.10, port 10000
[08.09.2017 09:53:40] Trying connect to IP 192.168.9.10, port 10000
[08.09.2017 09:53:40] Connect to IP 192.168.4.10, port 10000 OK
[08.09.2017 09:53:40] Connect to IP 192.168.9.10, port 10000 OK

Но почему вы считаете, что адрес 192.168.9.10 не будет отвечать? И клиент выберет тот адрес, который ответит. Этот адрес тоже существует, и принадлежит другой подсети, где также запущен клиент MyChat!!!

P.S. Самое интересное, что передача файла методом Drag&Drop происходит. Используется другой механизм передачи?


Screen.png
Screen.png (37.37 КБ) Просмотров: 1071

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Пн сен 11, 2017 1:30 pm
Андрей Раков
Добрый день.

1) Удачная передача файлов — в данном случае файлы были залиты на сервер (http/https) и опубликованы в чат как ссылка для скачивания файла.

2) Неудачная передача — возникла при попытке отправить файл напрямую между двумя пользователями, но ничего не получится, так как они находятся в разных подсетях. Встроенный в клиент FTP не подходит для такой передачи, так как на шлюзе или компьютере, где объединяются подсети нет проброски портов для передачи файлов. Дополнительно для такой передачи еще нужно в клиенте указывать ip шлюза или компьютера, где объединяются подсети, так как ftp работает в пассивном режиме.

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Пн сен 11, 2017 4:41 pm
ЕвгенийГуков
Здравствуйте.

Интересно. Значит при передаче файла напрямую между двумя компьютерами в одном направлении проблем с маршрутизацией не возникает, а в другом направлении уже мешает пассивный протокол FTP!

Проброс портов нужен только когда используется технология NAT. У нас маршрутизация полноценная, как в оборудовании интернет-провайдеров. Там даже понятие "проброс" отсутствует. У вас же не возникает проблем с пассивным протоколом FTP, при подключении к хостеру?!

Заметьте передача файла идет в направлении от компьютера с двумя интерфейсами к компьютеру с одним интерфейсом. А в обратном направлении - нет! При установке FTP соединения между компьютерами вам надо "сообщить" (или клиент должен сам "взять") адрес удаленного компьютера от сервера MyChat. Сервер сообщает правильный адрес:

Сервер.png
Сервер.png (29.89 КБ) Просмотров: 1047


Prop.png
Prop.png (41.69 КБ) Просмотров: 1047


А если пытаться установить соединение на адрес локального интерфейса (даже "на всякий случай"), то ничего из этого путного не получиться. Так как этот адрес существует в другой подсети. На этом адресе работает другой клиент MyChat, и он не ожидает соединения!

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Пн сен 11, 2017 5:08 pm
Алексей Пикуров
Евгений, 192.168.4.10 — это локальный адрес сетевого интерфейса пользователя? Судя по вашим сообщениям — нет. Соответственно, FTP сервер MyChat Client его использовать не может.

Позвоните мне чатом или скайпом, я вижу недопонимание принципов работы FTP. Могу пояснить голосом. Мы не можем сделать магию и заставить работать FTP между двумя разными подсетями в автоматическом режиме. FTP протокол для этого не предназначен.

Ваш пример с FTP сервером хостера, работающим в пассивном режиме — некорректен. Он всегда знает свой внешний IP и уже статично настроен, как нужно. В MyChat соединение всегда динамическое. Сервер не знает своего внешнего IP шлюза, никто маршрутизацию на шлюзах настраивать не будет, потому что она меняется и слишком сложна. Почитайте про принципы работы FTP в пассивном режиме, думаю, вопросы отпадут.
У нас маршрутизация полноценная, как в оборудовании интернет-провайдеров.

Непонятно. Что такое полноценная маршрутизация?

Вставляйте файлы через сервер, для этого уже есть инструмент. Работает по http/https, быстро и надёжно.

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Пн сен 11, 2017 7:16 pm
ЕвгенийГуков
Евгений, 192.168.4.10 — это локальный адрес сетевого интерфейса пользователя?

Да. Это один из адресов локальных интерфейсов компьютера. Для любого ПО - это 2-я сетевая плата на компьютере!

Я не беспокоил людей на реальном компьютере, но у меня стоит тоже самое VPN-образующее ПО. Вот скриншот.
cmd.png
cmd.png (49.75 КБ) Просмотров: 1042

, где
1. Реальный адаптер
Ethernet adapter Подключение по локальной сети:
IPv4-адрес. . . . . . . . . . . . : 192.168.0.50

2. Виртуальный адаптер
Ethernet adapter Подключение по локальной сети 2:
IPv4-адрес. . . . . . . . . . . . : 192.168.11.1

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Вт сен 12, 2017 7:57 am
Алексей Пикуров
Жду звонка.

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Вт сен 12, 2017 1:38 pm
Алексей Пикуров
После нашего с вами разговора появилась идея. Можно расширить протокол FTP специальной командой для проверки соединения. Это custom-команда, нестандартная, но нам в данной ситуации и не требуется поддержка сторонних FTP клиентов.

Отпишу в этой теме, чуть позже, что из этого получилось.

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Вт сен 12, 2017 4:26 pm
Алексей Пикуров
Сделали доработку, попробуйте заменить mclient.exe на двух компьютерах, где у вас возникает проблема (версия 6.3).

Отпишите, что получилось.

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Чт сен 14, 2017 7:32 pm
ЕвгенийГуков
Здравствуйте.

Извините, что не сразу ответил. После телефонной беседы перестал отслеживать переписку.
Ваше решение помогло. Все стало работать. Спасибо.

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Чт сен 14, 2017 7:33 pm
Алексей Пикуров
Отличная новость! Ожидайте релиза.

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Вт сен 19, 2017 1:17 pm
ЕвгенийГуков
Здравствуйте.

Извиняюсь еще раз, но я провел не "чистый" эксперимент. Я установил новую версию клиента только к себе на адрес 192.168.0.50, а на компьютере с двумя интерфейсами осталась старая версия. Передача файлов стала работать с адреса 192.168.0.50 на 192.168.4.10

Сегодня до меня дошло, и я установил на оба компьютера новую версию myChat 6.3.0.24. Проверил. Как и раньше файлы нормально передаются в направлении 192.168.4.10 -> 192.168.0.50, а в обратном направлении нет. Но поведение клиента изменилось. Ранее появлялось сообщение пропущено файлов: 1. А сейчас просто сообщение "Отправлен запрос на передачу файлов", а затем "*** Пользователь прервал передачу файлов" по тайм-ауту.

Re: Проблема FTP-протокола в myChat-клиент v 6.1.0

СообщениеДобавлено: Вт сен 19, 2017 9:10 pm
Алексей Пикуров
Здравствуйте :)

Позвоните мне чатом, покажете.