Open kaykyr opened 1 year ago
Hi!
I am not too sure what does it mean by to send requests in HTTP/3 and receive responses in HTTP/1.1. What happens here is we proxy a connection with Instagram (whatever protocol Instagram is using, HTTP/3 or HTTP/1.1), you establish a tunnel:
Instagram client <-HTTP/1.1 or SOCKS5> masquerade client <-HTTP/3-> masquerade server <-> Instagram server
<---------------------any protocol Instagram uses---------------------->
where the packets reaching the Instagram server and client are unmodified, so it stays HTTP/1.1 if it uses HTTP/1.1.
The code change looks okay to me. It might be that I tested on a different platform and the socket did let me connect.. I will review and change the code later.
It is definitely possible to host it on a remote server. You would need to replace corresponding the 127.0.0.1
in the command to the IP for the network interface you would like to host it on.
Cheers!
After making this change, the code executed without any errors. Is this approach correct?
Yes, it is correct. From the Tokio docs:
UDP is "connectionless", unlike TCP. Meaning, regardless of what address you've bound to, a UdpSocket is free to communicate with many different remotes. In tokio there are basically two main ways to use UdpSocket:
one to many:
bind
and usesend_to
andrecv_from
to communicate with many different addresses one to one:connect
and associate with a single address, usingsend
andrecv
to communicate only with that remote address
Hi,
I was looking for a way to proxy my connection with Instagram using a proxy that sends requests over HTTP/3 and returns responses in HTTP/1.1. Is this project intended to serve a similar purpose?
While trying to set up and execute the project, I encountered some issues with the provided code. Here's what happened:
Initially, I executed the server with the following command:
Then, I executed the client using this command:
However, I received an error message that stated:
To resolve this issue, I made the following changes to the code:
At line 155 in client.rs:
At line 476 in client.rs:
After making this change, the code executed without any errors. Is this approach correct?
Finally, I would like to ask if it's possible to use an existing TCP/SOCKS5 proxy hosted on a remote server as a way to establish a QUIC-encapsulated connection, or if it's only possible to do this using pre-existing interfaces on localhost?
Thank you for your help!