Конференция "Сети" » Прокси в моей программе [D7, WinXP]
 
  • Sanprof (05.10.10 14:43) [40]
    так без прокси же работает.
  • Сергей М. © (05.10.10 14:53) [41]
    И чего ?
    С прокси же не работает)
    Значит у тебя ошибка в программе.
  • Sanprof (05.10.10 15:06) [42]
    я так понимаю на клиенте настраивается ClientSocket на хост и порт прокси-сервера и указывается куда проксе делать редирект, тоесть на мой сервер(порт и хост), но чего-то когда я указываю в настройках соединения клиента хост и порт прикси-сервера, то открывается случайный не занятый порт между прокси и клиентом и по-моему каждый раз новый.
    Я ж так понимаю соединение не должен зависеть от типа прокси-сервера и настроен ли NAT или еще какая-нибудь...????
  • Сергей М. © (05.10.10 15:16) [43]

    > открывается случайный не занятый порт между прокси и клиентом
    > и по-моему каждый раз новый


    И что ?
    Это совершенно нормально..
  • Sanprof (05.10.10 17:14) [44]
    почему тогда у меня на сервере даже не возникают события ни OnConnect ни OnClientRead при использовании прокси, ведь я код использую тот, что товарищ Slim © дал. То где он писал DoWork я делаю ClientSocket1.Socket.SendText('0| ответь сервер'), а сервер должен прочитать код "0" и отослать данному соединению ответ, что и происходит без использования прокси-сервера.
  • Сергей М. © (05.10.10 17:52) [45]

    > почему тогда у меня на сервере даже не возникают события
    > ни OnConnect


    Потому что прокси не пытался коннектиться к твоему серверу
  • Slym © (05.10.10 18:19) [46]
    телепатор мне подсказывает что не хватает #13#10 в конце конект запроса...
    заметь:
    SockWriteLn(ClientSocket1.Socket.SocketHandle,format('CONNECT %s:%d  HTTP/1.1',[RemoteHost,RemotePort]));// один перевод строки

    SockWriteLn(ClientSocket1.Socket.SocketHandle,format('Proxy-Authorization: %s'#13#10,[BasicAuthentication(Username,Password)]));// два перевода строки
    или записать по другому
    SockWriteLn(ClientSocket1.Socket.SocketHandle,format('Proxy-Authorization: %s',[BasicAuthentication(Username,Password)]));// один перевод строки
    SockWriteLn('');// еще один перевод строки

  • Slym © (05.10.10 18:21) [47]
    последняя строка должна быть пустой... после этого прокси начинает конектится...
    иначе тупо висит и ждет
  • Slym © (05.10.10 18:30) [48]
    смотри в 3proxy в конфиге строку типа
    allow * * * 443,8443 HTTPS


    а должно быть
    allow * * * * HTTPS


    но это дыра
  • I_D © (23.05.13 18:29) [49]
    Доброго времени суток.
    Пишу свое первое сетевое приложение. Необходимо подклчиться к серверу через  прокси. Программа будет работать по сокетах. Нашел примеры на Synapse.
    Первый пример THTTPSend Demo (HTTP only) вроде как работает. Программа возвращает следующее:

    Attempting GET http://www.google.com/ ..
    Destination URL = http://www.google.com.ua/
    HTTP Result = 200
    HTTP Headers:
    HTTP/1.1 200 OK
    Proxy-Connection: Keep-Alive
    Connection: Keep-Alive

    Второй пример TTCPBlockSocket Demo 1 возвращает:

    Attempting connection..
    Error 10091 - Network subsystem is unusable
    502 - Proxy Error ( The specified Secure Sockets Layer (SSL) port is not allowed. ISA Server is not configured to allow SSL requests from this port. Most Web browsers use port 443 for SSL requests.  )

    Интересовался у наших системщиков, какой тип прокси настроен - ответ - используется ISA (без каких либо дополнительных объяснений)

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

    В конечном итоге программа должна отправлять SMS по протоколу SMPP на сервер SMSС.

    Возможно вы подскажите какой либо сервер в инете, к которому можно подключится по сокетах по порту 443 (для проверки работы примера)
  • I_D © (23.05.13 18:51) [50]
    Пробовал пример протестить на mail.google.com
    Ответ :

    Attempting connection..
    Sock Error Desc = Network subsystem is unusable
    SSL Error Desc = SLL is not implemented!

    Стоит ли искать другие компоненты или проблема в доступе?
  • Anatoly Podgoretsky © (23.05.13 20:24) [51]
    Тебе/вам надо настроить ISA сервер, в ошибке четко сказано

    > 502 - Proxy Error ( The specified Secure Sockets Layer (SSL)
    > port is not allowed. ISA Server is not configured to allow
    > SSL requests from this port. Most Web browsers use port
    > 443 for SSL requests.  )

    Во втором сообщение у тебя вообще появляется какой то новый протокол SLL, не знаю такого. И как у вас сеть работает без SSL ведь ко многим сайтам доступ только через SSL

    P.S. нестандартные порты нужна особая конфигурация СОМ сервера. Ничего сложного, писать надо на VB
  • I_D © (24.05.13 11:46) [52]

    > И как у вас сеть работает без SSL ведь ко многим сайтам
    > доступ только через SSL

    Это то и меня настораживает. Я без проблем подключаюсь бровзером к этому же gmail.com, а он работает по SSL (если не ошибаюсь)

    Я больше склонен к тому, что у нас запрещен туннелинг.

    Подскажите, пожалуйста, возможно ли работать по сокетах через прокси без организации туннелинга?
  • Anatoly Podgoretsky © (24.05.13 13:05) [53]
    gmail работает по SSL есди его настроить на такую работу, иначе соединеие обычное.

    Я внимательно подумал, проблема в том, что порт нестандартный и он не сконфигурирован. Ищи в этом направление.
  • I_D © (24.05.13 13:21) [54]

    > Anatoly Podgoretsky

    Спасибо. Попробую по-общаться с системщиками.
  • Anatoly Podgoretsky © (24.05.13 14:06) [55]
    Вообще то это проблема программная, а не аппаратная
  • I_D © (24.05.13 18:51) [56]
    Если программная - то тогда даже не знаю за что зацепится. Я предполагал, что туннелинг, который создается методом CONNECT, в моем случае поддерживает только  443 порт на ISA Servere в виду настроек сделанными системщиками. Просмотрел код компонента - не увидел какую-то особую настройку по портам в сокетах.
    Ок . Буду дальше мучится :) Может что-то да и получится
  • Anatoly Podgoretsky © (24.05.13 20:37) [57]
    Я уже написал, что надо сделать - набисать скрипт на Бейсике и выполнить его в консоли. Никакой другой метод не поможет.
    Скрипт можно найти в Интернете, вроде бы на сайте ISA
  • Anatoly Podgoretsky © (24.05.13 20:50) [58]
    Вот случайно нашел скрипт, может в нем надо сделать поправки

    AddPort.vbs
    dim root
    dim tpranges
    dim newrange
    set root = createobject("FPC.Root")
    set tpranges = root.GetContainingArray.ArrayPolicy.WebProxy.TunnelPortRanges
    set newRange = tpRanges.AddRange("SSL 4433", 4433, 4433)
    tpRanges.Save


    Подробности ищи на сайте сам.
  • I_D © (25.05.13 15:08) [59]

    > Anatoly Podgoretsky

    Спасибо. Теперь начинаю понимать. :)
 
Конференция "Сети" » Прокси в моей программе [D7, WinXP]
Есть новые Нет новых   [118448   +36][b:0][p:0.001]