Форум » АРМ "Клиент" АС Клиент-Сбербанк » Попытка проверсти сеанс начало отправки файла бесконечно долго идет и не доходит до завершения » Ответить

Попытка проверсти сеанс начало отправки файла бесконечно долго идет и не доходит до завершения

gektor66: IP клиент - соединение есть, сбербанк начало сеанса связи идет, начала отправки файла бесконечно долго идет, причем когда отменишь сеанс связи уже ничего не пашет, даже обычным способом из сб-не выходит, кнопки просто не реагируют...

Ответов - 30, стр: 1 2 All

ZhooChee: travokyr777 пишет: Ни разу не ставил версию клиента 07.012.07 ради параметра Passive=1. Всегда есть конкретная причина, на конкретную проблему Именно так, и конкретная причина тут - слишком много прокси и/или NAT (собственный роутер/прокси клиента, провайдеров и субпровайдеров) между клиентом и ФПСУ банка, а новая версия нормально работает с пассивным режимом FTP. Много раз ставили, и помогало - и не вижу причин такого недоверия. В порядке ликбеза, проверяли в логах своего ftp-сервера. В обычном режиме от клиента на ftp-сервер идет ftp-команда PORT 192.168.1.5,193,236 где указывается ЛОКАЛЬНЫЙ ip-шник клиента - не удивительно, что ftp-сеанс может идти "в никуда", т.к. NAT-таблицы на всём маршруте могут слишком быстро обновляться/очищаться по злой воле провайдеров. А в пассивном режиме от клиента на ftp-сервер идет ftp-команда PASV, на которую сервер передает обратно свой ВНЕШНИЙ ip-шник, и в течении ftp-сеанса проблем с NAT-маршрутизацией не возникает. Версия 07.012.05 совершенно не реагировала на параметр Passive=1, и от клиента по-любому шла команда PORT . Что интересно, разрабы начали использовать ftp-команду FEAT (она опрашивает сервер на предмет поддерживаемых команд, в частности той же PASV) - но никак не использовали её результаты . Т.е. вроде бы имело смысл реализовать такой алгоритм: если на команду FEAT сервак четко отвечает что поддерживает PASV - то сразу приоритетно переходить в пассивный режим (вообще без учета параметра Passive), а вот если на FEAT сервак ничего не отвечает по поводу PASV - только тогда уже учитывать параметр Passive (т.к. даже если сервак и ничего не ответил по поводу PASV, не факт что он её не поддерживает).

tovami: ZhooChee Вы абсолютно правы. Если локальные причины отсутствуют, то поиск внешних необходимо начинать с установки 07.012.07.

Бетке Сергей Сергеев: Господа, нет ли возможности убедить разработчиков всегда использовать только пассивный режим ftp? ведь в этом случае ни у кого не возникнет никаких проблем, зато у тех, кто за NAT, проблем точно станет меньше. Буду благодарен, если передадите мою (я думаю - и не только мою) просьбу разработчикам. Подробности здесь.


Mike666: Бетке Сергей Сергеев пишет: Господа, нет ли возможности убедить разработчиков всегда использовать только пассивный режим ftp? ведь в этом случае ни у кого не возникнет никаких проблем, зато у тех, кто за NAT, проблем точно станет меньше. Буду благодарен, если передадите мою (я думаю - и не только мою) просьбу разработчикам. Подробности здесь. Сергей Сергеевич, с удовольствием передадим. Но Ваш пост написан несколько запоздало. В июле эта проблема поднималась Северо-Кавказским банком и (не мной, а по по моей просьбе) 29.07.11 была написана утилитка "по мотивам статьи Microsoft" PassiveAndMTU. Результатов особых она не дала по одной банальной причине - в статье было сказано, что "изменения вступают в действие непосредственно после применения". Спустя 2 месяца статью исправили - "после перезагрузки". К тому времени Северо-Кавказский банк довёл ситуацию до логического завершения - вышла версия 07.012.07. Сейчас мы стараемся взаимодействовать с разработчиками более плотно.

Бетке Сергей Сергеев: Однако, текущая версия клиента по-прежнему по умолчанию использует активный режим ftp. Буду Вам благодарен за содействие... Кстати - можно ссылку на статью?

TRaMeLL: По поводу выбора значения MTU: Вот программа которая поможет определить оптимальное значение, и не только это, очень рекомендую. "SG TCP Optimizer" http://www.speedguide.net/downloads.php

Mike666: Бетке Сергей Сергеев пишет: Кстати - можно ссылку на статью? Текущая статья. Раньше на ней фиксов не было.

ZhooChee: Бетке Сергей Сергеев пишет: только пассивный режим ftp? ведь в этом случае ни у кого не возникнет никаких проблем Полностью согласен, хотя некоторые обладатели прокси упорно жаловались ... Mike666 пишет: В июле эта проблема поднималась Северо-Кавказским банком угу, в июне - тока прошлого года, очевидно проблема наших провайдеров, мы сами и сделали, вот скрипт VBS: On Error Resume Next const HKEY_CURRENT_USER = &H80000001 Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv") If Err.Number <> 0 Then WScript.Echo Err.Number & ": " & Err.Description WScript.Quit End If strKey = "Software\SBRF\WCLNT" intRes = objReg.EnumKey(HKEY_CURRENT_USER, strKey, sNames) If intRes <> 0 Then WScript.Echo intRes & ": не удалась прочитать подразделы " & strKey WScript.Quit End If If IsArray(sNames) Then 'Обход подразделов АРМов For Each strSubKey In sNames if strSubKey <> "EXTDLL" Then strKey2 = strKey & "\" & strSubKey intRes2 = objReg.EnumKey(HKEY_CURRENT_USER, strKey2, sNames2) If intRes2 <> 0 Then WScript.Echo intRes & ": не удалась прочитать подразделы " & strKey2 WScript.Quit End If If IsArray(sNames2) Then 'Обход подразделов Операторов For Each strSubKey2 In sNames2 if strSubKey2 <> "CurrentWindows" Then strKey3 = strKey2 & "\" & strSubKey2 intRes3 = objReg.SetDWORDValue(HKEY_CURRENT_USER, strKey3, "Passive", 1) If intRes3 <> 0 Then WScript.Echo intRes & ": не удалась установить параметр " & strKey3 & "\Passive = 1" WScript.Quit Else WScript.Echo strKey3 End If End If Next End If End If Next End If

Mike666: Прекрасно!

Бетке Сергей Сергеев: Спасибо за скрипт, вполне рабочая идея. Я, пожалуй, на powershell его переложу. Пока для себя вижу иной выход из положения. Вешать сценарий на logon пользователя не хочется - их и так уже хватает. Периодически запускать по сети сценарий, аналогичный вышеприведённому - то же не идеальное решение. Пока склоняюсь к следующему решению: заменяю ярлык на запуск клиент-банка, в ярлыке запускаю powershell сценарий, в котором как раз и проделываю все необходимы операции в реестре текущего пользователя, после чего уже запускаю сам клиент-банк. Такой вариант мне кажется пока оптимальным.



полная версия страницы