db1000n icon indicating copy to clipboard operation
db1000n copied to clipboard

Added mirrors for config.

Open Devaniti opened this issue 2 years ago • 5 comments

Description

Added mirrors for config files, in case Russia blocks github, so RU VPN users can still load config

Related to #204 Not closing since we may also add non git mirrors

Type of change

Added additional links to mirrors of config files

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

  • When some links are purposufully broken, app correctly falls back to next ones

Test Configuration

  • Release version: 07e552eb9a740c44f88b44704df24e97c8ad6606
  • Platform: Windows

Logs

When all links are correct:

C:\Projects\db1000n>go run main.go
2022/03/07 10:11:10.685127 runner.go:164: Loading config from "https://raw.githubusercontent.com/db1000n-coordinators/LoadTestConfig/main/config.json"
2022/03/07 10:11:10.685127 runner.go:87: New config received, applying

When some links are broken:

C:\Projects\db1000n>go run main.go
2022/03/07 10:12:10.914883 runner.go:160: Failed to fetch config from "https://raw.qqqgithubusercontent.com/db1000n-coordinators/LoadTestConfig/main/config.json": Get "https://raw.qqqgithubusercontent.com/db1000n-coordinators/LoadTestConfig/main/config.json": dial tcp: lookup raw.qqqgithubusercontent.com: no such host
2022/03/07 10:12:10.915998 runner.go:160: Failed to fetch config from "https://qqqgitlab.com/bestdarkstar/LoadTestConfig/-/raw/main/config.json": Get "https://qqqgitlab.com/bestdarkstar/LoadTestConfig/-/raw/main/config.json": dial tcp: lookup qqqgitlab.com: no such host
2022/03/07 10:12:11.569429 runner.go:164: Loading config from "https://bitbucket.org/bestdark/loadtestconfig/raw/main/config.json"
2022/03/07 10:12:11.569429 runner.go:87: New config received, applying

Devaniti avatar Mar 07 '22 10:03 Devaniti

Do these configurations merge into one? I mean, if the same address and method are described in several configs, what will be the behavior?

exsesx avatar Mar 07 '22 10:03 exsesx

@exsesx the way this commandline argument works is it allows you to specify mirror configs (i.e. if one is unavailable - try net one and so on) We're discussing the best approach to manage actual mirrors right now privately

arriven avatar Mar 07 '22 12:03 arriven

For the record, that 2 mirrors are automatically updated when main config updates

Devaniti avatar Mar 07 '22 16:03 Devaniti

@Arriven @Devaniti do you have any thoughts on fingerprinting of mirror configs to prevent rogue .conf poisoning?

bitshape avatar Mar 07 '22 19:03 bitshape

@Arriven https://github.com/Arriven/db1000n/pull/205#issuecomment-1061062692

Devaniti avatar Mar 08 '22 09:03 Devaniti

Closing since I no longer maintain those mirrors. If in the future mirrors will be needed, I can start maintaining them again. But before that we need some kind of configuration signing and validation, to eliminate possibility of unauthorized configs distributed through mirrors.

Devaniti avatar Dec 27 '22 09:12 Devaniti