Conversation
|
I've also found out that I can use a list of DCs returned by help.getConfig to force mtg to connect to a different set of clusters. They require their own obfuscation and supply a secret. I do not want to bloat this PR and probably do in a different PR |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #326 +/- ##
==========================================
- Coverage 71.31% 69.04% -2.27%
==========================================
Files 79 82 +3
Lines 2674 2714 +40
==========================================
- Hits 1907 1874 -33
- Misses 672 743 +71
- Partials 95 97 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There is no information yet that DC=203 used addresses other than the only one... |
|
@axkurcom we'll see. Given a fact that it returns only for a logged in user, it could be that it is dependend on different factors like regions, geographical proximity and so on. CDN implies network, network implies many hosts. |
Telegram dont know about anycast... after that, it is extremely difficult to find "stable dependencies"... in fact, if MTProxy is hosted in Europe, then CDN in Finland is relatively well accessible to everyone through a proxy... |
|
True, and you are spot on about anycast. Im not sure that anycast is technically feasible for Telegram, because it implies another level of presence to advertise such IP |
There is long-standing issue that Telegram CDNs are not publicly enlisted. So, when it requests for DC203 (CDN), mtg had no idea where to look at. Apparently, it works this way:
Unfortunately, Telegram does not rely on DNS (this is probably a good idea), so we cannot use any permalink here. Moreover, CDN IPs are very specific to each client, so hardcoding them works as a cat'n'mouse game. Since CDNs are specific to client settings (regions etc), they are not returned with anonymous help.getConfig request. We can do nothing about it.
What works at least now is using a single IP that was extracted by logged in user. This works so far, but this is not a complete solution by any mean.
The best thing we can do is suggesting users ways to do their own overrides, so they can specify their IPs. This is configurable:
You can supply a mix of IPv4 and IPv6, we will figure everything out. If you are happy to rely on defaults, supply nothing but remembers about this possibility.
Kudos to telemt: telemt/telemt#19 Encourage everyone to check their project
This fixes #321 #317 and #283