-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dynamic UDP port blocking #181
Comments
Thanks for this information. A question to help diagnose what's going on: When you run Hysteria and Hysteria sends UDP packets to a certain port on the proxy server, do unrelated UDP packets (non-Hysteria) to the same port at the same time also get blocked? Let's say that Hysteria is sending to port 5555. Try running this Nping command: nping --udp --count 0 --dest-port 5555 --data-string "test hello" EU1 You won't get any UDP responses from the client, but with tcpdump on the server ( This experiment is designed to distinguish two possibilities. One possibility is that the firewall inspects every UDP packet, probably looking for a distinctive fingerprint that indicates Hysteria, and then drops those packets (and only those packets). Another possibility is that the firewall detects Hysteria somehow, and then blocks all UDP packets to the same IP or the same IP:port for a short time. See the notes about "residual censorship" at #43 (China) and the note about blocking persisting for 60 seconds from #49 (Iran, but about TCP in that case). |
@wkrp I don't know how to use ncat, nping or tcpdump but I tried iperf3 with and without a hysteria connection (I turned on my hysteria node in sagernet and it doesn't acutally connect but I think it keeps sending packets while it's on). |
which networks? which datacenter? are eu1, eu2, us1 and us2 from the same datacenter? I believe they just completely blocked UDP on mobile networks... do this |
@wkrp I did tests you said. The server did nor receive any packets with nping command. here is screen shots of US1 Tests with hysteria running on port 20000 and works fine: note that both servers are running ubuntu 22.04 and firewalls both on client and server are disabled. These VPSs are rather cheap and there is a high probability their IPs already is dirty and I'm probably just got lucky with US1 @Azadzadeh |
@wkrp I should also add that i ran hysteria on US2 (Which couldn't connect) and while it was trying to connect, I sent packets with ncat to the same hysteria port and listened with tcpdump (which was already listening for hysteria packets). Ncat packets received but hysteria packets didn't. |
If the problem is indeed the packages being blocked because they are/look like hysteria (or any other proxy or VPN), It can't be that hard to circumvent. "Cloak" or "swgp-go" are a couple examples that could possibly help. "UDPspeeder" might be one too. |
@poorp the problem can't be just because those packets are or look like hysteria, because in that case the other connection (US1) should get blocked too. |
@msshn in that case, they are probably limiting ip ranges of popular VPS providers which makes this all the more difficult and practically throws UDP out the window. |
thanks. that is a very good data point. these providers are not famous. my recent experience and this info means most of our problems are related to "dirty" IP and IP-ranges. meaning if you are using a secure and recent circumvention method but are not able to connect, you have to doubt your IP first then the proxy tools...(i'm only talking about TCP, we should just forget about UDP in iran) also if you have UDP going, best option in terms of performance and security would be hysteria not wg or tuic.
I don't think circumventing gfw is in that project's scope. see here: tuic-protocol/tuic#119 (comment) |
Thank you, this is the information I wanted. It looks like dynamic protocol detection, not IP or IP:port blocking with time-based residual blocking.
Don't assume that the censorship rules are the same always. As @poorp suggests, it may depend on the destination address in addition to features of the protocol. I don't know the Hysteria protocol, but it may have something to do with lages packet sizes. (
This is an interesting result. The packets produced by Nping should be mostly the same as the packets produced by Ncat. The most likely explanation is that Nping's default UDP source port of 53 is causing the packets to be blocked by a different blocking rule. Try adding something like |
@wkrp However starting from yesterday even US1 server can not connect via any UDP proxy protocols like Hysteria or Tuic on any port. Also no Hysteria packets any longer get recieved by the server on any port. |
If you like to use UDP over TCP (because of speed, latency, etc) imo you should be using QUIC protocol and nothing else. Seriously, I mean it. You can do so by using xray. I am starting to see more and more websites (Even Iranian ones to my surprise) use this protocol. Not to mention almost all Google Services started using it. Therefore, I think there is a lower chance of being blocked in a month or two. |
Developer of hysteria here. The two UDP protocols (hysteria & tuic) the poster has tried are both QUIC-based, so I'm not sure what you are trying to say. Based on the information I think Iranian ISPs may be blocking all "unknown" UDP protocols, including non-HTTP/3 QUIC. The process may not be real-time and will only be triggered after a certain amount of traffic, which might be why some servers worked for a while. If possible there are two experiments you could do:
|
I'm also exploring making a proxy protocol based entirely on HTTP/3. A hysteria server would then appear to be an unremarkable HTTP/3 web server (that can be configured to act as a reverse proxy for a website) but would function as a proxy when the correct credentials are provided. |
@tobyxdd |
@poorp Yes, you can reach me on Telegram. Just send me your contact info to my email address (check my GitHub profile) |
@tobyxdd @poorp & @tobyxdd |
This is of course true but QUIC doesn't hide the fact that it's QUIC. One can easily tell if a connection is using QUIC (by its TLS handshakes & packet headers). The purpose of |
It's true, we tested it.
…On Mon, Jan 9, 2023, 20:50 arandomgstring ***@***.***> wrote:
@tobyxdd <https://github.com/tobyxdd>
I apologize, I thought that Hysetria simply imitates QUIC protocol without
using actual TLS certificates (just like how newer versions of shadowsocks
imitate https without actually doing the handshake). My thought process
went like this: Quic http3 encrypt and protect data by itself (with tls
against DPI, MITM, etc) therefore there is no need for additional password
(obfs), however, Hysteria uses a password (obfs) to encrypt data, therefore
it doesn't use real TLS. After checking document, I understood I was wrong,
though I am still not quite sure why exactly obfs is needed.
@poorp <https://github.com/poorp> & @tobyxdd <https://github.com/tobyxdd>
As for state of QUIC in Iran, I am afraid that it is completely blocked,
as the client doesn't receive Server Hello at all. I checked quite a few
websites such as google.com (which is whitelisted) and cloudflare.com
(whitelisted also) and dozen of others. What I see in Wireshark, is that
client sends client hello, but never receives Quic server hello, therefore
automatically the connection is downgraded to simple tcp https TLS1.2 or
TLS1.3. One possibility was that this protocol (QUIC) is not supported by
ISPs themselves, but I checked an Iranian website mihanwebhost.com and
observed that the client does receive QUIC server hello and can maintain
connection on QUIC without downgrading. *A simple conclusion is that QUIC
can only be served on Iranian IPs as of now. Hopefully someone can confirm,
or reject this hypothesis.*
—
Reply to this email directly, view it on GitHub
<#181 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/A3VHC2GWJ2UU2R37QBG3O3TWRRCFTANCNFSM6AAAAAATHUDZ3Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@poorp I guess It won't work with hysteria, since Its TLS handshake won't be completed. Unless someone write a simple code that add IPtable rule immediately after the handshake. I will explain what can be done, but I cannot test it myself: Since they are blocking QUIC from foreign IPs, do you think something like IP spoofing is doable for hysteria protocol (in theory at least)? I am proposing this to make Hysteria work in Iran. So it goes like this: we send packets to VPS server via ssh (or any other unrestricted protocol in Iran), and receive QUIC packets from the foreign VPS server with "spoofed Iranian IP address" (so that it looks like we are receiving QUIC packets from Iranian IP address, not a foreign VPS server which causes blockage). On client side:
For this purpose we can open a ssh tunnel like this
On Linux, we can simply write On server side:
At any rate, on Linux systems its pretty straightforward. One IPtable rule + SSH connection and slight modification of hysteria and host file on client, and on server one IPtable suffices. I wonder if someone would test this. |
@arandomgstring |
You see, each time you send a network packet out of your system, you do 2 things. First you write your own IP address on Source Address of your packet. Second, you write the IP address of your destination, for example google.com IP address. Changing destination address is pretty much useless, because your real destination doesn't receive any packets. Also note that network connections are usually bidirectional (i.e you send packets, and receive packets. Same goes for VPS). Now, if you modify Source Address, it is as if you have sent a packet with correct destination address, but incorrect origin address. Therefore, your destination address does receive packet, but it doesn't have any idea where to reply. We can misuse this fact. How? well, each time your Foreign VPS server send a packet to your client, it can modify its own Source Address to look like a domestic VPS server. Therefore, the client, ISP, etc all will assume that you are receiving packets from domestic servers and not Foreign VPS server, and let it to go through with any protocol, even QUIC which is blocked. So the packets that client receive and VPS sends are modifiable. However, when your client want to send packet to your Foreign VPS server, it cannot modify either of source address or destination address. Why? Well if it modifies destination address, your foreign VPS server will receive nothing. On the other hand, if your client change source address, your VPS server still receive nothing (due to restriction of Iran on foreign IP address) or receive these packets very slowly, just like before. My idea was that because most of time we are getting data from a VPS (download) and don't send much data to it (upload) with IP spoofing we can hide VPS usage significantly. Moreover, we can use any restricted protocol from wireguard to hysteria, which will offer better latency than TCP TLS based connections. As for uploading speed, I assume FTP is another good option. It should work pretty well, because its very purpose is "uploading". If they throttle this, every single foreign hosted Iranian website out there will face a huge problem. I am not aware of any "FTP" tunnel though. If it exist, it should work. And if it doesn't, you can still upload huge file with normal FTP on your VPS and then send them from VPS to your destination. |
Thanks for clarifying that.
I think I need to clarify the fact that they have throttled upload to the
point of Google drive and other file sharing services practically not
working! Also, we are not talking very huge files here, I'm talking about
the connection getting close to zero speeds on the upload after mere
seconds! We have a serious upload issue and one that is causing problems
with basically any usage.
I also guess maybe behind the scenes of the VPN peovider that I said has
plain unobfuscated WireGuard kinda working, the same IP spoofing idea has
been implemented because I haven't seen any other WireGuard work at all and
I've tried to host my own on many different IPs, it does not work. Also
their upload speed is around 0.01 Mbps which makes sense in this case.
With regards to hiding a lot of usage on the VPS I think this is a very
brilliant idea and might solve a lot of our problems since they are
overcharging the Moses out of foreign traffic right now and that's one of
our big problems.
I am really excited to try this method. Do you think it can be implemented
with WireGuard with direct upload (hoping directly uploading WireGuard
packets is going to be fine even at a very slow rate as a proof of
concept)? And if so, will you please restate how I would go about testing
this method (ELI5 perhaps? since I'm a newbie)
…On Tue, Jan 10, 2023, 04:43 arandomgstring ***@***.***> wrote:
@poorp <https://github.com/poorp>
You see, each time you send a network packet out of your system, you do 2
things. First you write your own IP address on Source Address of your
packet. Second, you write the IP address of your destination, for example
google.com IP address. Changing destination address is pretty much
useless, because your real destination doesn't receive any packets. Also
note that network connections are usually bidirectional (i.e you send
packets, and receive packets. Same goes for VPS).
Now, if you modify Source Address, it is as if you have sent a packet with
correct destination address, but incorrect origin address. Therefore, your
destination address does receive packet, but it doesn't have any idea where
to reply. We can misuse this fact.
How? well, each time your Foreign VPS server send a packet to your client,
it can modify its own Source Address to look like a domestic VPS server.
Therefore, the client, ISP, etc all will assume that you are receiving
packets from domestic servers and not Foreign VPS server, and let it to go
through with any protocol, even QUIC which is blocked. So the packets that
client receive and VPS sends are modifiable.
However, when your client want to send packet to your Foreign VPS server,
it cannot modify either of source address or destination address. Why? Well
if it modifies destination address, your foreign VPS server will receive
nothing. On the other hand, if your client change source address, your VPS
server still receive nothing (due to restriction of Iran on foreign IP
address) or receive these packets very slowly.
My idea was that because most of time we are getting data from a VPS
(download) and don't send much data to it (upload) with IP spoofing we can
hide VPS usage significantly. Moreover, we can use any restricted protocol
from wireguard to hysteria, which will offer better latency than TLS based
connections.
As for uploading speed, I assume FTP is another good option. It should
work pretty well, because its very purpose is "uploading". If they throttle
this, every single foreign hosted Iranian website out there will face a
huge problem. I am not aware of any "FTP" tunnel though. If it exist, it
should work. And if it doesn't, you can still upload huge file with normal
FTP on your VPS and then send them from VPS to your destination.
—
Reply to this email directly, view it on GitHub
<#181 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/A3VHC2DWWY2OT2CZN4NT3B3WRSZTLANCNFSM6AAAAAATHUDZ3Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@tobyxdd |
Let me make a suggestion first. You say a Wireguard VPN is working fine, right? Open it, and open Wireshark too. then in Wireshark, you might see 4 possibilities, based on what you see, we can make other Wireguard VPNs work.
Let me know the results. |
Just give me a single example of a foreign hosted website/service that uses QUIC and works fine in Iran. |
Did the restrictions of Cloudflare lift?
If so you may could use Cloudflare tunnel to transmit udp traffic.
Jan 11, 2023 00:00:39 arandomgstring ***@***.***>:
… @msshn[https://github.com/msshn]
I think QUICK is not completely blocked but very aggressively censored (maybe operating based on a whitelist mode instead of blacklist).
Just give me a single example of a foreign hosted website/service that use QUIC and works fine in Iran.
—
Reply to this email directly, view it on GitHub[#181 (comment)], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AKGBAYCFXOKOMVXLIYVJAZLWRWBSNANCNFSM6AAAAAATHUDZ3Q].
You are receiving this because you are subscribed to this thread.[Tracking image][https://github.com/notifications/beacon/AKGBAYHNZESX7WQRXFL62FLWRWBSNA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDLHRK.gif]
|
I used WireShark and there was a single IP with WireGuard as protocol both sending and receiving, and no, as I expected, It wasn't an Iranian IP since Iran is under sanctions and this company (based in the USA) can't do business with Iranian providers. The IP belongs to M247 which to my knowledge does not accept crypto payments which are the only way we can pay (again, sanctions) and even if I could rent a VPS from them, it is probably going to get blacklisted or limited soon (just like what happened with Hetzner last week) so there is no point. |
As a general rule, have this in mind: the Islamic Republic never lifts any restrictions, they just add more. |
😅 could you use satellite internet?
Jan 11, 2023 01:16:18 poorp ***@***.***>:
… Did the restrictions of Cloudflare lift? If so you may could use Cloudflare tunnel to transmit udp traffic. Jan 11, 2023 00:00:39 arandomgstring /*@*/.***>:
…[#]
@msshn[https://github.com/msshn][https://github.com/msshn] I think QUICK is not completely blocked but very aggressively censored (maybe operating based on a whitelist mode instead of blacklist). Just give me a single example of a foreign hosted website/service that use QUIC and works fine in Iran. — Reply to this email directly, view it on GitHub[#181 (comment)[#181 (comment)]], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AKGBAYCFXOKOMVXLIYVJAZLWRWBSNANCNFSM6AAAAAATHUDZ3Q]. You are receiving this because you are subscribed to this thread.[Tracking image][https://github.com/notifications/beacon/AKGBAYHNZESX7WQRXFL62FLWRWBSNA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDLHRK.gif]
As a general rule, have this in mind: the Islamic Republic never lifts any restrictions, they just add more.
—
Reply to this email directly, view it on GitHub[#181 (comment)], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AKGBAYDSFRDHFMVAPFLK7F3WRWKODANCNFSM6AAAAAATHUDZ3Q].
You are receiving this because you commented.[Tracking image][https://github.com/notifications/beacon/AKGBAYGGBYM7LQLN7AXH3MLWRWKODA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDRSEU.gif]
|
Sure, if only I had about 2000$ to buy the equipment and around 100$ per
month for the subscription. The minimum wage in Iran is around 100$ a month
(official rate) and the average income about 200$ per month (my estimate).
…On Tue, Jan 10, 2023, 20:55 Nanyu ***@***.***> wrote:
😅 could you use satellite internet?
Jan 11, 2023 01:16:18 poorp ***@***.***>:
> Did the restrictions of Cloudflare lift? If so you may could use
Cloudflare tunnel to transmit udp traffic. Jan 11, 2023 00:00:39
arandomgstring /*@*/.***>:
> …[#]
> @msshn[https://github.com/msshn][https://github.com/msshn] I think
QUICK is not completely blocked but very aggressively censored (maybe
operating based on a whitelist mode instead of blacklist). Just give me a
single example of a foreign hosted website/service that use QUIC and works
fine in Iran. — Reply to this email directly, view it on GitHub[#181
(comment)[
#181 (comment)]],
or unsubscribe[
https://github.com/notifications/unsubscribe-auth/AKGBAYCFXOKOMVXLIYVJAZLWRWBSNANCNFSM6AAAAAATHUDZ3Q].
You are receiving this because you are subscribed to this thread.[Tracking
image][
https://github.com/notifications/beacon/AKGBAYHNZESX7WQRXFL62FLWRWBSNA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDLHRK.gif
]
>
> As a general rule, have this in mind: the Islamic Republic never lifts
any restrictions, they just add more.
>
> —
> Reply to this email directly, view it on GitHub[
#181 (comment)], or
unsubscribe[
https://github.com/notifications/unsubscribe-auth/AKGBAYDSFRDHFMVAPFLK7F3WRWKODANCNFSM6AAAAAATHUDZ3Q
].
> You are receiving this because you commented.[Tracking image][
https://github.com/notifications/beacon/AKGBAYGGBYM7LQLN7AXH3MLWRWKODA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDRSEU.gif
]
>
—
Reply to this email directly, view it on GitHub
<#181 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/A3VHC2AIU6OS6OBGMJ46YRTWRWLQFANCNFSM6AAAAAATHUDZ3Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Sorry, we found starlink only free in Ukrine.
Jan 11, 2023 01:29:56 poorp ***@***.***>:
… Sure, if only I had about 2000$ to buy the equipment and around 100$ per
month for the subscription. The minimum wage in Iran is around 100$ a month
(official rate) and the average income about 200$ per month (my estimate).
On Tue, Jan 10, 2023, 20:55 Nanyu ***@***.***> wrote:
> 😅 could you use satellite internet?
>
> Jan 11, 2023 01:16:18 poorp ***@***.***>:
>
> > Did the restrictions of Cloudflare lift? If so you may could use
> Cloudflare tunnel to transmit udp traffic. Jan 11, 2023 00:00:39
> arandomgstring /*@*/.***>:
> > …[#]
> > @msshn[https://github.com/msshn][https://github.com/msshn] I think
> QUICK is not completely blocked but very aggressively censored (maybe
> operating based on a whitelist mode instead of blacklist). Just give me a
> single example of a foreign hosted website/service that use QUIC and works
> fine in Iran. — Reply to this email directly, view it on GitHub[#181
> (comment)[
> #181 (comment)]],
> or unsubscribe[
> https://github.com/notifications/unsubscribe-auth/AKGBAYCFXOKOMVXLIYVJAZLWRWBSNANCNFSM6AAAAAATHUDZ3Q].
> You are receiving this because you are subscribed to this thread.[Tracking
> image][
> https://github.com/notifications/beacon/AKGBAYHNZESX7WQRXFL62FLWRWBSNA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDLHRK.gif
> ]
> >
> > As a general rule, have this in mind: the Islamic Republic never lifts
> any restrictions, they just add more.
> >
> > —
> > Reply to this email directly, view it on GitHub[
> #181 (comment)], or
> unsubscribe[
> https://github.com/notifications/unsubscribe-auth/AKGBAYDSFRDHFMVAPFLK7F3WRWKODANCNFSM6AAAAAATHUDZ3Q
> ].
> > You are receiving this because you commented.[Tracking image][
> https://github.com/notifications/beacon/AKGBAYGGBYM7LQLN7AXH3MLWRWKODA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDRSEU.gif
> ]
> >
>
> —
> Reply to this email directly, view it on GitHub
> <#181 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/A3VHC2AIU6OS6OBGMJ46YRTWRWLQFANCNFSM6AAAAAATHUDZ3Q>
> .
> You are receiving this because you were mentioned.Message ID:
> ***@***.***>
>
—
Reply to this email directly, view it on GitHub[#181 (comment)], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AKGBAYGWRUT6ANFVSZU642TWRWMBHANCNFSM6AAAAAATHUDZ3Q].
You are receiving this because you commented.[Tracking image][https://github.com/notifications/beacon/AKGBAYG75HXT2X2TR5VW5SLWRWMBHA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDSTVA.gif]
|
Also, the government is claiming they can easily detect and find the receivers and also I'm pretty sure my neighbor is a government agent so he would probably sell me out in a matter of hours when I install that satellite receiver. |
🥲 You are in serious adversity.
Jan 11, 2023 01:34:34 poorp ***@***.***>:
… Sorry, we found starlink only free in Ukrine. Jan 11, 2023 01:29:56 poorp /*@*/./*>:
…[#]
Sure, if only I had about 2000$ to buy the equipment and around 100$ per month for the subscription. The minimum wage in Iran is around 100$ a month (official rate) and the average income about 200$ per month (my estimate). On Tue, Jan 10, 2023, 20:55 Nanyu /*@*/.*/> wrote: > sweat_smile could you use satellite internet? > > Jan 11, 2023 01:16:18 poorp /*@*/.///>: > > > Did the restrictions of Cloudflare lift? If so you may could use > Cloudflare tunnel to transmit udp traffic. Jan 11, 2023 00:00:39 > arandomgstring //@//./*>: > > …[#] > > @msshn[https://github.com/msshn][[https://github.com/msshn]https://github.com/msshn[https://github.com/msshn%5D%5Bhttps://github.com/msshn]] I think > QUICK is not completely blocked but very aggressively censored (maybe > operating based on a whitelist mode instead of blacklist). Just give me a > single example of a foreign hosted website/service that use QUIC and works > fine in Iran. — Reply to this email directly, view it on GitHub[#181[#181] > (comment)[ > #181 (comment)[#181 (comment)]]], > or unsubscribe[ > https://github.com/notifications/unsubscribe-auth/AKGBAYCFXOKOMVXLIYVJAZLWRWBSNANCNFSM6AAAAAATHUDZ3Q]. > You are receiving this because you are subscribed to this thread.[Tracking > image][ > https://github.com/notifications/beacon/AKGBAYHNZESX7WQRXFL62FLWRWBSNA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDLHRK.gif > ] > > > > As a general rule, have this in mind: the Islamic Republic never lifts > any restrictions, they just add more. > > > > — > > Reply to this email directly, view it on GitHub[ > #181 (comment)[#181 (comment)]], or > unsubscribe[ > https://github.com/notifications/unsubscribe-auth/AKGBAYDSFRDHFMVAPFLK7F3WRWKODANCNFSM6AAAAAATHUDZ3Q > ]. > > You are receiving this because you commented.[Tracking image][ > https://github.com/notifications/beacon/AKGBAYGGBYM7LQLN7AXH3MLWRWKODA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDRSEU.gif > ] > > > > — > Reply to this email directly, view it on GitHub > <#181 (comment)[#181 (comment)]>, > or unsubscribe > https://github.com/notifications/unsubscribe-auth/A3VHC2AIU6OS6OBGMJ46YRTWRWLQFANCNFSM6AAAAAATHUDZ3Q > . > You are receiving this because you were mentioned.Message ID: > /*@*/.**> > — Reply to this email directly, view it on GitHub[#181 (comment)[#181 (comment)]], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AKGBAYGWRUT6ANFVSZU642TWRWMBHANCNFSM6AAAAAATHUDZ3Q]. You are receiving this because you commented.[Tracking image][https://github.com/notifications/beacon/AKGBAYG75HXT2X2TR5VW5SLWRWMBHA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDSTVA.gif]
Also, the government is claiming they can easily detect and find the receivers and also I'm pretty sure my neighbor is a government agent so he would probably sell me out in a matter of hours when I install that satellite receiver.
—
Reply to this email directly, view it on GitHub[#181 (comment)], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AKGBAYD25QQ2M5PPZN2EKMTWRWMSTANCNFSM6AAAAAATHUDZ3Q].
You are receiving this because you commented.[Tracking image][https://github.com/notifications/beacon/AKGBAYF6ISHAHLOK4K7ZWKTWRWMSTA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDS6ZU.gif]
|
@cross-hello Yes :( , Adopt maybe? :) |
No, transform the suffering into motivation of leaving the country.
If you insist, one day you must could leave.
Jan 11, 2023 01:39:56 poorp ***@***.***>:
… @cross-hello[https://github.com/cross-hello] Yes :( , Adopt maybe? :)
—
Reply to this email directly, view it on GitHub[#181 (comment)], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AKGBAYESFJBEF2UXKR7CHADWRWNGZANCNFSM6AAAAAATHUDZ3Q].
You are receiving this because you were mentioned.[Tracking image][https://github.com/notifications/beacon/AKGBAYDWL4BA6GD6KQ65JFTWRWNGZA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSSDTLEQ.gif]
|
Thanks for the motivation, I will. |
@tobyxdd thanks for your work. If you don't know of it yet, you should see the IETF MASQUE working group, which is all about standardizing proxy protocols over HTTP/3. This includes things like proxying UDP datagrams and IP packets. You can see the MASQUE meeting notes from the recent IETF 115 meeting. In my experience, some of the working group members are fairly well informed about censorship threat models. For example, in HTTP Transport Authentication, the text "This allows the server to accept authenticated clients without revealing that it supports or expects authentication for some resources" is about active probing attacks, like the ones considered in HTTPT. |
This comment was marked as off-topic.
This comment was marked as off-topic.
how about udp2raw |
After seeing tcp, udp imitation, now finally meet ICMP masquerade.
Feb 27, 2023 21:38:43 Hunter Xue ***@***.***>:
… how about udp2raw[https://github.com/wangyu-/udp2raw]
—
Reply to this email directly, view it on GitHub[#181 (comment)], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AKGBAYHNIGIAS6TCMUHB52DWZSU6FANCNFSM6AAAAAATHUDZ3Q].
You are receiving this because you were mentioned.[Tracking image][https://github.com/notifications/beacon/AKGBAYELCECZE2XGBQMXQVLWZSU6FA5CNFSM6AAAAAATHUDZ3SWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSWGVSQM.gif]
|
I think there is some UDP port blocking in Iran not just by IP but also by the software used.
Here's the situation:
I have 2 vps server from the same company. one in the US and another one in Europe, we call these US1 and EU1 servers. on the US1 server i can use UDP based proxies like hysteria without issue but on the EU1 one no UDP based proxies can connect. at first I suspected the UDP port on the EU1 server were all blocked based on IP, But by using Ncat i opened a tunnel from my home PC to the EU1 server and UDP packets delivered whitout any issue!! Any thing I typed on my PC show up one the vps server instantly. then i tested the EU1 and US1 servers UDP connection with each other and they could send and receive UDP packets fine. Obviously, UDP connection between me and US1 server also works both with Ncat and Hysteria.
At this point, I suspected maybe something is wrong with EU1 server so i bought 2 new VPS servers. one from EU and one from US. we call these US2 and EU2 servers. Testing with Ncat showed this results :
RESULTS
The VPS and Hysteria configs on all servers are all the same.
All 4 Servers can send/receive UDP to/from each other.
I can send UDP packets with Ncat to all 4 servers on differnt ports.
Using Tcpdump on servers, no UDP packet sent from client by hysteria to EU1, EU2 and US2 get received by the server.
Wireshark on the client shows UDP packets get sent by the client.
I can only stablish Hysteria UDP proxy to US1 Server.
at the same time other UDP based proxies like Tuic Could'nt connect on any server.
MY CONCLUSION
The protocol itself (at least Hysteria) is not blocked.
The UDP ports of dirty IPs (in this case EU1,EU2,US2) are not blocked completely but somewhat partly. Maybe UDP ports are blocked but with some whitelist rules, for example allow well known tools like Ncat, socat , etc. to go through. I'm not sure if it's technically possible to do this. (Does these tools leave any fingerprint or something?)
The text was updated successfully, but these errors were encountered: