mirror of
https://github.com/AdguardTeam/AdGuardHome.git
synced 2024-11-21 20:45:33 +03:00
all: sync more; upd chlog
This commit is contained in:
parent
6fb2aee210
commit
7805a71332
15 changed files with 188 additions and 36 deletions
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
|
@ -1,7 +1,7 @@
|
|||
'name': 'build'
|
||||
|
||||
'env':
|
||||
'GO_VERSION': '1.21.8'
|
||||
'GO_VERSION': '1.22.2'
|
||||
'NODE_VERSION': '16'
|
||||
|
||||
'on':
|
||||
|
|
2
.github/workflows/lint.yml
vendored
2
.github/workflows/lint.yml
vendored
|
@ -1,7 +1,7 @@
|
|||
'name': 'lint'
|
||||
|
||||
'env':
|
||||
'GO_VERSION': '1.21.8'
|
||||
'GO_VERSION': '1.22.2'
|
||||
|
||||
'on':
|
||||
'push':
|
||||
|
|
13
CHANGELOG.md
13
CHANGELOG.md
|
@ -33,7 +33,10 @@ NOTE: Add new changes ABOVE THIS COMMENT.
|
|||
|
||||
See also the [v0.107.47 GitHub milestone][ms-v0.107.47].
|
||||
|
||||
[ms-v0.107.47]: https://github.com/AdguardTeam/AdGuardHome/milestone/82?closed=1
|
||||
### Security
|
||||
|
||||
- Go version has been updated to prevent the possibility of exploiting the Go
|
||||
vulnerabilities fixed in [Go 1.22.2][go-1.22.2].
|
||||
|
||||
### Changed
|
||||
|
||||
|
@ -43,6 +46,7 @@ See also the [v0.107.47 GitHub milestone][ms-v0.107.47].
|
|||
|
||||
### Deprecated
|
||||
|
||||
- Go 1.22 support. Future versions will require at least Go 1.23 to build.
|
||||
- Currently, AdGuard Home uses a best-effort algorithm to fix invalid IDs of
|
||||
filtering-rule lists on startup. This feature is deprecated, and invalid IDs
|
||||
will cause errors on startup in a future version.
|
||||
|
@ -54,11 +58,18 @@ See also the [v0.107.47 GitHub milestone][ms-v0.107.47].
|
|||
- Symbolic links to config YAML are replaced by a copy of the real file by AGH
|
||||
after startup ([#6717]).
|
||||
|
||||
### Removed
|
||||
|
||||
- Go 1.21 support.
|
||||
|
||||
[#5829]: https://github.com/AdguardTeam/AdGuardHome/issues/5829
|
||||
[#6717]: https://github.com/AdguardTeam/AdGuardHome/issues/6717
|
||||
[#6758]: https://github.com/AdguardTeam/AdGuardHome/issues/6758
|
||||
[#6851]: https://github.com/AdguardTeam/AdGuardHome/issues/6851
|
||||
|
||||
[go-1.22.2]: https://groups.google.com/g/golang-announce/c/YgW0sx8mN3M/
|
||||
[ms-v0.107.47]: https://github.com/AdguardTeam/AdGuardHome/milestone/82?closed=1
|
||||
|
||||
|
||||
|
||||
## [v0.107.46] - 2024-03-20
|
||||
|
|
2
Makefile
2
Makefile
|
@ -27,7 +27,7 @@ DIST_DIR = dist
|
|||
GOAMD64 = v1
|
||||
GOPROXY = https://goproxy.cn|https://proxy.golang.org|direct
|
||||
GOSUMDB = sum.golang.google.cn
|
||||
GOTOOLCHAIN = go1.21.8
|
||||
GOTOOLCHAIN = go1.22.2
|
||||
GPG_KEY = devteam@adguard.com
|
||||
GPG_KEY_PASSPHRASE = not-a-real-password
|
||||
NPM = npm
|
||||
|
|
|
@ -205,7 +205,7 @@ Run `make init` to prepare the development environment.
|
|||
|
||||
You will need this to build AdGuard Home:
|
||||
|
||||
- [Go](https://golang.org/dl/) v1.20 or later;
|
||||
- [Go](https://golang.org/dl/) v1.22 or later;
|
||||
- [Node.js](https://nodejs.org/en/download/) v16 or later;
|
||||
- [npm](https://www.npmjs.com/) v8 or later;
|
||||
- [yarn](https://yarnpkg.com/) v1.22.5 or later.
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
'variables':
|
||||
'channel': 'edge'
|
||||
'dockerFrontend': 'adguard/home-js-builder:1.1'
|
||||
'dockerGo': 'adguard/go-builder:1.21.8--1'
|
||||
'dockerGo': 'adguard/go-builder:1.22.2--1'
|
||||
|
||||
'stages':
|
||||
- 'Build frontend':
|
||||
|
@ -266,7 +266,7 @@
|
|||
'variables':
|
||||
'channel': 'beta'
|
||||
'dockerFrontend': 'adguard/home-js-builder:1.1'
|
||||
'dockerGo': 'adguard/go-builder:1.21.8--1'
|
||||
'dockerGo': 'adguard/go-builder:1.22.2--1'
|
||||
# release-vX.Y.Z branches are the branches from which the actual final
|
||||
# release is built.
|
||||
- '^release-v[0-9]+\.[0-9]+\.[0-9]+':
|
||||
|
@ -282,4 +282,4 @@
|
|||
'variables':
|
||||
'channel': 'release'
|
||||
'dockerFrontend': 'adguard/home-js-builder:1.1'
|
||||
'dockerGo': 'adguard/go-builder:1.21.8--1'
|
||||
'dockerGo': 'adguard/go-builder:1.22.2--1'
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
'name': 'AdGuard Home - Build and run tests'
|
||||
'variables':
|
||||
'dockerFrontend': 'adguard/home-js-builder:1.1'
|
||||
'dockerGo': 'adguard/go-builder:1.21.8--1'
|
||||
'dockerGo': 'adguard/go-builder:1.22.2--1'
|
||||
'channel': 'development'
|
||||
|
||||
'stages':
|
||||
|
@ -195,5 +195,5 @@
|
|||
# may need to build a few of these.
|
||||
'variables':
|
||||
'dockerFrontend': 'adguard/home-js-builder:1.1'
|
||||
'dockerGo': 'adguard/go-builder:1.21.8--1'
|
||||
'dockerGo': 'adguard/go-builder:1.22.2--1'
|
||||
'channel': 'candidate'
|
||||
|
|
|
@ -678,7 +678,7 @@
|
|||
"use_saved_key": "Käytä aiemmin tallennettua avainta",
|
||||
"parental_control": "Lapsilukko",
|
||||
"safe_browsing": "Turvallinen selaus",
|
||||
"served_from_cache": "{{value}} <i>(jaettu välimuistista)</i>",
|
||||
"served_from_cache_label": "Toimitettu välimuistista",
|
||||
"form_error_password_length": "Salasanan on oltava {{min}} - {{max}} merkkiä pitkä",
|
||||
"anonymizer_notification": "<0>Huomioi:</0> IP-osoitteen anonymisointi on käytössä. Voit poistaa sen käytöstä <1>Yleisistä asetuksista</1>.",
|
||||
"confirm_dns_cache_clear": "Haluatko varmasti tyhjentää DNS-välimuistin?",
|
||||
|
|
|
@ -117,8 +117,8 @@
|
|||
"refresh_statics": "Segarkan statistik",
|
||||
"dns_query": "Kueri DNS",
|
||||
"blocked_by": "<0>Diblokir oleh</0>",
|
||||
"stats_malware_phishing": "Malware/phishing diblokir",
|
||||
"stats_adult": "Situs dewasa diblokir",
|
||||
"stats_malware_phishing": "Malware/phishing terblokir",
|
||||
"stats_adult": "Situs dewasa terblokir",
|
||||
"stats_query_domain": "Kueri domain teratas",
|
||||
"for_last_hours": "selama {{count}} jam terakhir",
|
||||
"for_last_hours_plural": "selama {{count}} jam terakhir",
|
||||
|
@ -138,9 +138,9 @@
|
|||
"number_of_dns_query_days_plural": "Jumlah kueri DNS yang diproses selama {{count}} hari terakhir",
|
||||
"number_of_dns_query_hours": "Jumlah kueri DNS diproses selama {{{count}} jam terakhir",
|
||||
"number_of_dns_query_hours_plural": "Jumlah kueri DNS diproses selama {{count}} jam terakhir",
|
||||
"number_of_dns_query_blocked_24_hours": "Julah DNS diblokir oleh penyaring adblock dan daftar blokir hosts",
|
||||
"number_of_dns_query_blocked_24_hours_by_sec": "Jumlah perminataan DNS diblokir oleh modul Kemanan Penjelajahan AdGuard",
|
||||
"number_of_dns_query_blocked_24_hours_adult": "Jumlah website dewasa diblokir",
|
||||
"number_of_dns_query_blocked_24_hours": "Jumlah permintaan DNS yang diblokir oleh filter adblock dan daftar hitam host",
|
||||
"number_of_dns_query_blocked_24_hours_by_sec": "Jumlah permintaan DNS yang diblokir oleh modul keamanan penjelajahan AdGuard",
|
||||
"number_of_dns_query_blocked_24_hours_adult": "Jumlah situs web dewasa yang diblokir",
|
||||
"enforced_save_search": "Paksa pencarian aman",
|
||||
"number_of_dns_query_to_safe_search": "Jumlah perminataan DNS ke mesin pencari yang dipaksa Pencarian Aman",
|
||||
"average_processing_time": "Rata-rata waktu pemrosesan",
|
||||
|
@ -148,7 +148,7 @@
|
|||
"response_time": "Waktu respons",
|
||||
"average_processing_time_hint": "Rata-rata waktu dalam milidetik untuk pemrosesan sebuah permintaan DNS",
|
||||
"block_domain_use_filters_and_hosts": "Blokir domain menggunakan filter dan file hosts",
|
||||
"filters_block_toggle_hint": "Anda dapat menyiapkan aturan pemblokiran di pengaturan <a>Penyaringan</a>.",
|
||||
"filters_block_toggle_hint": "Anda dapat menyiapkan aturan pemblokiran dalam pengaturan <a>Filter</a>.",
|
||||
"use_adguard_browsing_sec": "Gunakan layanan web Keamanan Penjelajahan AdGuard",
|
||||
"use_adguard_browsing_sec_hint": "AdGuard Home akan memeriksa apakah domain diblokir oleh layanan web keamanan penjelajahan. Ini akan menggunakan API pencarian yang ramah privasi untuk melakukan pemeriksaan: hanya awalan singkat dari hash nama domain SHA256 yang dikirim ke server.",
|
||||
"use_adguard_parental": "Gunakan layanan web kontrol orang tua AdGuard",
|
||||
|
@ -291,7 +291,7 @@
|
|||
"custom_ip": "Custom IP",
|
||||
"blocking_ipv4": "Blokiran IPv4",
|
||||
"blocking_ipv6": "Blokiran IPv6",
|
||||
"blocked_response_ttl": "Respons TTL yang diblokir",
|
||||
"blocked_response_ttl": "Respons TTL terblokir",
|
||||
"blocked_response_ttl_desc": "Menentukan berapa detik klien harus menyimpan respons yang difilter dalam cache",
|
||||
"form_enter_blocked_response_ttl": "Masukkan TTL respons yang diblokir (detik)",
|
||||
"dnscrypt": "DNSCrypt",
|
||||
|
@ -322,9 +322,9 @@
|
|||
"rate_limit_whitelist": "Daftar pembatasan tarif yang diizinkan",
|
||||
"rate_limit_whitelist_desc": "Alamat IP dikecualikan dari pembatasan tarif",
|
||||
"rate_limit_whitelist_placeholder": "Masukkan satu alamat IP per baris",
|
||||
"blocking_ipv4_desc": "Alamat IP akan dikembalikan untuk permintaan A yang diblokir",
|
||||
"blocking_ipv6_desc": "Alamat IP akan dipulihkan untuk permintaan AAAA yang diblokir",
|
||||
"blocking_mode_default": "Default: Tanggapi dengan alamat IP nol (0.0.0.0 untuk A; :: untuk AAAA) saat diblokir oleh aturan gaya Adblock; tanggapi dengan alamat IP yang ditentukan dalam aturan ketika diblokir oleh aturan gaya host /etc/",
|
||||
"blocking_ipv4_desc": "Alamat IP yang akan dikembalikan untuk permintaan A yang diblokir",
|
||||
"blocking_ipv6_desc": "Alamat IP yang akan dikembalikan untuk permintaan AAAA yang diblokir",
|
||||
"blocking_mode_default": "Standar: Tanggapi dengan alamat IP nol (0.0.0.0 untuk A; :: untuk AAAA) saat diblokir oleh aturan gaya Adblock; tanggapi dengan alamat IP yang ditentukan dalam aturan ketika diblokir oleh aturan /etc/hosts-style",
|
||||
"blocking_mode_refused": "DITOLAK: Respon dengan kode DITOLAK",
|
||||
"blocking_mode_nxdomain": "NXDOMAIN: Respon pakai kode NXDOMAIN",
|
||||
"blocking_mode_null_ip": "Null IP: Respon pakai alamat IP kosong (0.0.0.0 untuk A; :: untuk AAAA)",
|
||||
|
@ -621,8 +621,8 @@
|
|||
"check_not_found": "Tidak di temukan di daftar penyaringan anda",
|
||||
"client_confirm_block": "Apa anda yakin ingin mem-blokir klien ini \"{{ip}}\"?",
|
||||
"client_confirm_unblock": "Apa anda yakin ingin meng-unblock klien ini \"{{ip}}\"?",
|
||||
"client_blocked": "Klien \"{{ip}}\" sukses di blokir",
|
||||
"client_unblocked": "Klien \"{{ip}}\" sukses di unblock",
|
||||
"client_blocked": "Klien \"{{ip}}\" berhasil diblokir",
|
||||
"client_unblocked": "Klien \"{{ip}}\" berhasil membuka blokir",
|
||||
"static_ip": "Alamat IP statis",
|
||||
"static_ip_desc": "AdGuard Home adalah server jadi perlu alamat IP statis agar berfungsi dengan benar. Jika tidak, pada titik tertentu, router Anda dapat menetapkan alamat IP yang berbeda untuk perangkat ini.",
|
||||
"set_static_ip": "Atur alamat IP statik",
|
||||
|
@ -640,8 +640,8 @@
|
|||
"show_whitelisted_responses": "Dalam Daftar Putih",
|
||||
"show_processed_responses": "Terproses",
|
||||
"blocked_safebrowsing": "Diblokir oleh Penjelajahan Aman",
|
||||
"blocked_adult_websites": "Diblok oleh Kontrol Orang tua",
|
||||
"blocked_threats": "Blokir Ancaman",
|
||||
"blocked_adult_websites": "Diblokir oleh Kontrol Orang Tua",
|
||||
"blocked_threats": "Ancaman terblokir",
|
||||
"allowed": "Dibolehkan",
|
||||
"filtered": "Tersaring",
|
||||
"rewritten": "Tulis ulang",
|
||||
|
|
|
@ -678,7 +678,7 @@
|
|||
"use_saved_key": "Użyj wcześniej zapisanego klucza",
|
||||
"parental_control": "Kontrola rodzicielska",
|
||||
"safe_browsing": "Bezpieczne przeglądanie",
|
||||
"served_from_cache": "{{value}} <i>(podawane z pamięci podręcznej)</i>",
|
||||
"served_from_cache_label": "Podano z pamięci podręcznej",
|
||||
"form_error_password_length": "Hasło musi zawierać od {{min}} do {{max}} znaków",
|
||||
"anonymizer_notification": "<0>Uwaga:</0> Anonimizacja IP jest włączona. Możesz ją wyłączyć w <1>Ustawieniach ogólnych</1>.",
|
||||
"confirm_dns_cache_clear": "Czy na pewno chcesz wyczyścić pamięć podręczną DNS?",
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
"client_settings": "用戶端設定",
|
||||
"example_upstream_reserved": "您可以<0>指定網域</0>使用特定 DNS 查詢",
|
||||
"example_multiple_upstreams_reserved": "多個上游 <0>for 特定網域</0>;",
|
||||
"example_upstream_comment": "您可以指定註解",
|
||||
"upstream_parallel": "使用平行查詢,同時查詢所有上游伺服器來加速解析結果",
|
||||
"parallel_requests": "平行處理",
|
||||
|
@ -8,6 +9,9 @@
|
|||
"load_balancing_desc": "一次只查詢一個伺服器。AdGuard Home 會使用加權隨機取樣來選擇使用的查詢結果,以確保速度最快的伺服器能被充分運用。",
|
||||
"bootstrap_dns": "引導(Boostrap) DNS 伺服器",
|
||||
"bootstrap_dns_desc": "Bootstrap DNS 伺服器用於解析您所設定的上游 DoH/DoT 解析器的 IP 地址",
|
||||
"fallback_dns_title": "備用 DNS 伺服器",
|
||||
"fallback_dns_desc": "備用 DNS 伺服器列表:於主要 DNS 伺服器沒有回應時使用。語法與主要 DNS 伺服器設定欄位相同。",
|
||||
"fallback_dns_placeholder": "每行輸入一個備用 DNS 伺服器",
|
||||
"local_ptr_title": "私人 DNS 伺服器",
|
||||
"local_ptr_desc": "AdGuard Home 用於區域 PTR 查詢的 DNS 伺服器。這些伺服器將用於解析具有私人 IP 位址的用戶端的主機名稱,例如 \"192.168.12.34\",使用 rDNS。如果沒有設定,AdGuard Home 將自動使用您的系統預設 DNS 解析。",
|
||||
"local_ptr_default_resolver": "AdGuard Home 預設使用以下作為 DNS 反解器:{{ip}}",
|
||||
|
@ -37,17 +41,19 @@
|
|||
"dhcp_ipv6_settings": "DHCP IPv6 設定",
|
||||
"form_error_required": "必要欄位",
|
||||
"form_error_ip4_format": "無效的 IPv4 格式",
|
||||
"form_error_ip6_format": "無效的 IPv6 格式",
|
||||
"form_error_ip4_gateway_format": "閘道的 IPv4 位址無效",
|
||||
"form_error_ip_format": "無效的 IP 位址",
|
||||
"form_error_ip6_format": "無效的 IPv6 格式",
|
||||
"form_error_ip_format": "無效的 IP 格式",
|
||||
"form_error_mac_format": "無效的 「MAC 位址」格式",
|
||||
"form_error_client_id_format": "無效的「客戶端 ID」格式",
|
||||
"form_error_server_name": "無效伺服器名稱",
|
||||
"form_error_subnet": "子網路 \"{{cidr}}\" 不包含 IP 位址 \"{{ip}}\"",
|
||||
"form_error_positive": "數值必須大於 0",
|
||||
"form_error_gateway_ip": "租約不能使用閘道器的 IP 位址",
|
||||
"out_of_range_error": "必須介於 \"{{start}}\" - \"{{end}}\" 範圍之外",
|
||||
"lower_range_start_error": "必須小於起始值",
|
||||
"greater_range_start_error": "必須大於起始值",
|
||||
"subnet_error": "地址必須在同一個子網路中",
|
||||
"gateway_or_subnet_invalid": "無效子網路",
|
||||
"dhcp_form_gateway_input": "閘道 IP 位址",
|
||||
"dhcp_form_subnet_input": "子網路遮罩",
|
||||
|
@ -68,7 +74,9 @@
|
|||
"dhcp_dynamic_ip_found": "您的網路介面 <0>{{interfaceName}}</0> 正在使用動態 IP,要使用 DHCP 伺服器必須指定靜態 IP 給 AdGuard。\n目前您的 IP 位址 <0>{{ipAddress}}</0>,啟用 DHCP 後此 IP 將自動設定為靜態 IP 位址。",
|
||||
"dhcp_lease_added": "靜態租用 \"{{key}}\" 已新增成功",
|
||||
"dhcp_lease_deleted": "靜態租用 \"{{key}}\" 已刪除成功",
|
||||
"dhcp_lease_updated": "靜態租約 \"{{key}}\" 已成功更新",
|
||||
"dhcp_new_static_lease": "新增靜態租用",
|
||||
"dhcp_edit_static_lease": "編輯靜態租約",
|
||||
"dhcp_static_leases_not_found": "找不到 DHCP 靜態租用",
|
||||
"dhcp_add_static_lease": "新增靜態租用",
|
||||
"dhcp_reset_leases": "重置所有 DHCP 租約",
|
||||
|
@ -112,7 +120,8 @@
|
|||
"stats_malware_phishing": "已封鎖惡意軟體/網路釣魚",
|
||||
"stats_adult": "已封鎖成人網站",
|
||||
"stats_query_domain": "熱門查詢網域排行",
|
||||
"for_last_24_hours": "過去 24 小時",
|
||||
"for_last_hours": "在過去 {{count}} 小時",
|
||||
"for_last_hours_plural": "在過去 {{count}} 小時裡",
|
||||
"for_last_days": "最近 {{count}} 天內",
|
||||
"for_last_days_plural": "最近 {{count}} 天內",
|
||||
"stats_disabled": "已禁用統計資料。您可以從<0>設定頁面</0>打開它。",
|
||||
|
@ -123,15 +132,20 @@
|
|||
"top_clients": "熱門用戶端排行",
|
||||
"no_clients_found": "找不到用戶端",
|
||||
"general_statistics": "一般統計資料",
|
||||
"top_upstreams": "熱門上游伺服器",
|
||||
"no_upstreams_data_found": "找不到上游數據",
|
||||
"number_of_dns_query_days": "過去 {{count}} 天內 DNS 查詢總數",
|
||||
"number_of_dns_query_days_plural": "過去 {{count}} 天內 DNS 查詢總數",
|
||||
"number_of_dns_query_24_hours": "過去 24小時內 DNS 查詢總數",
|
||||
"number_of_dns_query_hours": "過去 {{count}} 小時處理的 DNS 查詢數量",
|
||||
"number_of_dns_query_hours_plural": "過去 {{count}} 小時處理的 DNS 查詢數量",
|
||||
"number_of_dns_query_blocked_24_hours": "已被廣告過濾器與主機黑名單封鎖 DNS 查詢總數",
|
||||
"number_of_dns_query_blocked_24_hours_by_sec": "已被 AdGuard 瀏覽安全模組封鎖的 DNS 查詢總數",
|
||||
"number_of_dns_query_blocked_24_hours_adult": "已封鎖成人網站總數",
|
||||
"enforced_save_search": "強制使用安全搜尋",
|
||||
"number_of_dns_query_to_safe_search": "已強制使用安全搜尋總數",
|
||||
"average_processing_time": "平均的處理時間",
|
||||
"average_upstream_response_time": "平均上游伺服器回應時間",
|
||||
"response_time": "回應時間",
|
||||
"average_processing_time_hint": "處理 DNS 請求的平均時間(毫秒)",
|
||||
"block_domain_use_filters_and_hosts": "使用過濾器與 hosts 檔案阻擋網域查詢",
|
||||
"filters_block_toggle_hint": "您可在<a>過濾器</a>設定中設定封鎖規則。",
|
||||
|
@ -156,6 +170,7 @@
|
|||
"upstream_dns_configured_in_file": "設定在 {{path}}",
|
||||
"test_upstream_btn": "測試上游 DNS",
|
||||
"upstreams": "上游",
|
||||
"upstream": "上游伺服器",
|
||||
"apply_btn": "套用",
|
||||
"disabled_filtering_toast": "已停用過濾",
|
||||
"enabled_filtering_toast": "已啟用過濾",
|
||||
|
@ -164,6 +179,7 @@
|
|||
"disabled_parental_toast": "已停用家長監護",
|
||||
"enabled_parental_toast": "已啟用家長監護",
|
||||
"disabled_safe_search_toast": "已停用安全搜尋",
|
||||
"enabled_save_search_toast": "已啟用安全搜尋",
|
||||
"updated_save_search_toast": "已更新安全搜尋設定",
|
||||
"enabled_table_header": "啟用",
|
||||
"name_table_header": "名稱",
|
||||
|
@ -206,24 +222,29 @@
|
|||
"example_comment_hash": "# Also a comment",
|
||||
"example_regex_meaning": "使用正規表示式(Regular Expression)來阻止對應的網域查詢",
|
||||
"example_upstream_regular": "一般 DNS(透過 UDP)",
|
||||
"example_upstream_regular_port": "一般 DNS(透過 UDP,連接埠)",
|
||||
"example_upstream_udp": "一般 DNS(透過 UDP,主機名稱)",
|
||||
"example_upstream_dot": "<0>DNS-over-TLS</0>(流量加密)",
|
||||
"example_upstream_doh": "<0>DNS-over-HTTPS</0>(流量加密)",
|
||||
"example_upstream_doh3": "使 DNS-over-HTTPS 強制使用 <0>HTTP/3</0> ,並禁止使用後備 HTTP/2 或更低版本;",
|
||||
"example_upstream_doq": "加密 <0>DNS-over-QUIC</0>",
|
||||
"example_upstream_sdns": "您可以使透過 <0>DNS Stamps</0> 來解析 <1>DNSCrypt</1> 或 <2>DNS-over-HTTPS</2>",
|
||||
"example_upstream_tcp": "一般 DNS(透過 TCP)",
|
||||
"example_upstream_regular_port": "一般 DNS(透過 UDP,連接埠)",
|
||||
"example_upstream_udp": "一般 DNS(透過 UDP,主機名稱)",
|
||||
"example_upstream_tcp_port": "一般 DNS(透過 TCP,連接埠)",
|
||||
"example_upstream_tcp_hostname": "一般 DNS(透過 TCP,主機名稱)",
|
||||
"all_lists_up_to_date_toast": "所有清單已更新至最新",
|
||||
"updated_upstream_dns_toast": "已更新上游 DNS 伺服器",
|
||||
"dns_test_ok_toast": "設定中的 DNS 上游運作正常",
|
||||
"dns_test_not_ok_toast": "DNS 設定中的 \"{{key}}\" 出現錯誤,請確認是否正確輸入",
|
||||
"dns_test_parsing_error_toast": "在 {{section}} 部分中:第 {{line}} 行:無法使用,請檢查您是否有正確地填寫",
|
||||
"dns_test_warning_toast": "上游伺服器 \"{{key}}\" 沒有回應測試請求,可能無法正常運作",
|
||||
"unblock": "解除封鎖",
|
||||
"block": "封鎖",
|
||||
"disallow_this_client": "不允許此用戶端",
|
||||
"allow_this_client": "允許此用戶端",
|
||||
"block_for_this_client_only": "僅封鎖此用戶端",
|
||||
"unblock_for_this_client_only": "僅解除封鎖此用戶端",
|
||||
"add_persistent_client": "加入到用戶端",
|
||||
"time_table_header": "時間",
|
||||
"date": "日期",
|
||||
"domain_name_table_header": "域名",
|
||||
|
@ -270,6 +291,9 @@
|
|||
"custom_ip": "自訂 IP 位址",
|
||||
"blocking_ipv4": "封鎖 IPv4",
|
||||
"blocking_ipv6": "封鎖 IPv6",
|
||||
"blocked_response_ttl": "阻塞響應 TTL",
|
||||
"blocked_response_ttl_desc": "指定客戶端應快取過濾回應的秒數",
|
||||
"form_enter_blocked_response_ttl": "輸入已封鎖的回應 TTL(秒)",
|
||||
"dnscrypt": "DNSCrypt",
|
||||
"dns_over_https": "DNS-over-HTTPS",
|
||||
"dns_over_tls": "DNS-over-TLS",
|
||||
|
@ -288,6 +312,16 @@
|
|||
"edns_use_custom_ip": "使用自訂 EDNS IP",
|
||||
"edns_use_custom_ip_desc": "允許使用自訂 EDNS IP",
|
||||
"rate_limit_desc": "限制單一裝置每秒發出的查詢次數(設定為 0 即表示無限制)",
|
||||
"rate_limit_subnet_len_ipv4": "IPv4 位址的子網路前綴長度",
|
||||
"rate_limit_subnet_len_ipv4_desc": "用於速率限制的 IPv4 位址的子網路前綴長度。 預設為 24",
|
||||
"rate_limit_subnet_len_ipv4_error": "IPv4 子網路前綴長度應介於 0 到 32 之間",
|
||||
"rate_limit_subnet_len_ipv6": "IPv6 位址的子網路前綴長度",
|
||||
"rate_limit_subnet_len_ipv6_desc": "用於速率限制的 IPv6 位址的子網路前綴長度。 預設為 56",
|
||||
"rate_limit_subnet_len_ipv6_error": "IPv6 子網路前綴長度應介於 0 到 128 之間",
|
||||
"form_enter_rate_limit_subnet_len": "輸入速率限制的子網路前綴長度",
|
||||
"rate_limit_whitelist": "速率限制白名單",
|
||||
"rate_limit_whitelist_desc": "排除在速率限制之外的 IP 位址",
|
||||
"rate_limit_whitelist_placeholder": "每行輸入一個 IP 地址",
|
||||
"blocking_ipv4_desc": "回覆指定 IPv4 位址給被封鎖的網域的 A 紀錄查詢",
|
||||
"blocking_ipv6_desc": "回覆指定 IPv6 位址給被封鎖的網域的 AAAA 紀錄查詢",
|
||||
"blocking_mode_default": "預設:被 Adblock 規則封鎖時回應零值的 IP 位址(A 紀錄回應 0.0.0.0 ,AAAA 紀錄回應 ::);被 /etc/hosts 規則封鎖時回應規則中指定 IP 位址",
|
||||
|
@ -391,6 +425,9 @@
|
|||
"encryption_hostnames": "主機名稱",
|
||||
"encryption_reset": "您確定要重設加密設定嗎?",
|
||||
"encryption_warning": "警告",
|
||||
"encryption_plain_dns_enable": "啟用一般 DNS",
|
||||
"encryption_plain_dns_desc": "預設情況下已啟用一般 DNS。您可以將其停用以強制所有裝置使用加密 DNS。要執行此操作,您必須啟用至少一個加密的 DNS 協定。",
|
||||
"encryption_plain_dns_error": "若要停用一般 DNS,請啟用至少一個加密的 DNS 協定",
|
||||
"topline_expiring_certificate": "您的 SSL 憑證即將到期。請前往<0>加密設定</0>更新。",
|
||||
"topline_expired_certificate": "您的 SSL 憑證已到期。請前往<0>加密設定</0>更新。",
|
||||
"form_error_port_range": "輸入範圍 80-65535 中的值",
|
||||
|
@ -430,6 +467,7 @@
|
|||
"form_add_id": "新增識別碼",
|
||||
"form_client_name": "輸入用戶端名稱",
|
||||
"name": "名稱",
|
||||
"client_name": "客戶端 {{id}}",
|
||||
"client_global_settings": "使用全域設定",
|
||||
"client_deleted": "已刪除「{{key}}」",
|
||||
"client_added": "已新增「{{key}}」",
|
||||
|
@ -451,6 +489,7 @@
|
|||
"updates_checked": "檢查更新成功",
|
||||
"updates_version_equal": "AdGuard Home 是最新的版本",
|
||||
"check_updates_now": "立即檢查更新",
|
||||
"version_request_error": "更新檢查失敗。請檢查您的網絡連線。",
|
||||
"dns_privacy": "DNS 隱私",
|
||||
"setup_dns_privacy_1": "<0>DNS-over-TLS:</0>使用 <1>{{address}}</1>。",
|
||||
"setup_dns_privacy_2": "<0>DNS-over-HTTPS:</0>使用 <1>{{address}}</1>。",
|
||||
|
@ -471,6 +510,7 @@
|
|||
"setup_dns_notice": "要使用 <1>DNS-over-HTTPS</1> 或 <1>DNS-over-TLS</1>,您必須先在 AdGuard Home 完成 <0>加密設定</0>。",
|
||||
"rewrite_added": "「{{key}}」的 DNS 覆寫新增成功",
|
||||
"rewrite_deleted": "「{{key}}」的 DNS 覆寫刪除成功",
|
||||
"rewrite_updated": "已更新 DNS 覆寫",
|
||||
"rewrite_add": "新增 DNS 覆寫",
|
||||
"rewrite_edit": "編輯 DNS 覆寫",
|
||||
"rewrite_not_found": "找不到 DNS 覆寫",
|
||||
|
@ -522,6 +562,8 @@
|
|||
"statistics_enable": "啟用統計數據",
|
||||
"ignore_domains": "已忽略網域(每行一個)",
|
||||
"ignore_domains_title": "已忽略網域",
|
||||
"ignore_domains_desc_stats": "符合這些規則的查詢不會被計入統計資料中",
|
||||
"ignore_domains_desc_query": "符合這些規則的查詢不會被寫入查詢記錄中",
|
||||
"interval_hours": "{{count}} 小時",
|
||||
"interval_hours_plural": "{{count}} 小時",
|
||||
"filters_configuration": "過濾器設定",
|
||||
|
@ -631,10 +673,19 @@
|
|||
"click_to_view_queries": "按一下以檢視查詢結果",
|
||||
"port_53_faq_link": "連接埠 53 經常被「DNSStubListener」或「systemd-resolved」服務佔用。請閱讀下列有關解決<0>這個問題</0>的說明",
|
||||
"adg_will_drop_dns_queries": "AdGuard Home 將停止回應此用戶端的所有 DNS 查詢。",
|
||||
"filter_allowlist": "警告:此操作同時會將規則 \"{{disallowed_rule}}\" 從允許的客戶端清單中排除。",
|
||||
"last_rule_in_allowlist": "無法停用此客戶端,因為排除規則「{{disallowed_rule}}」會導致「允許的用戶端」清單停用。",
|
||||
"use_saved_key": "使用先前儲存的鍵",
|
||||
"parental_control": "家長監護",
|
||||
"safe_browsing": "安全瀏覽",
|
||||
"served_from_cache": "{{value}} <i>(由快取回應)</i>",
|
||||
"served_from_cache_label": "由快取回應",
|
||||
"form_error_password_length": "密碼必須至少 {{value}} 個字元長度",
|
||||
"anonymizer_notification": "<0>注意</0>: 已啟用 IP 去識別化。您可以在<1>一般設定</1>中停用它。",
|
||||
"confirm_dns_cache_clear": "您確定要清除 DNS 快取嗎?",
|
||||
"cache_cleared": "DNS 快取成功清除",
|
||||
"clear_cache": "清除快取",
|
||||
"make_static": "新增為靜態",
|
||||
"theme_auto_desc": "自動(根據裝置調整)",
|
||||
"theme_dark_desc": "深色主題",
|
||||
"theme_light_desc": "淺色主題",
|
||||
"disable_for_seconds": "{{count}} 秒",
|
||||
|
@ -649,11 +700,48 @@
|
|||
"disable_notify_for_minutes": "暫停防護 {{count}} 分鐘",
|
||||
"disable_notify_for_minutes_plural": "暫停防護 {{count}} 分鐘",
|
||||
"disable_notify_for_hours": "暫停防護 {{count}} 小時",
|
||||
"disable_notify_for_hours_plural": "停用保護 {{count}} 小時",
|
||||
"disable_notify_until_tomorrow": "停用保護直至明天",
|
||||
"enable_protection_timer": "保護功能將在 {{time}} 啟用",
|
||||
"custom_retention_input": "輸入保存時長(單位:小時)",
|
||||
"custom_rotation_input": "請輸入輪替週期(單位:小時)",
|
||||
"protection_section_label": "保護",
|
||||
"log_and_stats_section_label": "查詢日誌與統計資料",
|
||||
"ignore_query_log": "在查詢日誌中忽略此客戶端",
|
||||
"ignore_statistics": "在統計資料中忽略此客戶端",
|
||||
"schedule_services": "暫停服務封鎖",
|
||||
"schedule_services_desc": "設定服務封鎖過濾器的暫停排程",
|
||||
"schedule_services_desc_client": "針對此用戶端,設定服務阻擋的暫停排程",
|
||||
"schedule_desc": "設定已封鎖服務的閒置時段",
|
||||
"schedule_invalid_select": "開始時間必須在結束時間之前",
|
||||
"schedule_select_days": "選擇天數",
|
||||
"schedule_timezone": "選擇時區",
|
||||
"schedule_current_timezone": "目前時區:{{value}}",
|
||||
"schedule_time_all_day": "全天",
|
||||
"schedule_modal_description": "這個排程將會取代同一星期中所有現有的排程。每一天只能有一個閒置時段。",
|
||||
"schedule_modal_time_off": "沒有封鎖服務:",
|
||||
"schedule_new": "新排程",
|
||||
"schedule_edit": "編輯排程",
|
||||
"schedule_save": "儲存排程",
|
||||
"schedule_add": "新增排程",
|
||||
"schedule_remove": "移除排程",
|
||||
"schedule_from": "從",
|
||||
"schedule_to": "至",
|
||||
"sunday": "星期日",
|
||||
"monday": "星期一",
|
||||
"tuesday": "星期二",
|
||||
"wednesday": "星期三",
|
||||
"thursday": "星期四",
|
||||
"friday": "星期五",
|
||||
"saturday": "星期六",
|
||||
"sunday_short": "週日",
|
||||
"monday_short": "週一",
|
||||
"tuesday_short": "週二",
|
||||
"wednesday_short": "週三",
|
||||
"thursday_short": "週四",
|
||||
"friday_short": "週五",
|
||||
"saturday_short": "週六"
|
||||
"saturday_short": "週六",
|
||||
"upstream_dns_cache_configuration": "上游 DNS 快取設定",
|
||||
"enable_upstream_dns_cache": "為此客戶端的自訂上游設定啟用 DNS 快取",
|
||||
"dns_cache_size": "DNS 快取大小(bytes)"
|
||||
}
|
||||
|
|
|
@ -190,6 +190,12 @@ export default {
|
|||
"homepage": "https://github.com/hagezi/dns-blocklists#piracy",
|
||||
"source": "https://adguardteam.github.io/HostlistsRegistry/assets/filter_46.txt"
|
||||
},
|
||||
"hagezi_badware_hoster_blocklist": {
|
||||
"name": "HaGeZi's Badware Hoster Blocklist",
|
||||
"categoryId": "security",
|
||||
"homepage": "https://github.com/hagezi/dns-blocklists",
|
||||
"source": "https://adguardteam.github.io/HostlistsRegistry/assets/filter_55.txt"
|
||||
},
|
||||
"hagezi_dyndns_blocklist": {
|
||||
"name": "HaGeZi's DynDNS Blocklist",
|
||||
"categoryId": "security",
|
||||
|
@ -226,6 +232,12 @@ export default {
|
|||
"homepage": "https://github.com/hagezi/dns-blocklists",
|
||||
"source": "https://adguardteam.github.io/HostlistsRegistry/assets/filter_51.txt"
|
||||
},
|
||||
"hagezi_the_worlds_most_abused_tlds": {
|
||||
"name": "HaGeZi's The World's Most Abused TLDs",
|
||||
"categoryId": "security",
|
||||
"homepage": "https://github.com/hagezi/dns-blocklists",
|
||||
"source": "https://adguardteam.github.io/HostlistsRegistry/assets/filter_56.txt"
|
||||
},
|
||||
"hagezi_threat_intelligence_feeds": {
|
||||
"name": "HaGeZi's Threat Intelligence Feeds",
|
||||
"categoryId": "security",
|
||||
|
|
2
go.mod
2
go.mod
|
@ -1,6 +1,6 @@
|
|||
module github.com/AdguardTeam/AdGuardHome
|
||||
|
||||
go 1.21.8
|
||||
go 1.22.2
|
||||
|
||||
require (
|
||||
github.com/AdguardTeam/dnsproxy v0.67.0
|
||||
|
|
|
@ -483,6 +483,16 @@ var blockedServices = []blockedService{{
|
|||
"||bsky.app^",
|
||||
"||bsky.social^",
|
||||
},
|
||||
}, {
|
||||
ID: "box",
|
||||
Name: "Box",
|
||||
IconSVG: []byte("<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"currentColor\" viewBox=\"0 -9 40 40\"><path d=\"M39.7 19.2c.5.7.4 1.6-.2 2.1-.7.5-1.7.4-2.2-.2l-3.5-4.5-3.4 4.4c-.5.7-1.5.7-2.2.2-.7-.5-.8-1.4-.3-2.1l4-5.2-4-5.2c-.5-.7-.3-1.7.3-2.2.7-.5 1.7-.3 2.2.3l3.4 4.5L37.3 7c.5-.7 1.4-.8 2.2-.3.7.5.7 1.5.2 2.2L35.8 14l3.9 5.2zm-18.2-.6c-2.6 0-4.7-2-4.7-4.6 0-2.5 2.1-4.6 4.7-4.6s4.7 2.1 4.7 4.6c-.1 2.6-2.2 4.6-4.7 4.6zm-13.8 0c-2.6 0-4.7-2-4.7-4.6 0-2.5 2.1-4.6 4.7-4.6s4.7 2.1 4.7 4.6c0 2.6-2.1 4.6-4.7 4.6zM21.5 6.4c-2.9 0-5.5 1.6-6.8 4-1.3-2.4-3.9-4-6.9-4-1.8 0-3.4.6-4.7 1.5V1.5C3.1.7 2.4 0 1.6 0 .7 0 0 .7 0 1.5v12.6c.1 4.2 3.5 7.5 7.7 7.5 3 0 5.6-1.7 6.9-4.1 1.3 2.4 3.9 4.1 6.8 4.1 4.3 0 7.8-3.4 7.8-7.7.1-4.1-3.4-7.5-7.7-7.5z\" /></svg>"),
|
||||
Rules: []string{
|
||||
"||box.com^",
|
||||
"||box.net^",
|
||||
"||boxcdn.net^",
|
||||
"||boxcloud.com^",
|
||||
},
|
||||
}, {
|
||||
ID: "canais_globo",
|
||||
Name: "Canais Globo",
|
||||
|
@ -669,6 +679,34 @@ var blockedServices = []blockedService{{
|
|||
"||douban.fm^",
|
||||
"||doubanio.com^",
|
||||
},
|
||||
}, {
|
||||
ID: "dropbox",
|
||||
Name: "Dropbox",
|
||||
IconSVG: []byte("<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"currentColor\" viewBox=\"0 -2.5 30 30\"><path d=\"M7.7.32.48 4.92 7.7 9.5l7.22-4.6 7.23 4.6 7.22-4.6L22.15.32l-7.23 4.6L7.7.31Zm0 18.38L.48 14.1 7.7 9.5l7.22 4.6-7.22 4.6Z\"/><path d=\"m14.92 14.1 7.23-4.6 7.22 4.6-7.22 4.6-7.23-4.6Zm0 10.72-7.22-4.6 7.22-4.59 7.23 4.6-7.23 4.59Z\"/></svg>"),
|
||||
Rules: []string{
|
||||
"||addtodropbox.com^",
|
||||
"||app.hellosign.com^",
|
||||
"||dash.ai^",
|
||||
"||db.tt^",
|
||||
"||docsend.com^",
|
||||
"||dropbox-dns.com^",
|
||||
"||dropbox.com^",
|
||||
"||dropbox.tech^",
|
||||
"||dropbox.zendesk.com^",
|
||||
"||dropboxapi.com^",
|
||||
"||dropboxbusiness.com^",
|
||||
"||dropboxcaptcha.com^",
|
||||
"||dropboxforum.com^",
|
||||
"||dropboxforums.com^",
|
||||
"||dropboxinsiders.com^",
|
||||
"||dropboxlegal.com^",
|
||||
"||dropboxmail.com^",
|
||||
"||dropboxpartners.com^",
|
||||
"||dropboxstatic.com^",
|
||||
"||dropboxteam.com^",
|
||||
"||dropboxusercontent.com^",
|
||||
"||getdropbox.com^",
|
||||
},
|
||||
}, {
|
||||
ID: "ebay",
|
||||
Name: "EBay",
|
||||
|
@ -2439,8 +2477,10 @@ var blockedServices = []blockedService{{
|
|||
"||bytecdn.cn^",
|
||||
"||bytedance.map.fastly.net^",
|
||||
"||bytedapm.com^",
|
||||
"||bytegoofy.com^",
|
||||
"||byteimg.com^",
|
||||
"||byteoversea.com^",
|
||||
"||bytescm.com^",
|
||||
"||douyin.com^",
|
||||
"||douyincdn.com^",
|
||||
"||douyinliving.com^",
|
||||
|
@ -2463,6 +2503,7 @@ var blockedServices = []blockedService{{
|
|||
"||ttlivecdn.com.c.bytefcdn-oversea.com^",
|
||||
"||ttlivecdn.com^",
|
||||
"||v*.tiktokcdn-eu.com^",
|
||||
"||zijieapi.com^",
|
||||
},
|
||||
}, {
|
||||
ID: "tinder",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
module github.com/AdguardTeam/AdGuardHome/internal/tools
|
||||
|
||||
go 1.21.8
|
||||
go 1.22.2
|
||||
|
||||
require (
|
||||
github.com/fzipp/gocyclo v0.6.0
|
||||
|
|
Loading…
Reference in a new issue