ysk-server-shared 1.1.22 → 1.1.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser.d.ts +1 -0
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +1 -0
- package/dist/browser.js.map +1 -1
- package/dist/ddns.d.ts +74 -0
- package/dist/ddns.d.ts.map +1 -0
- package/dist/ddns.js +45 -0
- package/dist/ddns.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/route-capabilities.js +1 -1
- package/dist/route-capabilities.js.map +1 -1
- package/locales/ar/dns.json +99 -2
- package/locales/ar/translation.json +103 -3
- package/locales/ar/vpn.json +4 -1
- package/locales/bn/dns.json +99 -2
- package/locales/bn/translation.json +103 -3
- package/locales/bn/vpn.json +4 -1
- package/locales/en/dns.json +97 -0
- package/locales/en/translation.json +100 -0
- package/locales/en/vpn.json +3 -0
- package/locales/es/dns.json +99 -2
- package/locales/es/translation.json +103 -3
- package/locales/es/vpn.json +4 -1
- package/locales/fr/dns.json +99 -2
- package/locales/fr/translation.json +103 -3
- package/locales/fr/vpn.json +4 -1
- package/locales/hi/dns.json +99 -2
- package/locales/hi/translation.json +103 -3
- package/locales/hi/vpn.json +4 -1
- package/locales/id/dns.json +99 -2
- package/locales/id/translation.json +103 -3
- package/locales/id/vpn.json +4 -1
- package/locales/ja/dns.json +99 -2
- package/locales/ja/translation.json +103 -3
- package/locales/ja/vpn.json +4 -1
- package/locales/ko/dns.json +99 -2
- package/locales/ko/translation.json +103 -3
- package/locales/ko/vpn.json +4 -1
- package/locales/pt/dns.json +99 -2
- package/locales/pt/translation.json +103 -3
- package/locales/pt/vpn.json +4 -1
- package/locales/ur/dns.json +99 -2
- package/locales/ur/translation.json +103 -3
- package/locales/ur/vpn.json +4 -1
- package/locales/zh-CN/dns.json +99 -2
- package/locales/zh-CN/translation.json +103 -3
- package/locales/zh-CN/vpn.json +4 -1
- package/locales/zh-HK/dns.json +97 -0
- package/locales/zh-HK/translation.json +100 -0
- package/locales/zh-HK/vpn.json +3 -0
- package/package.json +1 -1
package/locales/bn/dns.json
CHANGED
|
@@ -26,7 +26,8 @@
|
|
|
26
26
|
"cluster": "ক্লাস্টার",
|
|
27
27
|
"dnssec": "DNSSEC",
|
|
28
28
|
"tools": "টুলস",
|
|
29
|
-
"about": "সম্পর্কে"
|
|
29
|
+
"about": "সম্পর্কে",
|
|
30
|
+
"ddns": "DDNS"
|
|
30
31
|
},
|
|
31
32
|
"recentWrite": "সাম্প্রতিক লেখার ফলাফল",
|
|
32
33
|
"zonesTitle": "অঞ্চল ({{count}})",
|
|
@@ -236,5 +237,101 @@
|
|
|
236
237
|
"goStartService": "Start DNS service",
|
|
237
238
|
"startBindHint": "If start returns to stopped, port 53 is often held by systemd-resolved. Use Heal bind below, then start again.",
|
|
238
239
|
"digNotInstalled": "dig is not installed",
|
|
239
|
-
"digNotInstalledHint": "This tab needs the dig binary (bind9-dnsutils). That is not NXDOMAIN. Install bind9-dnsutils from the host package manager; this page does not auto-install it."
|
|
240
|
+
"digNotInstalledHint": "This tab needs the dig binary (bind9-dnsutils). That is not NXDOMAIN. Install bind9-dnsutils from the host package manager; this page does not auto-install it.",
|
|
241
|
+
"aboutDdnsTitle": "DDNS",
|
|
242
|
+
"aboutDdnsBody": "The DDNS tab updates named A/AAAA records when this host’s WAN address changes. It does not replace zone CRUD. Written is not the same as public resolver truth.",
|
|
243
|
+
"ddns": {
|
|
244
|
+
"honesty": "A successful write is not public DNS yet. Resolver caches and registrar NS still apply. Empty or private IPs are never published.",
|
|
245
|
+
"needExecute": "Provider updates need root and YSK_EXECUTE=1. Detection still runs.",
|
|
246
|
+
"lastRun": "Last run",
|
|
247
|
+
"updateNow": "Update now",
|
|
248
|
+
"updateTitle": "Publish detected WAN addresses?",
|
|
249
|
+
"updateDesc": "Calls Cloudflare, nsupdate, or the local zone for each enabled record. Type UPDATE to confirm.",
|
|
250
|
+
"updated": "DDNS update finished",
|
|
251
|
+
"updateFailed": "DDNS update failed",
|
|
252
|
+
"saved": "Saved",
|
|
253
|
+
"saveFailed": "Could not save",
|
|
254
|
+
"deleted": "Record removed",
|
|
255
|
+
"emptyTitle": "No DDNS records",
|
|
256
|
+
"emptyDesc": "Add a hostname below. Cloudflare, RFC 2136, or this host’s PowerDNS zone (managedBy=ddns).",
|
|
257
|
+
"colFqdn": "Hostname",
|
|
258
|
+
"colProvider": "Provider",
|
|
259
|
+
"colPublished": "Published",
|
|
260
|
+
"zone": "Zone",
|
|
261
|
+
"zoneHint": "Leave empty to use the last two labels of the hostname",
|
|
262
|
+
"providerLocal": "Local PowerDNS",
|
|
263
|
+
"proxied": "Cloudflare proxied",
|
|
264
|
+
"proxiedHint": "Orange cloud. Leave off for VPN / WireGuard hostnames.",
|
|
265
|
+
"addRecord": "Add hostname",
|
|
266
|
+
"interval": "Interval (seconds)",
|
|
267
|
+
"intervalHint": "60–86400. In-process scheduler; not crontab.",
|
|
268
|
+
"cfToken": "Cloudflare API token",
|
|
269
|
+
"cfTokenHint": "Write-only. Env CF_API_TOKEN is used if set. Never shown again.",
|
|
270
|
+
"updateIdentity": "Remember WAN IPv4",
|
|
271
|
+
"updateIdentityHint": "Store last public IPv4 in DDNS status for this host",
|
|
272
|
+
"vpnHint": "VPN Endpoint can use a DDNS hostname (not rewritten automatically).",
|
|
273
|
+
"sslHint": "Let’s Encrypt HTTP-01 needs the hostname to resolve here. Certificates are not reissued on IP change.",
|
|
274
|
+
"deleteTitle": "Remove DDNS hostname?",
|
|
275
|
+
"deleteDesc": "Type {{fqdn}} to confirm. Local managedBy=ddns rows are not deleted from the zone editor.",
|
|
276
|
+
"nextRun": "Next run",
|
|
277
|
+
"wanRemembered": "Remembered WAN IPv4",
|
|
278
|
+
"probe": "Probe WAN",
|
|
279
|
+
"probed": "WAN probe finished",
|
|
280
|
+
"probeFailedUi": "WAN probe failed",
|
|
281
|
+
"forceHint": "Update now republishes even when the address is unchanged. Probe never calls a provider.",
|
|
282
|
+
"colEnabled": "State",
|
|
283
|
+
"colFrom": "From",
|
|
284
|
+
"colTo": "To",
|
|
285
|
+
"colWhen": "When",
|
|
286
|
+
"colNote": "Note",
|
|
287
|
+
"pauseRecord": "Pause",
|
|
288
|
+
"resumeRecord": "Resume",
|
|
289
|
+
"statusCard": "WAN status",
|
|
290
|
+
"recordsCard": "Hostnames",
|
|
291
|
+
"addCard": "Add hostname",
|
|
292
|
+
"settingsCard": "Settings",
|
|
293
|
+
"historyTitle": "Recent updates",
|
|
294
|
+
"historyEmpty": "No DDNS history yet",
|
|
295
|
+
"paused": "Scheduler paused",
|
|
296
|
+
"pausedHint": "Scheduled updates are off. Probe and Update now still run.",
|
|
297
|
+
"schedulerOn": "Scheduled updates",
|
|
298
|
+
"schedulerOnHint": "In-process scheduler. Not crontab. Off means no automatic upsert.",
|
|
299
|
+
"zoneSelectHint": "Local zones on this host. Cloudflare and RFC 2136 can use any zone name.",
|
|
300
|
+
"noLocalZones": "No local zones yet. Create one on the Zones tab first if you use Local PowerDNS.",
|
|
301
|
+
"proxiedWarnTitle": "Cloudflare orange cloud?",
|
|
302
|
+
"proxiedWarnDesc": "A proxied record hides the origin IP. VPN and WireGuard hostnames should stay DNS only. Type PROXY to confirm.",
|
|
303
|
+
"tokenConfigured": "A Cloudflare token is stored. Leave blank to keep it.",
|
|
304
|
+
"tokenMissing": "No Cloudflare token stored (env CF_API_TOKEN still applies).",
|
|
305
|
+
"rfcServer": "RFC 2136 server",
|
|
306
|
+
"rfcServerHint": "Remote servers need a TSIG key file under the data directory. Loopback may be unsigned. The secret is never passed on argv.",
|
|
307
|
+
"rfcKeyFile": "TSIG key file",
|
|
308
|
+
"rfcKeyFileHint": "Relative to the DDNS data directory, or an absolute path under the data directory.",
|
|
309
|
+
"rfcKeyConfigured": "A key file path is stored. Leave blank to keep it.",
|
|
310
|
+
"primaryFqdn": "Primary hostname",
|
|
311
|
+
"primaryFqdnHint": "Used as a VPN endpoint hint. Does not rewrite existing peers.",
|
|
312
|
+
"err": {
|
|
313
|
+
"requiresExecute": "Needs root and YSK_EXECUTE=1 to publish.",
|
|
314
|
+
"missingToken": "Cloudflare API token is missing.",
|
|
315
|
+
"rfc2136NeedKey": "Remote RFC 2136 needs a TSIG key file under the data directory.",
|
|
316
|
+
"rfc2136KeyMissing": "TSIG key file is missing or outside the data directory.",
|
|
317
|
+
"noPublicIpv4": "No public IPv4 detected.",
|
|
318
|
+
"noPublicIpv6": "No public IPv6 detected.",
|
|
319
|
+
"notPublicIpv4": "Detected IPv4 is not public.",
|
|
320
|
+
"notPublicIpv6": "Detected IPv6 is not public.",
|
|
321
|
+
"probeFailed": "Public IP probe failed.",
|
|
322
|
+
"localNoZone": "No local DNS zone for this hostname.",
|
|
323
|
+
"localNeedsDb": "Local provider needs the control-plane database.",
|
|
324
|
+
"managedByClash": "That name is owned by another feature (not DDNS).",
|
|
325
|
+
"unknownProvider": "Unknown DDNS provider.",
|
|
326
|
+
"nsupdateFailed": "nsupdate failed.",
|
|
327
|
+
"updateFailed": "Provider update failed.",
|
|
328
|
+
"invalidFqdn": "Invalid hostname.",
|
|
329
|
+
"invalidType": "Type must be A or AAAA.",
|
|
330
|
+
"invalidProvider": "Unknown provider.",
|
|
331
|
+
"notFound": "Record not found.",
|
|
332
|
+
"confirmMismatch": "Confirm must match the hostname.",
|
|
333
|
+
"schedulerDisabled": "Scheduled DDNS is paused.",
|
|
334
|
+
"provider": "Provider returned an error."
|
|
335
|
+
}
|
|
336
|
+
}
|
|
240
337
|
}
|
|
@@ -2978,7 +2978,8 @@
|
|
|
2978
2978
|
"cluster": "ক্লাস্টার",
|
|
2979
2979
|
"dnssec": "DNSSEC",
|
|
2980
2980
|
"tools": "টুলস",
|
|
2981
|
-
"about": "সম্পর্কে"
|
|
2981
|
+
"about": "সম্পর্কে",
|
|
2982
|
+
"ddns": "DDNS"
|
|
2982
2983
|
},
|
|
2983
2984
|
"recentWrite": "সাম্প্রতিক লেখার ফলাফল",
|
|
2984
2985
|
"zonesTitle": "অঞ্চল ({{count}})",
|
|
@@ -3188,7 +3189,103 @@
|
|
|
3188
3189
|
"goStartService": "Start DNS service",
|
|
3189
3190
|
"startBindHint": "If start returns to stopped, port 53 is often held by systemd-resolved. Use Heal bind below, then start again.",
|
|
3190
3191
|
"digNotInstalled": "dig is not installed",
|
|
3191
|
-
"digNotInstalledHint": "This tab needs the dig binary (bind9-dnsutils). That is not NXDOMAIN. Install bind9-dnsutils from the host package manager; this page does not auto-install it."
|
|
3192
|
+
"digNotInstalledHint": "This tab needs the dig binary (bind9-dnsutils). That is not NXDOMAIN. Install bind9-dnsutils from the host package manager; this page does not auto-install it.",
|
|
3193
|
+
"aboutDdnsTitle": "DDNS",
|
|
3194
|
+
"aboutDdnsBody": "The DDNS tab updates named A/AAAA records when this host’s WAN address changes. It does not replace zone CRUD. Written is not the same as public resolver truth.",
|
|
3195
|
+
"ddns": {
|
|
3196
|
+
"honesty": "A successful write is not public DNS yet. Resolver caches and registrar NS still apply. Empty or private IPs are never published.",
|
|
3197
|
+
"needExecute": "Provider updates need root and YSK_EXECUTE=1. Detection still runs.",
|
|
3198
|
+
"lastRun": "Last run",
|
|
3199
|
+
"updateNow": "Update now",
|
|
3200
|
+
"updateTitle": "Publish detected WAN addresses?",
|
|
3201
|
+
"updateDesc": "Calls Cloudflare, nsupdate, or the local zone for each enabled record. Type UPDATE to confirm.",
|
|
3202
|
+
"updated": "DDNS update finished",
|
|
3203
|
+
"updateFailed": "DDNS update failed",
|
|
3204
|
+
"saved": "Saved",
|
|
3205
|
+
"saveFailed": "Could not save",
|
|
3206
|
+
"deleted": "Record removed",
|
|
3207
|
+
"emptyTitle": "No DDNS records",
|
|
3208
|
+
"emptyDesc": "Add a hostname below. Cloudflare, RFC 2136, or this host’s PowerDNS zone (managedBy=ddns).",
|
|
3209
|
+
"colFqdn": "Hostname",
|
|
3210
|
+
"colProvider": "Provider",
|
|
3211
|
+
"colPublished": "Published",
|
|
3212
|
+
"zone": "Zone",
|
|
3213
|
+
"zoneHint": "Leave empty to use the last two labels of the hostname",
|
|
3214
|
+
"providerLocal": "Local PowerDNS",
|
|
3215
|
+
"proxied": "Cloudflare proxied",
|
|
3216
|
+
"proxiedHint": "Orange cloud. Leave off for VPN / WireGuard hostnames.",
|
|
3217
|
+
"addRecord": "Add hostname",
|
|
3218
|
+
"interval": "Interval (seconds)",
|
|
3219
|
+
"intervalHint": "60–86400. In-process scheduler; not crontab.",
|
|
3220
|
+
"cfToken": "Cloudflare API token",
|
|
3221
|
+
"cfTokenHint": "Write-only. Env CF_API_TOKEN is used if set. Never shown again.",
|
|
3222
|
+
"updateIdentity": "Remember WAN IPv4",
|
|
3223
|
+
"updateIdentityHint": "Store last public IPv4 in DDNS status for this host",
|
|
3224
|
+
"vpnHint": "VPN Endpoint can use a DDNS hostname (not rewritten automatically).",
|
|
3225
|
+
"sslHint": "Let’s Encrypt HTTP-01 needs the hostname to resolve here. Certificates are not reissued on IP change.",
|
|
3226
|
+
"deleteTitle": "Remove DDNS hostname?",
|
|
3227
|
+
"deleteDesc": "Type {{fqdn}} to confirm. Local managedBy=ddns rows are not deleted from the zone editor.",
|
|
3228
|
+
"nextRun": "Next run",
|
|
3229
|
+
"wanRemembered": "Remembered WAN IPv4",
|
|
3230
|
+
"probe": "Probe WAN",
|
|
3231
|
+
"probed": "WAN probe finished",
|
|
3232
|
+
"probeFailedUi": "WAN probe failed",
|
|
3233
|
+
"forceHint": "Update now republishes even when the address is unchanged. Probe never calls a provider.",
|
|
3234
|
+
"colEnabled": "State",
|
|
3235
|
+
"colFrom": "From",
|
|
3236
|
+
"colTo": "To",
|
|
3237
|
+
"colWhen": "When",
|
|
3238
|
+
"colNote": "Note",
|
|
3239
|
+
"pauseRecord": "Pause",
|
|
3240
|
+
"resumeRecord": "Resume",
|
|
3241
|
+
"statusCard": "WAN status",
|
|
3242
|
+
"recordsCard": "Hostnames",
|
|
3243
|
+
"addCard": "Add hostname",
|
|
3244
|
+
"settingsCard": "Settings",
|
|
3245
|
+
"historyTitle": "Recent updates",
|
|
3246
|
+
"historyEmpty": "No DDNS history yet",
|
|
3247
|
+
"paused": "Scheduler paused",
|
|
3248
|
+
"pausedHint": "Scheduled updates are off. Probe and Update now still run.",
|
|
3249
|
+
"schedulerOn": "Scheduled updates",
|
|
3250
|
+
"schedulerOnHint": "In-process scheduler. Not crontab. Off means no automatic upsert.",
|
|
3251
|
+
"zoneSelectHint": "Local zones on this host. Cloudflare and RFC 2136 can use any zone name.",
|
|
3252
|
+
"noLocalZones": "No local zones yet. Create one on the Zones tab first if you use Local PowerDNS.",
|
|
3253
|
+
"proxiedWarnTitle": "Cloudflare orange cloud?",
|
|
3254
|
+
"proxiedWarnDesc": "A proxied record hides the origin IP. VPN and WireGuard hostnames should stay DNS only. Type PROXY to confirm.",
|
|
3255
|
+
"tokenConfigured": "A Cloudflare token is stored. Leave blank to keep it.",
|
|
3256
|
+
"tokenMissing": "No Cloudflare token stored (env CF_API_TOKEN still applies).",
|
|
3257
|
+
"rfcServer": "RFC 2136 server",
|
|
3258
|
+
"rfcServerHint": "Remote servers need a TSIG key file under the data directory. Loopback may be unsigned. The secret is never passed on argv.",
|
|
3259
|
+
"rfcKeyFile": "TSIG key file",
|
|
3260
|
+
"rfcKeyFileHint": "Relative to the DDNS data directory, or an absolute path under the data directory.",
|
|
3261
|
+
"rfcKeyConfigured": "A key file path is stored. Leave blank to keep it.",
|
|
3262
|
+
"primaryFqdn": "Primary hostname",
|
|
3263
|
+
"primaryFqdnHint": "Used as a VPN endpoint hint. Does not rewrite existing peers.",
|
|
3264
|
+
"err": {
|
|
3265
|
+
"requiresExecute": "Needs root and YSK_EXECUTE=1 to publish.",
|
|
3266
|
+
"missingToken": "Cloudflare API token is missing.",
|
|
3267
|
+
"rfc2136NeedKey": "Remote RFC 2136 needs a TSIG key file under the data directory.",
|
|
3268
|
+
"rfc2136KeyMissing": "TSIG key file is missing or outside the data directory.",
|
|
3269
|
+
"noPublicIpv4": "No public IPv4 detected.",
|
|
3270
|
+
"noPublicIpv6": "No public IPv6 detected.",
|
|
3271
|
+
"notPublicIpv4": "Detected IPv4 is not public.",
|
|
3272
|
+
"notPublicIpv6": "Detected IPv6 is not public.",
|
|
3273
|
+
"probeFailed": "Public IP probe failed.",
|
|
3274
|
+
"localNoZone": "No local DNS zone for this hostname.",
|
|
3275
|
+
"localNeedsDb": "Local provider needs the control-plane database.",
|
|
3276
|
+
"managedByClash": "That name is owned by another feature (not DDNS).",
|
|
3277
|
+
"unknownProvider": "Unknown DDNS provider.",
|
|
3278
|
+
"nsupdateFailed": "nsupdate failed.",
|
|
3279
|
+
"updateFailed": "Provider update failed.",
|
|
3280
|
+
"invalidFqdn": "Invalid hostname.",
|
|
3281
|
+
"invalidType": "Type must be A or AAAA.",
|
|
3282
|
+
"invalidProvider": "Unknown provider.",
|
|
3283
|
+
"notFound": "Record not found.",
|
|
3284
|
+
"confirmMismatch": "Confirm must match the hostname.",
|
|
3285
|
+
"schedulerDisabled": "Scheduled DDNS is paused.",
|
|
3286
|
+
"provider": "Provider returned an error."
|
|
3287
|
+
}
|
|
3288
|
+
}
|
|
3192
3289
|
},
|
|
3193
3290
|
"docker": {
|
|
3194
3291
|
"title": "Docker",
|
|
@@ -14624,6 +14721,9 @@
|
|
|
14624
14721
|
"portRequired": "Listen port is required.",
|
|
14625
14722
|
"importInvalid": "Could not detect a WireGuard or OpenVPN client conf.",
|
|
14626
14723
|
"qrFailed": "Could not generate a QR code for this config. Download or copy the text instead.",
|
|
14627
|
-
"cfgTitle": "Config — {{name}}"
|
|
14724
|
+
"cfgTitle": "Config — {{name}}",
|
|
14725
|
+
"ddnsFill": "Use DDNS hostname",
|
|
14726
|
+
"ddnsFilled": "Filled endpoint host from DDNS. Peers are unchanged.",
|
|
14727
|
+
"ddnsFillEmpty": "No DDNS primary hostname yet. Add one on the DNS DDNS tab."
|
|
14628
14728
|
}
|
|
14629
14729
|
}
|
package/locales/bn/vpn.json
CHANGED
|
@@ -156,5 +156,8 @@
|
|
|
156
156
|
"portRequired": "Listen port is required.",
|
|
157
157
|
"importInvalid": "Could not detect a WireGuard or OpenVPN client conf.",
|
|
158
158
|
"qrFailed": "Could not generate a QR code for this config. Download or copy the text instead.",
|
|
159
|
-
"cfgTitle": "Config — {{name}}"
|
|
159
|
+
"cfgTitle": "Config — {{name}}",
|
|
160
|
+
"ddnsFill": "Use DDNS hostname",
|
|
161
|
+
"ddnsFilled": "Filled endpoint host from DDNS. Peers are unchanged.",
|
|
162
|
+
"ddnsFillEmpty": "No DDNS primary hostname yet. Add one on the DNS DDNS tab."
|
|
160
163
|
}
|
package/locales/en/dns.json
CHANGED
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
"cluster": "Cluster",
|
|
27
27
|
"dnssec": "DNSSEC",
|
|
28
28
|
"tools": "Tools",
|
|
29
|
+
"ddns": "DDNS",
|
|
29
30
|
"about": "About"
|
|
30
31
|
},
|
|
31
32
|
"recentWrite": "Recent write result",
|
|
@@ -227,6 +228,102 @@
|
|
|
227
228
|
"aboutHealthBody": "Use Tools to probe PowerDNS, heal bind, and open port 53.",
|
|
228
229
|
"aboutStackTitle": "Software",
|
|
229
230
|
"aboutStackBody": "Check/update the PowerDNS package under Software.",
|
|
231
|
+
"aboutDdnsTitle": "DDNS",
|
|
232
|
+
"aboutDdnsBody": "The DDNS tab updates named A/AAAA records when this host’s WAN address changes. It does not replace zone CRUD. Written is not the same as public resolver truth.",
|
|
233
|
+
"ddns": {
|
|
234
|
+
"honesty": "A successful write is not public DNS yet. Resolver caches and registrar NS still apply. Empty or private IPs are never published.",
|
|
235
|
+
"needExecute": "Provider updates need root and YSK_EXECUTE=1. Detection still runs.",
|
|
236
|
+
"lastRun": "Last run",
|
|
237
|
+
"nextRun": "Next run",
|
|
238
|
+
"wanRemembered": "Remembered WAN IPv4",
|
|
239
|
+
"updateNow": "Update now",
|
|
240
|
+
"updateTitle": "Publish detected WAN addresses?",
|
|
241
|
+
"updateDesc": "Calls Cloudflare, nsupdate, or the local zone for each enabled record, even if the address is unchanged. Type UPDATE to confirm.",
|
|
242
|
+
"updated": "DDNS update finished",
|
|
243
|
+
"updateFailed": "DDNS update failed",
|
|
244
|
+
"probe": "Probe WAN",
|
|
245
|
+
"probed": "WAN probe finished",
|
|
246
|
+
"probeFailedUi": "WAN probe failed",
|
|
247
|
+
"forceHint": "Update now republishes even when the address is unchanged. Probe never calls a provider.",
|
|
248
|
+
"saved": "Saved",
|
|
249
|
+
"saveFailed": "Could not save",
|
|
250
|
+
"deleted": "Record removed",
|
|
251
|
+
"emptyTitle": "No DDNS records",
|
|
252
|
+
"emptyDesc": "Add a hostname below. Cloudflare, RFC 2136, or this host’s PowerDNS zone (managedBy=ddns).",
|
|
253
|
+
"colFqdn": "Hostname",
|
|
254
|
+
"colProvider": "Provider",
|
|
255
|
+
"colPublished": "Published",
|
|
256
|
+
"colEnabled": "State",
|
|
257
|
+
"colFrom": "From",
|
|
258
|
+
"colTo": "To",
|
|
259
|
+
"colWhen": "When",
|
|
260
|
+
"colNote": "Note",
|
|
261
|
+
"pauseRecord": "Pause",
|
|
262
|
+
"resumeRecord": "Resume",
|
|
263
|
+
"statusCard": "WAN status",
|
|
264
|
+
"recordsCard": "Hostnames",
|
|
265
|
+
"addCard": "Add hostname",
|
|
266
|
+
"settingsCard": "Settings",
|
|
267
|
+
"historyTitle": "Recent updates",
|
|
268
|
+
"historyEmpty": "No DDNS history yet",
|
|
269
|
+
"paused": "Scheduler paused",
|
|
270
|
+
"pausedHint": "Scheduled updates are off. Probe and Update now still run.",
|
|
271
|
+
"schedulerOn": "Scheduled updates",
|
|
272
|
+
"schedulerOnHint": "In-process scheduler. Not crontab. Off means no automatic upsert.",
|
|
273
|
+
"zone": "Zone",
|
|
274
|
+
"zoneHint": "Leave empty to use the last two labels of the hostname. Local provider should pick a zone that already exists.",
|
|
275
|
+
"zoneSelectHint": "Local zones on this host. Cloudflare and RFC 2136 can use any zone name.",
|
|
276
|
+
"noLocalZones": "No local zones yet. Create one on the Zones tab first if you use Local PowerDNS.",
|
|
277
|
+
"providerLocal": "Local PowerDNS",
|
|
278
|
+
"proxied": "Cloudflare proxied",
|
|
279
|
+
"proxiedHint": "Orange cloud. Leave off for VPN / WireGuard hostnames.",
|
|
280
|
+
"proxiedWarnTitle": "Cloudflare orange cloud?",
|
|
281
|
+
"proxiedWarnDesc": "A proxied record hides the origin IP. VPN and WireGuard hostnames should stay DNS only. Type PROXY to confirm.",
|
|
282
|
+
"addRecord": "Add hostname",
|
|
283
|
+
"interval": "Interval (seconds)",
|
|
284
|
+
"intervalHint": "60–86400. In-process scheduler; not crontab.",
|
|
285
|
+
"cfToken": "Cloudflare API token",
|
|
286
|
+
"cfTokenHint": "Write-only. Env CF_API_TOKEN is used if set. Never shown again.",
|
|
287
|
+
"tokenConfigured": "A Cloudflare token is stored. Leave blank to keep it.",
|
|
288
|
+
"tokenMissing": "No Cloudflare token stored (env CF_API_TOKEN still applies).",
|
|
289
|
+
"rfcServer": "RFC 2136 server",
|
|
290
|
+
"rfcServerHint": "Remote servers need a TSIG key file under the data directory. Loopback may be unsigned. The secret is never passed on argv.",
|
|
291
|
+
"rfcKeyFile": "TSIG key file",
|
|
292
|
+
"rfcKeyFileHint": "Relative to the DDNS data directory, or an absolute path under the data directory.",
|
|
293
|
+
"rfcKeyConfigured": "A key file path is stored. Leave blank to keep it.",
|
|
294
|
+
"primaryFqdn": "Primary hostname",
|
|
295
|
+
"primaryFqdnHint": "Used as a VPN endpoint hint. Does not rewrite existing peers.",
|
|
296
|
+
"updateIdentity": "Remember WAN IPv4",
|
|
297
|
+
"updateIdentityHint": "Store last public IPv4 in DDNS status for this host",
|
|
298
|
+
"vpnHint": "VPN Endpoint can use a DDNS hostname (not rewritten automatically).",
|
|
299
|
+
"sslHint": "Let’s Encrypt HTTP-01 needs the hostname to resolve here. Certificates are not reissued on IP change.",
|
|
300
|
+
"deleteTitle": "Remove DDNS hostname?",
|
|
301
|
+
"deleteDesc": "Type {{fqdn}} to confirm. Local managedBy=ddns rows are not deleted from the zone editor.",
|
|
302
|
+
"err": {
|
|
303
|
+
"requiresExecute": "Needs root and YSK_EXECUTE=1 to publish.",
|
|
304
|
+
"missingToken": "Cloudflare API token is missing.",
|
|
305
|
+
"rfc2136NeedKey": "Remote RFC 2136 needs a TSIG key file under the data directory.",
|
|
306
|
+
"rfc2136KeyMissing": "TSIG key file is missing or outside the data directory.",
|
|
307
|
+
"noPublicIpv4": "No public IPv4 detected.",
|
|
308
|
+
"noPublicIpv6": "No public IPv6 detected.",
|
|
309
|
+
"notPublicIpv4": "Detected IPv4 is not public.",
|
|
310
|
+
"notPublicIpv6": "Detected IPv6 is not public.",
|
|
311
|
+
"probeFailed": "Public IP probe failed.",
|
|
312
|
+
"localNoZone": "No local DNS zone for this hostname.",
|
|
313
|
+
"localNeedsDb": "Local provider needs the control-plane database.",
|
|
314
|
+
"managedByClash": "That name is owned by another feature (not DDNS).",
|
|
315
|
+
"unknownProvider": "Unknown DDNS provider.",
|
|
316
|
+
"nsupdateFailed": "nsupdate failed.",
|
|
317
|
+
"updateFailed": "Provider update failed.",
|
|
318
|
+
"invalidFqdn": "Invalid hostname.",
|
|
319
|
+
"invalidType": "Type must be A or AAAA.",
|
|
320
|
+
"invalidProvider": "Unknown provider.",
|
|
321
|
+
"notFound": "Record not found.",
|
|
322
|
+
"confirmMismatch": "Confirm must match the hostname.",
|
|
323
|
+
"schedulerDisabled": "Scheduled DDNS is paused.",
|
|
324
|
+
"provider": "Provider returned an error."
|
|
325
|
+
}
|
|
326
|
+
},
|
|
230
327
|
"createMailZoneNow": "Created mail zone {{domain}}",
|
|
231
328
|
"toolsFirewallTitle": "Firewall (UFW)",
|
|
232
329
|
"toolsFirewallHint": "Allow or deny port 53. This does not start or stop PowerDNS.",
|
|
@@ -2978,6 +2978,7 @@
|
|
|
2978
2978
|
"cluster": "Cluster",
|
|
2979
2979
|
"dnssec": "DNSSEC",
|
|
2980
2980
|
"tools": "Tools",
|
|
2981
|
+
"ddns": "DDNS",
|
|
2981
2982
|
"about": "About"
|
|
2982
2983
|
},
|
|
2983
2984
|
"recentWrite": "Recent write result",
|
|
@@ -3179,6 +3180,102 @@
|
|
|
3179
3180
|
"aboutHealthBody": "Use Tools to probe PowerDNS, heal bind, and open port 53.",
|
|
3180
3181
|
"aboutStackTitle": "Software",
|
|
3181
3182
|
"aboutStackBody": "Check/update the PowerDNS package under Software.",
|
|
3183
|
+
"aboutDdnsTitle": "DDNS",
|
|
3184
|
+
"aboutDdnsBody": "The DDNS tab updates named A/AAAA records when this host’s WAN address changes. It does not replace zone CRUD. Written is not the same as public resolver truth.",
|
|
3185
|
+
"ddns": {
|
|
3186
|
+
"honesty": "A successful write is not public DNS yet. Resolver caches and registrar NS still apply. Empty or private IPs are never published.",
|
|
3187
|
+
"needExecute": "Provider updates need root and YSK_EXECUTE=1. Detection still runs.",
|
|
3188
|
+
"lastRun": "Last run",
|
|
3189
|
+
"nextRun": "Next run",
|
|
3190
|
+
"wanRemembered": "Remembered WAN IPv4",
|
|
3191
|
+
"updateNow": "Update now",
|
|
3192
|
+
"updateTitle": "Publish detected WAN addresses?",
|
|
3193
|
+
"updateDesc": "Calls Cloudflare, nsupdate, or the local zone for each enabled record, even if the address is unchanged. Type UPDATE to confirm.",
|
|
3194
|
+
"updated": "DDNS update finished",
|
|
3195
|
+
"updateFailed": "DDNS update failed",
|
|
3196
|
+
"probe": "Probe WAN",
|
|
3197
|
+
"probed": "WAN probe finished",
|
|
3198
|
+
"probeFailedUi": "WAN probe failed",
|
|
3199
|
+
"forceHint": "Update now republishes even when the address is unchanged. Probe never calls a provider.",
|
|
3200
|
+
"saved": "Saved",
|
|
3201
|
+
"saveFailed": "Could not save",
|
|
3202
|
+
"deleted": "Record removed",
|
|
3203
|
+
"emptyTitle": "No DDNS records",
|
|
3204
|
+
"emptyDesc": "Add a hostname below. Cloudflare, RFC 2136, or this host’s PowerDNS zone (managedBy=ddns).",
|
|
3205
|
+
"colFqdn": "Hostname",
|
|
3206
|
+
"colProvider": "Provider",
|
|
3207
|
+
"colPublished": "Published",
|
|
3208
|
+
"colEnabled": "State",
|
|
3209
|
+
"colFrom": "From",
|
|
3210
|
+
"colTo": "To",
|
|
3211
|
+
"colWhen": "When",
|
|
3212
|
+
"colNote": "Note",
|
|
3213
|
+
"pauseRecord": "Pause",
|
|
3214
|
+
"resumeRecord": "Resume",
|
|
3215
|
+
"statusCard": "WAN status",
|
|
3216
|
+
"recordsCard": "Hostnames",
|
|
3217
|
+
"addCard": "Add hostname",
|
|
3218
|
+
"settingsCard": "Settings",
|
|
3219
|
+
"historyTitle": "Recent updates",
|
|
3220
|
+
"historyEmpty": "No DDNS history yet",
|
|
3221
|
+
"paused": "Scheduler paused",
|
|
3222
|
+
"pausedHint": "Scheduled updates are off. Probe and Update now still run.",
|
|
3223
|
+
"schedulerOn": "Scheduled updates",
|
|
3224
|
+
"schedulerOnHint": "In-process scheduler. Not crontab. Off means no automatic upsert.",
|
|
3225
|
+
"zone": "Zone",
|
|
3226
|
+
"zoneHint": "Leave empty to use the last two labels of the hostname. Local provider should pick a zone that already exists.",
|
|
3227
|
+
"zoneSelectHint": "Local zones on this host. Cloudflare and RFC 2136 can use any zone name.",
|
|
3228
|
+
"noLocalZones": "No local zones yet. Create one on the Zones tab first if you use Local PowerDNS.",
|
|
3229
|
+
"providerLocal": "Local PowerDNS",
|
|
3230
|
+
"proxied": "Cloudflare proxied",
|
|
3231
|
+
"proxiedHint": "Orange cloud. Leave off for VPN / WireGuard hostnames.",
|
|
3232
|
+
"proxiedWarnTitle": "Cloudflare orange cloud?",
|
|
3233
|
+
"proxiedWarnDesc": "A proxied record hides the origin IP. VPN and WireGuard hostnames should stay DNS only. Type PROXY to confirm.",
|
|
3234
|
+
"addRecord": "Add hostname",
|
|
3235
|
+
"interval": "Interval (seconds)",
|
|
3236
|
+
"intervalHint": "60–86400. In-process scheduler; not crontab.",
|
|
3237
|
+
"cfToken": "Cloudflare API token",
|
|
3238
|
+
"cfTokenHint": "Write-only. Env CF_API_TOKEN is used if set. Never shown again.",
|
|
3239
|
+
"tokenConfigured": "A Cloudflare token is stored. Leave blank to keep it.",
|
|
3240
|
+
"tokenMissing": "No Cloudflare token stored (env CF_API_TOKEN still applies).",
|
|
3241
|
+
"rfcServer": "RFC 2136 server",
|
|
3242
|
+
"rfcServerHint": "Remote servers need a TSIG key file under the data directory. Loopback may be unsigned. The secret is never passed on argv.",
|
|
3243
|
+
"rfcKeyFile": "TSIG key file",
|
|
3244
|
+
"rfcKeyFileHint": "Relative to the DDNS data directory, or an absolute path under the data directory.",
|
|
3245
|
+
"rfcKeyConfigured": "A key file path is stored. Leave blank to keep it.",
|
|
3246
|
+
"primaryFqdn": "Primary hostname",
|
|
3247
|
+
"primaryFqdnHint": "Used as a VPN endpoint hint. Does not rewrite existing peers.",
|
|
3248
|
+
"updateIdentity": "Remember WAN IPv4",
|
|
3249
|
+
"updateIdentityHint": "Store last public IPv4 in DDNS status for this host",
|
|
3250
|
+
"vpnHint": "VPN Endpoint can use a DDNS hostname (not rewritten automatically).",
|
|
3251
|
+
"sslHint": "Let’s Encrypt HTTP-01 needs the hostname to resolve here. Certificates are not reissued on IP change.",
|
|
3252
|
+
"deleteTitle": "Remove DDNS hostname?",
|
|
3253
|
+
"deleteDesc": "Type {{fqdn}} to confirm. Local managedBy=ddns rows are not deleted from the zone editor.",
|
|
3254
|
+
"err": {
|
|
3255
|
+
"requiresExecute": "Needs root and YSK_EXECUTE=1 to publish.",
|
|
3256
|
+
"missingToken": "Cloudflare API token is missing.",
|
|
3257
|
+
"rfc2136NeedKey": "Remote RFC 2136 needs a TSIG key file under the data directory.",
|
|
3258
|
+
"rfc2136KeyMissing": "TSIG key file is missing or outside the data directory.",
|
|
3259
|
+
"noPublicIpv4": "No public IPv4 detected.",
|
|
3260
|
+
"noPublicIpv6": "No public IPv6 detected.",
|
|
3261
|
+
"notPublicIpv4": "Detected IPv4 is not public.",
|
|
3262
|
+
"notPublicIpv6": "Detected IPv6 is not public.",
|
|
3263
|
+
"probeFailed": "Public IP probe failed.",
|
|
3264
|
+
"localNoZone": "No local DNS zone for this hostname.",
|
|
3265
|
+
"localNeedsDb": "Local provider needs the control-plane database.",
|
|
3266
|
+
"managedByClash": "That name is owned by another feature (not DDNS).",
|
|
3267
|
+
"unknownProvider": "Unknown DDNS provider.",
|
|
3268
|
+
"nsupdateFailed": "nsupdate failed.",
|
|
3269
|
+
"updateFailed": "Provider update failed.",
|
|
3270
|
+
"invalidFqdn": "Invalid hostname.",
|
|
3271
|
+
"invalidType": "Type must be A or AAAA.",
|
|
3272
|
+
"invalidProvider": "Unknown provider.",
|
|
3273
|
+
"notFound": "Record not found.",
|
|
3274
|
+
"confirmMismatch": "Confirm must match the hostname.",
|
|
3275
|
+
"schedulerDisabled": "Scheduled DDNS is paused.",
|
|
3276
|
+
"provider": "Provider returned an error."
|
|
3277
|
+
}
|
|
3278
|
+
},
|
|
3182
3279
|
"createMailZoneNow": "Created mail zone {{domain}}",
|
|
3183
3280
|
"toolsFirewallTitle": "Firewall (UFW)",
|
|
3184
3281
|
"toolsFirewallHint": "Allow or deny port 53. This does not start or stop PowerDNS.",
|
|
@@ -14526,6 +14623,9 @@
|
|
|
14526
14623
|
"listenPortTcp": "Listen port (TCP)",
|
|
14527
14624
|
"endpoint": "Public endpoint",
|
|
14528
14625
|
"endpointHint": "Public host:port clients use to connect",
|
|
14626
|
+
"ddnsFill": "Use DDNS hostname",
|
|
14627
|
+
"ddnsFilled": "Filled endpoint host from DDNS. Peers are unchanged.",
|
|
14628
|
+
"ddnsFillEmpty": "No DDNS primary hostname yet. Add one on the DNS DDNS tab.",
|
|
14529
14629
|
"ensureServer": "Apply server",
|
|
14530
14630
|
"openFirewall": "Open {{port}}/{{proto}}",
|
|
14531
14631
|
"presets": "Port presets",
|
package/locales/en/vpn.json
CHANGED
|
@@ -58,6 +58,9 @@
|
|
|
58
58
|
"listenPortTcp": "Listen port (TCP)",
|
|
59
59
|
"endpoint": "Public endpoint",
|
|
60
60
|
"endpointHint": "Public host:port clients use to connect",
|
|
61
|
+
"ddnsFill": "Use DDNS hostname",
|
|
62
|
+
"ddnsFilled": "Filled endpoint host from DDNS. Peers are unchanged.",
|
|
63
|
+
"ddnsFillEmpty": "No DDNS primary hostname yet. Add one on the DNS DDNS tab.",
|
|
61
64
|
"ensureServer": "Apply server",
|
|
62
65
|
"openFirewall": "Open {{port}}/{{proto}}",
|
|
63
66
|
"presets": "Port presets",
|
package/locales/es/dns.json
CHANGED
|
@@ -26,7 +26,8 @@
|
|
|
26
26
|
"cluster": "Grupo",
|
|
27
27
|
"dnssec": "DNSSEC",
|
|
28
28
|
"tools": "Herramientas",
|
|
29
|
-
"about": "Acerca de"
|
|
29
|
+
"about": "Acerca de",
|
|
30
|
+
"ddns": "DDNS"
|
|
30
31
|
},
|
|
31
32
|
"recentWrite": "Resultado de escritura reciente",
|
|
32
33
|
"zonesTitle": "Zonas ({{count}})",
|
|
@@ -236,5 +237,101 @@
|
|
|
236
237
|
"goStartService": "Start DNS service",
|
|
237
238
|
"startBindHint": "If start returns to stopped, port 53 is often held by systemd-resolved. Use Heal bind below, then start again.",
|
|
238
239
|
"digNotInstalled": "dig is not installed",
|
|
239
|
-
"digNotInstalledHint": "This tab needs the dig binary (bind9-dnsutils). That is not NXDOMAIN. Install bind9-dnsutils from the host package manager; this page does not auto-install it."
|
|
240
|
+
"digNotInstalledHint": "This tab needs the dig binary (bind9-dnsutils). That is not NXDOMAIN. Install bind9-dnsutils from the host package manager; this page does not auto-install it.",
|
|
241
|
+
"aboutDdnsTitle": "DDNS",
|
|
242
|
+
"aboutDdnsBody": "The DDNS tab updates named A/AAAA records when this host’s WAN address changes. It does not replace zone CRUD. Written is not the same as public resolver truth.",
|
|
243
|
+
"ddns": {
|
|
244
|
+
"honesty": "A successful write is not public DNS yet. Resolver caches and registrar NS still apply. Empty or private IPs are never published.",
|
|
245
|
+
"needExecute": "Provider updates need root and YSK_EXECUTE=1. Detection still runs.",
|
|
246
|
+
"lastRun": "Last run",
|
|
247
|
+
"updateNow": "Update now",
|
|
248
|
+
"updateTitle": "Publish detected WAN addresses?",
|
|
249
|
+
"updateDesc": "Calls Cloudflare, nsupdate, or the local zone for each enabled record. Type UPDATE to confirm.",
|
|
250
|
+
"updated": "DDNS update finished",
|
|
251
|
+
"updateFailed": "DDNS update failed",
|
|
252
|
+
"saved": "Saved",
|
|
253
|
+
"saveFailed": "Could not save",
|
|
254
|
+
"deleted": "Record removed",
|
|
255
|
+
"emptyTitle": "No DDNS records",
|
|
256
|
+
"emptyDesc": "Add a hostname below. Cloudflare, RFC 2136, or this host’s PowerDNS zone (managedBy=ddns).",
|
|
257
|
+
"colFqdn": "Hostname",
|
|
258
|
+
"colProvider": "Provider",
|
|
259
|
+
"colPublished": "Published",
|
|
260
|
+
"zone": "Zone",
|
|
261
|
+
"zoneHint": "Leave empty to use the last two labels of the hostname",
|
|
262
|
+
"providerLocal": "Local PowerDNS",
|
|
263
|
+
"proxied": "Cloudflare proxied",
|
|
264
|
+
"proxiedHint": "Orange cloud. Leave off for VPN / WireGuard hostnames.",
|
|
265
|
+
"addRecord": "Add hostname",
|
|
266
|
+
"interval": "Interval (seconds)",
|
|
267
|
+
"intervalHint": "60–86400. In-process scheduler; not crontab.",
|
|
268
|
+
"cfToken": "Cloudflare API token",
|
|
269
|
+
"cfTokenHint": "Write-only. Env CF_API_TOKEN is used if set. Never shown again.",
|
|
270
|
+
"updateIdentity": "Remember WAN IPv4",
|
|
271
|
+
"updateIdentityHint": "Store last public IPv4 in DDNS status for this host",
|
|
272
|
+
"vpnHint": "VPN Endpoint can use a DDNS hostname (not rewritten automatically).",
|
|
273
|
+
"sslHint": "Let’s Encrypt HTTP-01 needs the hostname to resolve here. Certificates are not reissued on IP change.",
|
|
274
|
+
"deleteTitle": "Remove DDNS hostname?",
|
|
275
|
+
"deleteDesc": "Type {{fqdn}} to confirm. Local managedBy=ddns rows are not deleted from the zone editor.",
|
|
276
|
+
"nextRun": "Next run",
|
|
277
|
+
"wanRemembered": "Remembered WAN IPv4",
|
|
278
|
+
"probe": "Probe WAN",
|
|
279
|
+
"probed": "WAN probe finished",
|
|
280
|
+
"probeFailedUi": "WAN probe failed",
|
|
281
|
+
"forceHint": "Update now republishes even when the address is unchanged. Probe never calls a provider.",
|
|
282
|
+
"colEnabled": "State",
|
|
283
|
+
"colFrom": "From",
|
|
284
|
+
"colTo": "To",
|
|
285
|
+
"colWhen": "When",
|
|
286
|
+
"colNote": "Note",
|
|
287
|
+
"pauseRecord": "Pause",
|
|
288
|
+
"resumeRecord": "Resume",
|
|
289
|
+
"statusCard": "WAN status",
|
|
290
|
+
"recordsCard": "Hostnames",
|
|
291
|
+
"addCard": "Add hostname",
|
|
292
|
+
"settingsCard": "Settings",
|
|
293
|
+
"historyTitle": "Recent updates",
|
|
294
|
+
"historyEmpty": "No DDNS history yet",
|
|
295
|
+
"paused": "Scheduler paused",
|
|
296
|
+
"pausedHint": "Scheduled updates are off. Probe and Update now still run.",
|
|
297
|
+
"schedulerOn": "Scheduled updates",
|
|
298
|
+
"schedulerOnHint": "In-process scheduler. Not crontab. Off means no automatic upsert.",
|
|
299
|
+
"zoneSelectHint": "Local zones on this host. Cloudflare and RFC 2136 can use any zone name.",
|
|
300
|
+
"noLocalZones": "No local zones yet. Create one on the Zones tab first if you use Local PowerDNS.",
|
|
301
|
+
"proxiedWarnTitle": "Cloudflare orange cloud?",
|
|
302
|
+
"proxiedWarnDesc": "A proxied record hides the origin IP. VPN and WireGuard hostnames should stay DNS only. Type PROXY to confirm.",
|
|
303
|
+
"tokenConfigured": "A Cloudflare token is stored. Leave blank to keep it.",
|
|
304
|
+
"tokenMissing": "No Cloudflare token stored (env CF_API_TOKEN still applies).",
|
|
305
|
+
"rfcServer": "RFC 2136 server",
|
|
306
|
+
"rfcServerHint": "Remote servers need a TSIG key file under the data directory. Loopback may be unsigned. The secret is never passed on argv.",
|
|
307
|
+
"rfcKeyFile": "TSIG key file",
|
|
308
|
+
"rfcKeyFileHint": "Relative to the DDNS data directory, or an absolute path under the data directory.",
|
|
309
|
+
"rfcKeyConfigured": "A key file path is stored. Leave blank to keep it.",
|
|
310
|
+
"primaryFqdn": "Primary hostname",
|
|
311
|
+
"primaryFqdnHint": "Used as a VPN endpoint hint. Does not rewrite existing peers.",
|
|
312
|
+
"err": {
|
|
313
|
+
"requiresExecute": "Needs root and YSK_EXECUTE=1 to publish.",
|
|
314
|
+
"missingToken": "Cloudflare API token is missing.",
|
|
315
|
+
"rfc2136NeedKey": "Remote RFC 2136 needs a TSIG key file under the data directory.",
|
|
316
|
+
"rfc2136KeyMissing": "TSIG key file is missing or outside the data directory.",
|
|
317
|
+
"noPublicIpv4": "No public IPv4 detected.",
|
|
318
|
+
"noPublicIpv6": "No public IPv6 detected.",
|
|
319
|
+
"notPublicIpv4": "Detected IPv4 is not public.",
|
|
320
|
+
"notPublicIpv6": "Detected IPv6 is not public.",
|
|
321
|
+
"probeFailed": "Public IP probe failed.",
|
|
322
|
+
"localNoZone": "No local DNS zone for this hostname.",
|
|
323
|
+
"localNeedsDb": "Local provider needs the control-plane database.",
|
|
324
|
+
"managedByClash": "That name is owned by another feature (not DDNS).",
|
|
325
|
+
"unknownProvider": "Unknown DDNS provider.",
|
|
326
|
+
"nsupdateFailed": "nsupdate failed.",
|
|
327
|
+
"updateFailed": "Provider update failed.",
|
|
328
|
+
"invalidFqdn": "Invalid hostname.",
|
|
329
|
+
"invalidType": "Type must be A or AAAA.",
|
|
330
|
+
"invalidProvider": "Unknown provider.",
|
|
331
|
+
"notFound": "Record not found.",
|
|
332
|
+
"confirmMismatch": "Confirm must match the hostname.",
|
|
333
|
+
"schedulerDisabled": "Scheduled DDNS is paused.",
|
|
334
|
+
"provider": "Provider returned an error."
|
|
335
|
+
}
|
|
336
|
+
}
|
|
240
337
|
}
|