Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Винсок через прокси Добавлено: 05.08.07 19:40  

Автор вопроса:  ZagZag | ICQ: 295002202 
Хы.
Как я понял у многих этот вопрос возникает и у многих есть решение.
У меня такой вопрос возник, решения на него я не нашел.

Вобщем:
Надо заставить стандартный винсок работать через прокси
- HTTPS
- SOCKS 4,4A,5
- etc
Либо просто мануал (на русском) как это сделать. Но примеры более желательны
У DaSharm'a был мануал. Для начала подошел бы мне, но я че-то не могу этот мануал найти.

Ответить

  Ответы Всего ответов: 8  

Номер ответа: 1
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #1 Добавлено: 05.08.07 21:46
Мануала непомню, но валаются примеры того-же ДаШарма:

для 4:
Private Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Private Sub Command1_Click()
' Óêàæèòå IP è ïîðò ñîêñ4 ñåðâåðà
 Winsock1.Connect "133.45.45.45", 1080
End Sub

Private Sub Winsock1_Connect()
' Óêàæèòå IP è ïîðò õîñòà íàçíà÷åíèÿ
 Winsock1.SendData BuildSocks4Packet("200.22.22.22", "55";)
End Sub

Function BuildSocks4Packet(socksIP As String, socksPort As Long) As Variant
 ' © DaSharm ICQ: 2068093
On Error GoTo FAILED
Dim splIP, socksPacket(9) As Byte, tmpSocksByte(1) As Byte
  socksPacket(0) = &H4
  socksPacket(1) = &H1
    CopyMemory tmpSocksByte(0), socksPort, 2
  socksPacket(2) = tmpSocksByte(1)
  socksPacket(3) = tmpSocksByte(0)
     splIP = Split(socksIP, ".";)
  socksPacket(4) = splIP(0)
  socksPacket(5) = splIP(1)
  socksPacket(6) = splIP(2)
  socksPacket(7) = splIP(3)
  socksPacket(8) = &H0
  socksPacket(9) = &H0
   BuildSocks4Packet = socksPacket()
  Exit Function
FAILED:
  BuildSocks4Packet = False
End Function

Ответить

Номер ответа: 2
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #2 Добавлено: 06.08.07 01:05
Ух ты! Пасиба. Так все просто... Код еще не пробовал, но уверен что пашет
Плз, еще очень надо HTTPS

Ответить

Номер ответа: 3
Автор ответа:
 GreatHun



Вопросов: 3
Ответов: 5
 Web-сайт: vsemprivet.net
 Профиль | | #3
Добавлено: 06.08.07 14:25
Да не помешал бы!

Ответить

Номер ответа: 4
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #4 Добавлено: 06.08.07 17:28
Ну, плз! У кого инет есть - погуглите по теме. Статей-то много.
Я ща сам сижу - разгребаю логи Wireshark'a.

Траффика осталось 2Мб на 5 дней =(

Ответить

Номер ответа: 5
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 06.08.07 17:51
Ну забрать по HTTPS не сложно, я пользовался ActiveX XMLResponse (как в AJAX'e), он позволяет и по HTTPS запросы отправлять. Через винсок с https как-то не приходилось работать.

Ответить

Номер ответа: 6
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #6 Добавлено: 06.08.07 17:52
Прокси - это просто! =)

Для HTTPS при коннекте к host.com:80 через HTTPS прокси надо на IP:Port прокси слать:
CONNECT host.com:80 HTTP/1.0

User-Agent: Mozilla/4.0


crlf = vbCrLf
Или что-то типа того. А дальше работать как с обычным подключением

Ответ сервера будет 200, если прокси работает.
HTTP/1.0 200 Connection established

Proxy-Agent: NetCache NetApp/5.4R2D2


Не забывайте про количество vbCrLf - для коннекта это важно

Ответить

Номер ответа: 7
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #7 Добавлено: 06.08.07 18:10
Option Explicit

Private Sub Command1_Click()
    Winsock1.Connect "IP_моей_любимой_прокси_которой_я_не_хочу_делиться", 8080
End Sub

Private Sub Winsock1_Connect()
    Winsock1.SendData "CONNECT microsoft.com:443 HTTP/1.0" & vbCrLf & vbCrLf
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim strData As String
    Winsock1.GetData strData
    MsgBox strData
End Sub

Ответить

Номер ответа: 8
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #8 Добавлено: 28.08.07 00:56
Если кому про SOCKS5 интересно:
http://www.inattack.ru/article/272.html - Протокол SOCKS 5

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам