Страница: 1 |
Страница: 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 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-сайт:
Профиль | | #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 прокси слать:
User-Agent: Mozilla/4.0
crlf = vbCrLf
Или что-то типа того. А дальше работать как с обычным подключением
Ответ сервера будет 200, если прокси работает.
Proxy-Agent: NetCache NetApp/5.4R2D2
Не забывайте про количество vbCrLf - для коннекта это важно
Номер ответа: 7
Автор ответа:
ZagZag
ICQ: 295002202
Вопросов: 87
Ответов: 1684
Профиль | | #7
Добавлено: 06.08.07 18:10
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