b5248e2d95
fix: handle empty subdomain in EdgeOne ( #1533 ) ( #1538 )
2025-08-21 13:25:51 +08:00
3a3180b882
fix: change RecordId type from string to int64 in TencentCloudRecord ( #1537 )
2025-08-21 11:02:13 +08:00
188ed93235
fix: change RecordId type from int to string in TencentCloudRecord ( #1535 )
2025-08-21 09:51:01 +08:00
6836982e3b
fix: nowcn,eranet,更换接口路径 ( #1520 )
...
* fix: v1接口会收到ip白名单限制,改用v2接口
* remove: 去掉打印测试
---------
Co-authored-by: dsuzejian <dsuzejian@now.cn >
2025-08-01 09:20:44 +08:00
9ad1065a72
feat: 新增EdgeOne 支持 ( #1514 )
2025-07-22 14:35:58 +08:00
2ed9e46214
feat: add Gcore DNS ( #1513 )
...
* feat: add Gcore DNS
2025-07-20 19:53:02 +08:00
55ad21087c
feat: 新增Eranet域名服务商支持 ( #1500 )
...
* fix: 兼容ipv6的设置
* feat: 添加Eranet域名服务商支持
---------
Co-authored-by: dsuzejian <dsuzejian@now.cn >
2025-07-08 16:48:10 +08:00
d6ebbf4ff9
修复火山引擎的两个问题 ( #1497 )
...
* fix(traffic_route): 通过精确获取DNS记录解决找不到历史记录的问题
* fix(traffic_route): IP 未更新时,不要发送 Webhook
* fix(config): 修复日志输出格式,使用占位符输出匹配到的IPv6地址
2025-07-05 09:47:18 +08:00
57d365c5a1
fix(traffic_route): 通过精确获取DNS记录解决找不到历史记录的问题 ( #1496 )
2025-07-03 21:12:29 +08:00
3a708d2e07
feat: 项目新增了对时代互联www.now.cn的官方支持 ( #1492 )
...
* feat: 项目新增了对时代互联www.now.cn的官方支持
* fix: 补充文档说明
* fix: 补充执行过程日志
* refactor: 清理已实现的DNS相关功能中的TODO注释
---------
Co-authored-by: dsuzejian <dsuzejian@now.cn >
2025-06-26 09:05:24 +08:00
5e9736a9c1
feat: 项目新增了对 DNS.LA 的官方支持 ( #1484 )
2025-06-10 14:43:36 +08:00
3756c607c9
refactor(dns/traffic_route): Reconstruct the DNS resolution service of Volcengine ( #1472 )
...
reconstruct the dns resolution service of volcengine.
Signed-off-by: LHSFK <lhsfk@141499.xyz >
2025-05-29 20:45:12 +08:00
20bdfc05e8
feat: 为华为云添加自定义参数支持 ( #1464 )
...
* feat(huaweicloud): 为华为云添加自定义参数支持
2025-05-18 20:06:31 +08:00
3039c77559
support spaceship dns ( #1415 )
...
* support spaceship dns
* don't update unless ip changed
2025-03-09 21:19:58 +08:00
cfdf7759cb
add support for dynv6 ( #1409 )
...
* add support for dynv6
* fix dynv6 log
2025-03-07 11:19:29 +08:00
a0b5474957
fix namesilo only update the first domain ( #1375 )
2025-01-24 09:42:59 +08:00
e99ab31f9a
feat: porkbun endpoint change to 'api.porkbun.com' ( #1275 )
2024-10-12 10:47:06 +08:00
67372c0964
Add volcengine TrafficRoute support ( #1234 )
...
* feat: add volcengine TrafficRoute DNS in web UI
* feat: add volcengine TrafficRoute DNS service logic
* feat: add volcengine TrafficRoute DNS service logic
---------
Co-authored-by: jeessy2 <6205259+jeessy2@users.noreply.github.com >
2024-08-29 05:42:56 -07:00
c23b879405
chore: drop the support of Google Domain ( #1185 )
2024-07-14 05:48:33 -07:00
095b850997
fix(cloudflare): convert DNS record names to Punycode ( #1160 )
...
* fix(cloudflare): convert DNS record names to Punycode
* fix(domain): converts domain name in a copy
In-place editing may have unintended side effects.
* fix(cloudflare): remove unnecessary variable
* fix(domains): do not use Fluent API
2024-06-16 06:44:26 -07:00
7466211d5e
perf(params): use NewReplacer
to replace params ( #1148 )
...
Compared to `ReplaceAll()`, `NewReplacer()` is probably a better choice,
because you only need to maintain a list of old and new string pairs.
2024-06-07 11:01:53 +08:00
354c53f781
chore(dns): log only the root domain if not found in provider ( #1118 )
...
Now, when we list a zone, the logs alone can't determine which parts of the domain are being used as a root domain.
Therefore, if `publicsuffix` provides a wrong root domain, the domain won't be found in the DNS provider even if it exists.
We can solve this by logging only the root domain, since only the root domain is used to list zones; users will also know what's causing it.
2024-05-18 06:58:15 -07:00
4623bb5d3c
refactor: Waiting for network connection when dns exception ( #1057 )
2024-03-26 14:30:35 +08:00
2699a612d7
增加dynadot的ip变化检测和一个请求参数 ( #1055 )
2024-03-25 10:27:39 +08:00
ead4e1d87e
chore: remove unused params and unnecessary nil checks ( #1052 )
...
See:
- https://pkg.go.dev/golang.org/x/tools/gopls/internal/analysis/unusedparams
- https://pkg.go.dev/golang.org/x/tools/go/analysis/passes/nilness
2024-03-22 04:19:49 -07:00
77caa37395
Add support for Dynadot. ( #1050 )
...
* Add support for Dynadot.
* Fix incorrect logging/printing of errors.
2024-03-22 15:41:09 +08:00
997c05eca5
feat(dns): support vercel dns ( #1049 )
...
* feat(dns): support vercel dns
* fix: Add case-insensitive comparison for IP address
* fix(i18n): use correct message key
2024-03-22 10:35:47 +08:00
ae0f47f537
perf: check internet with DNS lookup ( #1034 )
...
DNS lookups are much cheaper than HTTP requests since we only need to check if the Internet is available.
See: https://stackoverflow.com/a/50058255
2024-03-07 05:31:33 -08:00
fe9f437d9b
feat(cloudflare): support comment
param ( #980 )
...
* feat(cloudflare): support `comment` param
* style: apply suggestion
Co-authored-by: WaterLemons2k <62788816+WaterLemons2k@users.noreply.github.com >
* style: Apply suggestions from code review
Co-authored-by: WaterLemons2k <62788816+WaterLemons2k@users.noreply.github.com >
---------
Co-authored-by: WaterLemons2k <62788816+WaterLemons2k@users.noreply.github.com >
2024-01-14 04:29:12 -08:00
1a3cd4e8b4
fix: display the error logs first ( #973 )
2024-01-12 10:59:36 +08:00
7c69aa1bf7
feat: gomod v5 to v6 & upgrade golang to 1.21 ( #969 )
2024-01-11 16:25:14 +08:00
eec98404fe
feat: support english ( #967 )
...
* feat: init the i18n
* fix: porkbun
* refactor: http_util GetHTTPResponse
* fix: save
* fix: add more i18n
* feat: i18n at writing.html
* feat: README EN
* fix: default api
* fix: pic
2024-01-11 15:52:53 +08:00
98756f2124
refactor: set custom DNS server only once ( #821 )
...
* refactor: set custom DNS server only once
Every time an HTTP client is created, an attempt is made to modify the `dialer.Resolver`.
So now it only attempts to change the `dialer.Resolver` once when necessary (e.g. by passing the `-dns` parameter or running the `WaitForNetworkConnected` function).
Also, rename `dns.go` and `dns_test.go` to `net_resolver.go` and `net_resolver_test.go`
---
Move `wait_net.go` to the `internal` package to prevent it from being mistaken as a DNS provider.
Ignore false positive.
* test(net_resolver): clean up after testing
2023-08-17 15:29:19 +08:00
5fa178381f
支持namesilo ( #796 )
...
* 支持namesilo
2023-08-04 19:16:31 +08:00
e009a82a47
fix(GoDaddy): use @
as name when subdomain is missing ( #770 )
2023-07-14 16:21:28 +08:00
4d33865890
fix: set DNS server when err contains loopback server ( #748 )
...
* docs: android needs a custom DNS server
* fix: set DNS server when is Termux
* fix: set DNS server when err contains `[::1]:53`
* docs: indicates that a DNS server wii be sets if err contains loopback server
2023-06-21 17:52:35 +08:00
841031505b
fix(wait_net): use util.CreateHTTPClient
to get URL ( #737 )
2023-06-13 17:21:42 +08:00
8e5ba0a399
feat: no more delay on first run ( #728 )
...
* feat: no more delay on first run
To do this, make sure the service waits for the network to be ready
before starting.
* chore: remove outdated comment
* feat: WaitForNetworkConnected
* feat: use `endPoint` as the domain to test network
2023-06-07 19:02:16 +08:00
6645d78924
feat: support DNSPod API 3.0 ( #713 )
...
* feat: support Tencent Cloud DNSPod API 3.0
https://cloud.tencent.com/document/api/1427/56193
* chore: no longer need `tencentCloudHost`
* chore(TencentCloudSigner): no longer used `fmt`
* perf(TencentCloudSigner): use `strings.Builder` to build strings
https://pkg.go.dev/strings#Builder
2023-05-26 22:36:06 +08:00
7cf96bd9e2
docs(namecheap): IPv6 is not supported ( #692 )
...
* fix(namecheap): IPv6 is not supported
Ref: https://www.namecheap.com/support/knowledgebase/article.aspx/29/11/how-to-dynamically-update-the-hosts-ip-with-an-http-request/
> NOTE: It is only possible to dynamically update IPv4 addresses (A records) at this time. Currently, IPv6 is not supported by our Dynamic DNS.
* chore: typo [skip ci]
2023-04-29 09:27:02 +08:00
962dee0ba4
fix: setting update failed due to an request error ( #629 )
2023-03-14 19:18:28 +08:00
01f5adcecf
fix: reset a single ip cache ( #619 )
2023-03-12 20:17:32 +08:00
0dab67d161
feat: Force compare when update fails ( #617 )
2023-03-12 14:31:58 +08:00
9a159d9b7d
fix: If no change with callback/godaddy/namecheap, don't send webhook ( #616 )
2023-03-12 14:17:52 +08:00
31ce5f0648
新增namecheap支持 ( #454 )
...
* 新增namecheap支持
* feat: supports namecheap
---------
Co-authored-by: 紫东遥 <1160899437@qq.com >
Co-authored-by: jeessy2 <6205259+jeessy2@users.noreply.github.com >
2023-03-12 11:20:04 +08:00
34f0fa30b5
feat: github.com/jeessy2/ddns-go/v5 ( #607 )
2023-03-11 23:07:17 +08:00
ca9808740a
feat: 增加多服务商同时解析功能 ( #598 )
...
* 增加多服务商同时解析功能
* feat: 网页排版优化
* fix: 修改未读取到配置时前端的默认行为
* fix: 网页美化
* fix: 优化配置切换页面
* feat: 优化配置验证
* refactor: 序列化结构体数组,JS优化
* chore: IpCache参数优化,JS微调
* chore: JS变量优化
* feat: 移除保存刷新
* Optimize code
---------
Co-authored-by: jeessy2 <6205259+jeessy2@users.noreply.github.com >
2023-03-11 22:15:25 +08:00
04f0c7e70e
feat: add support for getting IP addr by scripts ( #511 )
...
* feat: add support for getting IP addr by scripts
* fix: remove optional port for request.Host
* fix: correct inet type
* fix: add security requirement for using cmd method
* fix: add security info for using cmd method
* docs: add note about command line method
* fix: only allow to set config within 10 minutes when access via public network
* docs: add suggestion for enabling HTTPS connection
2023-02-02 23:57:44 +08:00
ce524c02c5
fix: godaddy doesn't work well ( #484 )
2023-01-12 19:37:11 +08:00
966d3187c2
fix: 当未设置cloudflare自定义参数, 保留原始proxied值 ( #465 )
2022-12-17 20:22:31 +08:00