Major Changes
- Added caching support
- Added ephemeral mode
- Added service mode
- Added custom config start mode using
--cd
flag - Added DNS assignment on network interface functionality
Changelog
- 31b30c5 Add notarizing darwin binary with gon
- fa3c3e8 Close http3 roundtripper when error occurred
- a6b3c4a Don't set default log level in config file
- 3602484 Merge pull request #11 from Control-D-Inc/release-branch-v1.1.0
- 5961947 Merge pull request #13 from Control-D-Inc/goreleaser-macos-notarize
- be6e2cc Merge pull request #14 from Control-D-Inc/cuonglm/fix-readme-conflicts
- a08b39b Merge pull request #16 from Control-D-Inc/remove-darwin-from-regular-release
- 56d8c10 Remove conflicts marker in README.md
- d73ece9 Remove darwin from regular builds
- e331a41 Rework os resolver
- 340016a Update README.md
- f9d6223 Update README.md Deleted docs/controld_config.md
- 056b76d Update docs/basic_mode.md
- 4c8ea45 Update docs/ephemeral_mode.md, README.md
- a318e19 Workaround quic-go DoQ server issue
- b93970c all: add CLI flags for no config start
- 30fefe7 all: add local caching
- 114ef9a all: add starting service with Control D config
- 851f9b9 all: fork tailscale Linux dns manager package
- ebcc545 all: improving DoH query performance
- 4ea1e64 all: make cache scope to upstream
- f637136 all: satisfy staticcheck
- b03aa39 all: support ipv6 for doh3 upstream bootstrap ip
- a7ae6c9 all: support ipv6 for upstream bootstrap ip
- 5330623 all: uninstall service if got invalid config from API
- 1186963 all: use controld dialer for probing network
- 837563d all: wait for network up before running
- 3014556 cmd/ctrld,internal/controld: do not set bootstrap IP
- b00a7c3 cmd/ctrld: add --iface for setting DNS on specific interface
- ec72af1 cmd/ctrld: add commands to control ctrld as a system service
- e6d77e2 cmd/ctrld: add default value and CLI flag for cache size
- d5344ae cmd/ctrld: add list interfaces command
- 0637203 cmd/ctrld: add more logging details
- 8a2c48e cmd/ctrld: allow log/cache flags work wit --cd flag
- 8e16418 cmd/ctrld: always pass config file on windows start mode
- d830706 cmd/ctrld: always process "--cd" in start mode
- 0e09b45 cmd/ctrld: bump version to v1.1.0
- 065a391 cmd/ctrld: check elevated privilege for service mode
- b021833 cmd/ctrld: correct the write default config condition
- 6edd426 cmd/ctrld: correct write default config condition when start
- 49e9b8b cmd/ctrld: do not change DNS for tailscale0
- 149941f cmd/ctrld: do set/reset DNS only when start/stop/uninstall
- cd37d93 cmd/ctrld: ensure cleaning up done when self-uninstall
- 1c2cd55 cmd/ctrld: ensure ctrld start after NetworkManager
- 3a5c715 cmd/ctrld: ensure viper is re-new in --cd mode
- 14ddb1f cmd/ctrld: ensure writing config message is printed on non-Windows
- 8571580 cmd/ctrld: fatal if failed to get default iface name
- 318fec2 cmd/ctrld: fatal loudly if listen failed
- 7b13fd8 cmd/ctrld: fix mis-handling of start alias
- 44bd580 cmd/ctrld: fix reset DNS when uninstalling
- beca95d cmd/ctrld: fix systemd dependencies config
- 05cfb9b cmd/ctrld: fix typo in Network name
- 1f2bd90 cmd/ctrld: fix wrong stop command alias
- 9fc5464 cmd/ctrld: ignore syscall.EINTR on Linux
- 99b0cbe cmd/ctrld: include DNS in interface list
- 31e4bcb cmd/ctrld: init logging before processing --cd
- b8772d7 cmd/ctrld: log fatal if could not start the listener
- 279e938 cmd/ctrld: make "--cd" always owerwrites the config
- 8c47ffb cmd/ctrld: make NetworkManger ignore auto dns
- dc7d77b cmd/ctrld: only add "--iface" if not changed for start/stop aliases
- c82a0e2 cmd/ctrld: optimizing set/reset DNS
- 87091f2 cmd/ctrld: print writing config file message
- 837d319 cmd/ctrld: rework "verbose" flag
- 326d7a4 cmd/ctrld: rework reset DNS statically vs DHCP
- a9fabd1 cmd/ctrld: separate iface variable for start/stop aliases
- 37de544 cmd/ctrld: silent DHCPv6 error
- d3fe2c7 cmd/ctrld: surpress backoff logging message
- 9f90811 cmd/ctrld: update config when "--cd" present
- eb0dd62 cmd/ctrld: use NetworkManager to disable DNS manager
- 9e7578f cmd/ctrld: use better approach for checking IPv6 available
- b0dc96a cmd/ctrld: use debug level when --log set
- 47c280c cmd/ctrld: use network service on darwin
- d418e57 cmd/ctrld: workaround ipv6 dns resolver on Windows
- 6115645 cmd/ctrld: workaround setting DNS issue on Linux
- 8e91123 cmd/ctrld: write default config to home dir when start
- 46965b0 internal/resolvconffile: add build tag for test file