Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» CITRIX Metaframe XP проблема запуска приложений

Автор: Orand
Дата сообщения: 26.05.2005 16:34
Если кто-то сталкивался с такой проблемой:
Установлен сервер терминалов W2003RU + CITRIX Metaframe XP FR3. После опубликования приложений в локальной сети все работает замечательно, а, вот, удаленный клиент может подключаться только к рабочему столу сервера, и никак не запускается опубликованное приложение. Он (клиент) его и не видит!
При подключении выдается сообщение:
"The application set could not be found on the network. It may be off line, your computer may not have the protocol it needs, or your computer may not be connected to the network.".
В чем проблема?!

Автор: fosfor
Дата сообщения: 26.05.2005 16:44
Проверь порты, которые наружу смотрят. Должны быть открыты:
TCP - 1494
UDP - 1604

Скорее всего UDP у тебя прикрыт, поэтому такой косяк.

Еще был момент с 8-м клиентом (8.0) - если приложения именовались кириллицей в Citrix Management Console, то этот клиент их просто не видел. В версии 8.1 этот баг поправили
Автор: Orand
Дата сообщения: 27.05.2005 08:57
UDP действительно прикрыт!
Сегодня проверю и результат отрапортую
Спасибо за подсказку!
Автор: Orand
Дата сообщения: 27.05.2005 16:30
Опубликованные приложения так и не появились
Создал новое ICA соединение, вход как на "Сервер" запросто, если изменить как на запуск "Приложений" сообщение уже сервера терминалов "У Вас нет прав для доступа в этом сеансе". Причем оно появляется даже, если пытаться заходить Админом.
Какие нужно права устанавливать?! Что ж получается, что у Админа не хватает прав на запуск приложений на сервере теминалов?
Автор: fosfor
Дата сообщения: 27.05.2005 19:58
Опиши подробно как ты выпускаешь этот сервер в интернет. Портмаппинг?
Уверен, что в локалке все работает как надо? (Citrix Program Neighborhood?)

И как соединение создаешь, на удаленном клиенте? Я так понял Application Set ты не используешь, а создаешь соединение непосредственно к приложению?
Автор: Orand
Дата сообщения: 30.05.2005 09:04

Цитата:
Опиши подробно как ты выпускаешь этот сервер в интернет. Портмаппинг?

Интенет-сервер: W2000 SP4 RU, 2 серевых интерфейса (один внутрь, второй в роутер-железку). На нем же Winroute между двумя этими интерфейсами. На этом же серваке организован домен (локальный) с использованием Active Dorectory.
На роутере открыты порты 1604 и 1494 (UDP и TCP соответственно). Winroute перенаправляет пакеты на сервер терминалов в локалке (все "лишнее" режет!).
Тестирование проводилось на компе (W98SE RU), который был отключен от локалки и подключался к серверу при помощи модема. С этого же клиента проверял работу приложений в локалке. Приложения видны и сервер терминалов его пускает без вопросов (вернее - логин/пароль спрашивает, конечно!). Для соединения и запуска прилодения использую Citrix Program Neighborhood. После коннекта сразу видны опубликованные приложения.

А вот из-вне не получается использовать Application Set, т.к. проверяю на модемном соединении, - скорость маленькая и есть вероятность обломиться с подключением по бональному "не дождался ответа сервера". Пришлось попытаться создать соединение к приложению (по анологии соединения к серверу.) Вот при этом соединении после открытия UDP-порта (с Вашей подсказки) и начало выдаваться сообщение о правах доступа. Достаточно изменить в настройках подключения соединение не к приложению а к серверу - все нормально, подключаюсь и запускаю все, получив интерфейс сервака.

Если нужно еще подробнее - могу написать на мыло.
Автор: fosfor
Дата сообщения: 30.05.2005 09:34

Цитата:
Winroute перенаправляет пакеты на сервер терминалов в локалке (все "лишнее" режет!)


Так раз используешь портмаппинг - на серваке Citrix дай такую команду (в CMD):

altaddr /set XXX.XXX.XXX.XXX

где XXX.XXX.XXX.XXX - адрес внешнего интерфейса компа с WinRoute (который в инет смотрит)
добавлено
если конечно у тебя это "белый" адрес, если "серый", то тут ты должен прописать внешний адрес роутера

Далее, когда на удаленном клиенте будешь подключаться, делай так:

Find New Application Set -> Wide Area Network -> Жмешь на кнопку Server Location и выбираешь протокол TCP/IP, добавляешь IP-шник своего сервера, потом жмешь кнопку Firewalls (!!!) и ставишь галку Use alternate adres for firewall connection -> Вот теперь в раскрывающемся списке ты увидишь свой Application Set и подцепишься к нему без проблем.


Цитата:
А вот из-вне не получается использовать Application Set, т.к. проверяю на модемном соединении, - скорость маленькая и есть вероятность обломиться с подключением по бональному "не дождался ответа сервера"


Фигня, будет намана открываться даже если мопеды с двух сторон, а у тебя на серванте роутер (тобишь ADSL или даже что-то получше)

Автор: Orand
Дата сообщения: 30.05.2005 15:19

Цитата:
altaddr /set XXX.XXX.XXX.XXX

Добавил IP-адрес, который виден из интернета (IP-адрес выделенный), если все правильно понял...
Получаю следующее сообщение при попытке выбрать сервер приложений:
ICA browser failed to return any named. Server addresses may be entered in the server lacation list for this application set, if no Citrix MetaFrame servers exist on you local subnet.
Автор: fosfor
Дата сообщения: 30.05.2005 15:37

Цитата:
ICA browser failed to return any named

Так а при чем тут ICA browser? Мы же пытаемся через интернет соединение сделать? А ISA browser имеет место быть, когда ты сидя у себя в локалке подключаешься к своему же Citrix-серверу (в твоей же подсети) - ICA клиент посылает бродкаст и сервер отвечает, т.е. нет необходимости вбивать Ip-адрес сервера вручную. Ну а в случае с соединением через интрернет, он (ISA browser) и не должен отрабатывать т.к. естественно, что никакие бродкасты до твоего сервера не дойдут.

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

Иногда бывает, что ты вроде как выбрал IP в клиенте,при создании коннекта, а он нифига не выбрался звучит бредово, но кто делал так тот поймет, просто там по умолчанию TCP + HTTP вместо просто TCP, что и приводит к ошибке ICA browser, проверь все хорошо еще раз (создавая коннект на клиенте) и увидишь в чем косяк



Автор: Orand
Дата сообщения: 31.05.2005 08:25
Пытался несколько раз... Безрезультаткно!
Перезагружал и все такое...
Потом решил проверить трассировку IP-адреса. Трассировка доходит до IP шлюза провайдера и - "большой привет" - "привыше интервал ожидания..."
Кстати мой выделенный IP не пингуется из-вне. Правда провайдер мог прикрыть ICMP-пакеты. Но об этом я тоже с ним пообщаюсь.
Больше пока в голову ничего не приходит, что еще можно сделать... :-\
Автор: fosfor
Дата сообщения: 31.05.2005 08:53
Хм, ну у тебя же был коннект, хоть и к рабочему столу, так что шлюз прова пропускает...

Попробуй банально сделай файл *.ICA в Citrix Management Console для какого-нибудь приложения (не для десктопа сервера), подредактируй в нем IP (на внешний) и запусти на удаленном клиенте, если все запустится нормально - значит ты косячишь в настройках клиента, если не запустится - ... бубен мля нуна доставать

Автор: Orand
Дата сообщения: 31.05.2005 09:30

Цитата:
Хм, ну у тебя же был коннект, хоть и к рабочему столу, так что шлюз прова пропускает...

По порту 1494! И то... это, когда я ему (пров-у) задал вопрос по поводу этого порта. Он ответил что-де "ничего не режем". Через 10 минут все заработало. Странно, не правда ли?!
Желаю у него спросить теперь по поводу порта 1604! А там уж я 10 минут как-нить подожду

Цитата:
Попробуй банально сделай файл *.ICA в Citrix Management Console для какого-нибудь приложения...

Сделал... Server Citrix not found... и бла-бла-бла...
Визуально на свиче я вижу, что пакет приходит (по светодиодам; проверял несколько раз, клиент и сервер на соседних столал стоят). Хотя может это все уже глюки и выдавание желаемого за действительное?!
Буду ждать пров-а в аське, чтоб задать вопросы. Если что-то проясниться - отпишусь.
В любом случае - СПАСИБО! По крайней мере, никто пока больше Вас ничего не посоветовал.
Да! Чуть не забыл... В бубны стучу постоянно. Еще пальцами щелкаю, там, периодически вхожу в транс и все такое...
Автор: fosfor
Дата сообщения: 31.05.2005 09:39

Цитата:
Визуально на свиче я вижу, что пакет приходит (по светодиодам; проверял несколько раз, клиент и сервер на соседних столал стоят)


сделай проще -> на клиенте в CMD дай команду

telnet <IP сервера> 1494

Если увидишь черный экран с надписью ICA в левом верхнем углу - значит коннект есть, т.е. пакеты через интернет и прововские шлюзы доходят от клиента до Citrix-сервера.

Не забывай, что в пакетном фильтре WinRoute должны быть разрешены исходящие:

Permit TCP, <local IP Citrix> 1494 -> Any host, Any port
Permit UDP, <local IP Citrix> 1604 -> Any host, any port
Автор: Orand
Дата сообщения: 31.05.2005 11:00

Цитата:
telnet <IP сервера> 1494

Дык, по 1494 ясное дело все работает, раз к десктопу допускает! Естественно, по телнету я связался. Как UDP проверить? Я так понимаю, что именно по нему работают приложения?

Цитата:
Не забывай, что в пакетном фильтре WinRoute должны быть разрешены исходящие

На исходящие пакеты вообще ограничения в Winroute не было. Я, конечно, прописал на всякий случай правила, но результат такой же.
Автор: fosfor
Дата сообщения: 31.05.2005 11:35

Цитата:
Как UDP проверить? Я так понимаю, что именно по нему работают приложения?


Нет, по нему осуществляется связь с фермой
посмотри вот тут
http://citrix.pp.ru/faqs/faq10.html

проверь свои настройки сервера, может у тебя там таки через XML все резолвится



Автор: Orand
Дата сообщения: 31.05.2005 12:49
Ok!
Буду пробовать!
Спасибо за ссылку!
До пров-а дозвонился (ожидаем 10 минут!)
Бум пробовать...
На всякий случай, вдруг что еще в голову придет, - черкани, пожалуйста.
Спасибо!
Автор: fosfor
Дата сообщения: 31.05.2005 14:12
Ничо мне не приходит, кроме того что набухался на работе за это время )

Вот несколько тезисов так, по синей лавочке, мобуть помогут тебе, вся тема вокруг удаленной работы c Citrix-сервером

- XML я не пользую, потому как путанно все и не понятно. Т.е. к примеру ставишь ты Citrix на 2000-ник с запущенным IIS, ставится WEB-интерфейс Цитрикса (прикольно кстати, весьма, классная весч веб-интерфейс), вроде все пучком в локалке, но как только ты делаешь телодвижения как в этой ветке - выпускаешь сервер наружу портмапиннгом - нифига не выходит, приложения не запускаются и фиг знает в чем трабл. Вроде и альтернативный ИП прописал. Нифига. А трабл в том, что ЕСТЬ СОВМЕЩЕНИЕ СЛУЖБЫ XML C IIS ПО 80-му ПОРТУ. Citrix видимо все заточил под свою приблуду секуре гетэуэй (ну блин не помню как по аглицки пишется) и обычным маппингом портов не канает. У меня не получилось.

- я просто переключаю службу XML на другой порт, она есть, но нафиг не упала

- включаю бродкаст респонс, чтоб в локалке не париться. Тут же врубается тот самый UDP 1604

- один товарищ по нику Kokoc заметил, что в локальном ДНС-сервере неплохо прописать хост "ICA" - IP цитрикс-серванта. Потом встретилось мне в Цитрикс кноуледж бэйз. Тады можно ваще все рубануть, бродккасты и XML.

- все приложения и Application Set нужно именовать латинницей!!! В жопу кирилку. Глюки вылазят всевозможные.

- Нужно ставить все хотфиксы цитрикса и патчи мелкософта, потому что терминальные серверы - есть очень дырявая весчь раз, и со времени выхода MetaFrame XP исправлено дофига багов два. Последний СП на метафрэйм - 4, сливается на фтп.цитрикс.ком
Автор: Orand
Дата сообщения: 31.05.2005 15:31

Цитата:
Ничо мне не приходит, кроме того что набухался на работе за это время

Организм, как и любой механизм, требует смазки (периодически). Мозг - одна из основных деталей... Ну, и т.д. Сам понимаешь...
Насчет XML - сам многого не доганяю. Но, судя по всему, именно как не нужно все устанавливал: W 2003 RU с IIS на 80 порту. Потом Terminal serv виндовый, затем, - Citrix MtaFrame XP FR3. Если IIS не устанавливать, то Citrix что-то там ругался, что-де "не найден web-серв. Хуже того, я по-началу пользовал Apache под винды, дык ОН (citrix) орал, что порт занят, не могу, не хочу и т.д. Пришлось порт при установке указать отличный от 80.

Цитата:
включаю бродкаст респонс, чтоб в локалке не париться

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

Цитата:
Нужно ставить все хотфиксы цитрикса и патчи мелкософта

Сечас качну, что смогу...
Thanks!
Сегодня не парься со мной. До конца рабочего дня осталось сегодня 30 мин. Появлюсь только завтра.
Автор: fosfor
Дата сообщения: 31.05.2005 15:41

Цитата:
Если не трудно, расшифруй, пожалуйста


Citrix Management Console - правой кнопкой на сервер - Properties - MetaFrame XP Settings - ставишь галки Create browser listener on UDP network (для UDP), Server responds to ICA Client broadcast messages (для бродкастов внутри локалки, см. выше)

Тут главное всю "архитектуру" цитрикса представить, и сразу поймешь в чем косяк (если конечно пров все "пропустил")

Удачи
Автор: Orand
Дата сообщения: 01.06.2005 09:57
Понимаю, что где-то накосячил, но мозги уже не хотят работать. Все чаще желание "завалить" сервак, установить все заново без IIS. Но, думаю, что "дохлому припарки" -причина не в этом... Кстати, если подключаться при помощи HTTP/HTTPS, то сообщение вываливается на клиенте такое же, как и при соединении по TCP/IP:"ICA browser failed to return any named..." и т.д. Такое ощущение, что по TCP вообще не перестраиваться для подключения.
Перед тем, как все снести попробую описать настройки сети и шлюзов (на сколько это возможно), если не возражаешь?! Поскольку настройку Winroute производил не я и, вообще, немного туго понимаю как происходит фильтрация пакетов в этой программе.
???
Автор: fosfor
Дата сообщения: 01.06.2005 10:36

Цитата:
Все чаще желание "завалить" сервак, установить все заново без IIS

Не надо этого делать. Через установку/удаление программ ты можешь модифицировать установку МетаФрэйм, удалив Веб-интерфейс. Потом удали IIS

Цитата:
попробую описать настройки сети и шлюзов (на сколько это возможно), если не возражаешь?!

опиши, не возражаю

Цитата:
Поскольку настройку Winroute производил не я и, вообще, немного туго понимаю как происходит фильтрация пакетов в этой программе

Посмори тут
http://www.kuban.ru/forum_new/forum10/modpage/FAQ/wr/index.shtml
практически все расписано "от и до"
Автор: Orand
Дата сообщения: 01.06.2005 11:09
1. Есть RealIP привязанный к железке-роутеру. Роутер имеет свой IP для маршрутизации в локалку. Все это висит на 1-м сетевом интерфейсе Интернет-сервера, к примеру х.х.1.1. Роутер прослушивает порты 80, 443, 1494 (TCP) и 1604 (UDP). Кстати, в ссылке на FAQ, написано, что для Citrix XP это не обязательно, если не указано явно работать по UDP.
2. Второй сетевой интерфейс смотрит в локалку и имеет адрес к примеру х.х.2.1.
3. На этом серваке развернут DNS-контроллер и AD. На нем же установлен Winroute 4.2.х.
4. В Winroute настройки такие:
Входящие пакеты на интерфейсе х.х.1.1:
UDP any host port=53 => any host port>1023 => Perm;
TCP any host any port => any host port>1023 => Perm;
ICMP any host any port => any host any port => Perm;
TCP any host any port => any host any port => Ignore;
IP any host => any host => Ignore;
Исходящие - No rules;
Входящие на интерфейсе х.х.2.1:
TCP any host any port => any host any port => Perm;
Исходящие - No rules;
Теперь настройка маппинга портов: все пакеты по TCP 80, 443, 1494 и UDP 1604 => внутренний IP Citrix-сервера (х.х.2.111)
5. При входе на сервер терминала логинюсь на машину, а не в домене.
Все!
Автор: fosfor
Дата сообщения: 01.06.2005 16:11

Цитата:
Роутер прослушивает порты 80, 443, 1494 (TCP) и 1604 (UDP)

Зачем он их прослушивает? Куда он их отправляет? Не понятно. Я так понял "белый" адрес есть только у роутера? Или 1-й интерфейс Интернет-сервера тоже имеет "белый" адрес?

Цитата:
Кстати, в ссылке на FAQ, написано, что для Citrix XP это не обязательно, если не указано явно работать по UDP

Я ж написал выше, без UDP у меня не получилось

Ваши настройки WinRoute в плане пакетного фильтра практически ничего не запрещают. Нафиг они тогда нужны?
Автор: Orand
Дата сообщения: 01.06.2005 16:51

Цитата:
Зачем он их прослушивает?

Не будет слушать - не пропустит пакет (видимо я неправильно построил фразу; нужно было "открыт порт").

Цитата:
Я так понял "белый" адрес есть только у роутера

Да. Только у роутера. Мне его вообще при установке предлагали воткнуть в свич и не париться с двумя сетевыми интерфейсами на серваке. Но вся проблема уперлась как раз в Winroute. Как только развели на два сетевых интерфейса - стало все OK. Я думаю, что просто настройки Winroute сделаны неверно и тогда и сейчас. Благодаря Вам сейчас пытаюсь изучить, чтобы завтра изменить и проверить (народ-то работает, ничего остановить нельзя!).

Цитата:
Ваши настройки WinRoute в плане пакетного фильтра практически ничего не запрещают. Нафиг они тогда нужны?

Трудно общаться с дилетантами? Ну, извините... я ж предупреждал, что не профи и все получил "в наследство". И не только это... Если утомил, Вы так и скажите, - я отстану.
Автор: fosfor
Дата сообщения: 02.06.2005 09:01

Цитата:
Не будет слушать - не пропустит пакет (видимо я неправильно построил фразу; нужно было "открыт порт").

А что, у роутера есть и "закрытые порты"? Сомневаюсь. Скорее всего ваш роутер просто перенаправляет все, что приходит на "белый" адрес на сетевой интерфейс 1 интернет-сервера. Так называемый мост. Что за модель роутера?

Напишите детально, что у вас стоит в WinRoute - Настройки - Дополнительно - Распределение портов

Грохните все правила фильтрации пакетов на всех интерфейсах в WinRoute и попробуйте без них (все равно они вам почти ничего не дают в плане файрвола)

А вообще идеи кончились, ибо imho в таком конфиге все должно работать на ура
Автор: Orand
Дата сообщения: 02.06.2005 09:42
1. Модель: D-Link 500T (Ethernet ADSL Router)
2. В распределении портов сейчас стоит:
a) Прослушивает: 1494
Ожидание сигнала: <не определен>
Протокол: TCP
IP-адресата: <IP Citrix-server>
Порт адресата: 1494
b) Прослушивает: 1604
Ожидание сигнала: <не определен>
Протокол: UDP
IP-адресата: <IP Citrix-server>
Порт адресата: 1604
Больше ничего.
3. Насчет "грохнуть" - это я обязательно попробую (чуть позже)
Да, кстати... После изменений в Winroute, его нужно перезапускать? Или все делается "на лету"?
4. Итак, много чего разъяснил! А то у меня идеи кончились к тому моменту, как я обратился на форум... так что в любом случае, - Спасибо!

Добавлено:
УРА!!!
Нашел!!!!
Ура-ура-ура!!!
Извиняйте...
Удалил строку в Winroute (всего одну cтроку, самую последнюю на входящие пакеты!)
"Deny => IP Aby host => Any host"
И ВСЕ!!! Все заработало по Вашей схеме! СПАСИБО!!! БОЛЬШОЕ. Человеческое!!!
Теперь попробую правильно настроить защиту в Winroute (опятьже почитаю Вашу статью!) Спасибо еще раз!
Автор: fosfor
Дата сообщения: 02.06.2005 10:36

Цитата:
"Deny => IP Aby host => Any host"


Ну блин ничего удивительного. Это правило запрещает все пакеты, которые не удовлетворяют условиям разрешающих правил стоящих выше (в списке правил). Т.е. удалив его ты разрешил ВСЕ входящие пакеты. Верни его, и добавь разрешающие для цитрикса:
Permit TCP Any Host Any Port -> 'внешний IP сервера' port 1494
Permit UDP Any Host Any Port -> 'внешний IP сервера' port 1604
и расположи их выше запрещающих в списке.


Цитата:
Теперь попробую правильно настроить защиту в Winroute (опятьже почитаю Вашу статью!)

Вот это правильно



ЗЫ
ох люблю я этот WinRoute 4.2.x При грамотной настройке - непробиваемый файрволл!
Автор: Orand
Дата сообщения: 02.06.2005 11:00
Добавил...
Удалил..
Вернул...
Не работает.

Добавлено:
Исправил так:
Permit TCP Any Host Any Port -> ANY HOST port 1494
Permit UDP Any Host Any Port -> ANY HOST port 1604
+
Deny Any host -> Any Host (в конце)
Работает.
Усли указать во входящих пакетах Citrix-IP вместо ANY HOST - не работает.
Блин! Хочу понимать!!! Почему?!
Автор: fosfor
Дата сообщения: 02.06.2005 16:03
ХЗ, может потому, что в настройках маппинга портов у тебя стоит

Цитата:
Ожидание сигнала: <не определен>

поставь там IP внешнего интерфейса сервера (который в роутер воткнут), или вообще "белый" адрес роутера, т.е. поэксперементируй. Я так и не понял мост у тебя там или маршрутизация.

добавлено
Блин пересмотрел то что тебе насоветовал, каюсь, накосячил с правилами
Исправлю в том посте. (Конечно там не IP_citrix, а IP внешнего интерфейса сервера)
Поэтому последнее ты сделал правильно, но несколько мягко
Автор: Orand
Дата сообщения: 02.06.2005 16:15
Все!
Все настроил и поправил. Все работает!
На Внешнем/Входящие:
Permit TCP Any Host port>1023 -> IP_External_card port=1494
Permit UDP Any Host port>1023 -> IP_External_card port=1604
....
На Внешнем/Исходящие:
Permit TCP IP_citrix port=1494 -> Any Host port>1023
Permit UDP IP_citrix port=1604 -> Any Host port>1023
....
Вдруг кому еще пригодится?!
fosfor Спасибо! Я те по идее пиво должен! Да, не одну

Страницы: 1234

Предыдущая тема: Узнать количество TCP сессий!??


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.