mirror of
https://github.com/kiddin9/op-packages.git
synced 2026-10-29 02:25:13 +08:00
🎁 Sync 2026-09-27 08:52:29
This commit is contained in:
1 parent
4dc511f21f
commit
4cdb414fdd
16 files changed
+1117
-717
No files matched your search
@@ -8,11 +8,11 @@ include $(TOPDIR)/rules.mk
|
||||
|
||||
LUCI_TITLE:=Firewall Live View
|
||||
LUCI_DESCRIPTION:=Live firewall log table (firewall4/nft; iptables-tagged lines still classify) with filters
|
||||
LUCI_DEPENDS:=+luci-base +logd +jsonfilter
|
||||
LUCI_DEPENDS:=+luci-base +logd +jsonfilter +coreutils-timeout
|
||||
LUCI_PKGARCH:=all
|
||||
|
||||
PKG_VERSION:=0.1.46
|
||||
PKG_RELEASE:=39
|
||||
PKG_RELEASE:=40
|
||||
|
||||
# Reproducible build: honor SOURCE_DATE_EPOCH from the build environment (set by docker-sdk.sh / CI).
|
||||
ifdef SOURCE_DATE_EPOCH
|
||||
|
||||
@@ -159,6 +159,7 @@ return view.extend({
|
||||
/* Coalesce hostname-cache paints deferred while tablePaused. */
|
||||
resolvePaintPending: false,
|
||||
lastPollError: false,
|
||||
lastPollErrorCode: null,
|
||||
lastRulesError: null,
|
||||
followLive: true,
|
||||
rulesMap: {},
|
||||
@@ -166,6 +167,8 @@ return view.extend({
|
||||
viewMode: 'simple',
|
||||
expandedRowId: null,
|
||||
loggingStatus: null,
|
||||
/* Invalidates status reads started before a newer toggle or refresh. */
|
||||
loggingStatusReadGeneration: 0,
|
||||
loggingBusy: false,
|
||||
loggingNotice: '',
|
||||
_loggingNoticeFromToggle: false,
|
||||
@@ -359,6 +362,14 @@ return view.extend({
|
||||
this.fillingBuffer = !shortRead && (rawCount === null || rawCount >= effective || grew);
|
||||
},
|
||||
|
||||
hashFilterKeyAllowed(key) {
|
||||
const fields = this.FILTER_CHIP_FIELDS;
|
||||
for (let i = 0; i < fields.length; i++) {
|
||||
if (fields[i].key === key) return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
|
||||
applyHash() {
|
||||
this.resolveRpcPreferences();
|
||||
|
||||
@@ -367,17 +378,14 @@ return view.extend({
|
||||
const key = entries[i].key;
|
||||
const val = entries[i].val;
|
||||
if (key === 'limit' || key === 'poll' || key === 'maxraw') continue;
|
||||
if (key === 'fetch-mode' || key === 'row-tint') continue;
|
||||
if (key === 'view') {
|
||||
if (val === 'advanced' || val === 'detailed') this.viewMode = 'detailed';
|
||||
else if (val === 'simple') this.viewMode = 'simple';
|
||||
continue;
|
||||
}
|
||||
const el = document.getElementById('fwlive-' + key);
|
||||
if (key === 'proto') {
|
||||
proto.setProtoFilterValue(val);
|
||||
continue;
|
||||
}
|
||||
if (el) el.value = val;
|
||||
if (!this.hashFilterKeyAllowed(key)) continue;
|
||||
this.setFilterFieldValue(key, val);
|
||||
}
|
||||
},
|
||||
|
||||
@@ -675,17 +683,21 @@ return view.extend({
|
||||
table.renderThead(el, { columns: this.activeColumns().slice() }, {});
|
||||
},
|
||||
|
||||
async loadRulesMap() {
|
||||
isCurrentPollEpoch(epoch) {
|
||||
return !this.viewDisposed && (epoch == null || epoch === this.currentPollEpoch());
|
||||
},
|
||||
|
||||
async loadRulesMap(epoch) {
|
||||
try {
|
||||
const res = await callFwliveRules();
|
||||
if (this.viewDisposed) return;
|
||||
if (!this.isCurrentPollEpoch(epoch)) return;
|
||||
this.rulesMap = (res && res.rules) || {};
|
||||
this.firewallBackend = (res && res.backend) || 'nft';
|
||||
/* Bounds / mktemp failures are reply.error — same idea as poll. */
|
||||
this.lastRulesError = (res && res.error) || null;
|
||||
if (this.lastRulesError) console.warn('fwlive rules map error:', this.lastRulesError);
|
||||
} catch (_e) {
|
||||
if (this.viewDisposed) return;
|
||||
if (!this.isCurrentPollEpoch(epoch)) return;
|
||||
this.rulesMap = {};
|
||||
this.firewallBackend = 'nft';
|
||||
this.lastRulesError = 'rules_unavailable';
|
||||
@@ -704,9 +716,10 @@ return view.extend({
|
||||
|
||||
const label = document.getElementById('fwlive-backend');
|
||||
if (label) {
|
||||
const warnings = (this.loggingStatus && this.loggingStatus.warnings) || [];
|
||||
let text = this.backendDisplayLabel();
|
||||
let degraded = false;
|
||||
if (this.lastRulesError) {
|
||||
if (this.lastRulesError && this.lastRulesError !== 'timeout_missing') {
|
||||
let err = '';
|
||||
if (this.lastRulesError === 'rules_truncated')
|
||||
err = _('Rule labels incomplete — map truncated');
|
||||
@@ -716,12 +729,6 @@ return view.extend({
|
||||
text = text ? text + ' \u00b7 ' + err : err;
|
||||
degraded = true;
|
||||
}
|
||||
const warnings = (this.loggingStatus && this.loggingStatus.warnings) || [];
|
||||
if (warnings.indexOf('timeout_missing') >= 0) {
|
||||
const warn = _('Limited diagnostics — timeout command missing');
|
||||
text = text ? text + ' \u00b7 ' + warn : warn;
|
||||
degraded = true;
|
||||
}
|
||||
if (warnings.indexOf('legacy_iptables_detected') >= 0) {
|
||||
const warn = _(
|
||||
'Live view may be incomplete — a legacy iptables table is registered'
|
||||
@@ -736,16 +743,25 @@ return view.extend({
|
||||
this.updateEmptyStateUi();
|
||||
},
|
||||
|
||||
async loadLoggingStatus() {
|
||||
async loadLoggingStatus(epoch) {
|
||||
const readGeneration = ++this.loggingStatusReadGeneration;
|
||||
const wasWeakDevice = this.weakDevice;
|
||||
try {
|
||||
const status = await callFwliveLoggingStatus();
|
||||
if (this.viewDisposed) return;
|
||||
if (
|
||||
!this.isCurrentPollEpoch(epoch) ||
|
||||
readGeneration !== this.loggingStatusReadGeneration
|
||||
)
|
||||
return;
|
||||
this.loggingStatus = status;
|
||||
if (!this._loggingNoticeFromToggle) this.loggingNotice = '';
|
||||
this.weakDevice = !!(this.loggingStatus && this.loggingStatus.weak_device === true);
|
||||
} catch (_e) {
|
||||
if (this.viewDisposed) return;
|
||||
if (
|
||||
!this.isCurrentPollEpoch(epoch) ||
|
||||
readGeneration !== this.loggingStatusReadGeneration
|
||||
)
|
||||
return;
|
||||
/* Keep last-known toolbar; unknown until the first successful fetch. */
|
||||
if (!this.loggingNotice)
|
||||
this.loggingNotice = this.loggingStatus
|
||||
@@ -755,6 +771,7 @@ return view.extend({
|
||||
this.updateBackendUi();
|
||||
this.updateLoggingToolbarUi();
|
||||
this.updateEmptyStateUi();
|
||||
this.updateStatus();
|
||||
if (wasWeakDevice !== this.weakDevice && document.getElementById('fwlive-table'))
|
||||
this.renderRows(true);
|
||||
},
|
||||
@@ -762,6 +779,8 @@ return view.extend({
|
||||
async runLoggingToggle(opts) {
|
||||
if (this.loggingBusy) return;
|
||||
|
||||
/* Older recovery reads must not overwrite this toggle's later status. */
|
||||
this.loggingStatusReadGeneration++;
|
||||
this.loggingBusy = true;
|
||||
this.loggingNotice = '';
|
||||
this._loggingNoticeFromToggle = false;
|
||||
@@ -934,10 +953,13 @@ return view.extend({
|
||||
resolveRuleLabel(hint) {
|
||||
if (!hint) return '';
|
||||
|
||||
if (this.rulesMap[hint]) return this.rulesMap[hint];
|
||||
const own = Object.prototype.hasOwnProperty;
|
||||
if (own.call(this.rulesMap, hint) && typeof this.rulesMap[hint] === 'string')
|
||||
return this.rulesMap[hint];
|
||||
|
||||
const slug = hint.toLowerCase();
|
||||
if (this.rulesMap[slug]) return this.rulesMap[slug];
|
||||
if (own.call(this.rulesMap, slug) && typeof this.rulesMap[slug] === 'string')
|
||||
return this.rulesMap[slug];
|
||||
|
||||
return log.formatRuleLabel(hint);
|
||||
},
|
||||
@@ -947,6 +969,23 @@ return view.extend({
|
||||
return row;
|
||||
},
|
||||
|
||||
refreshBufferedRuleLabels() {
|
||||
let changed = false;
|
||||
for (let i = 0; i < this.entries.length; i++) {
|
||||
const row = this.entries[i];
|
||||
const label = this.resolveRuleLabel(row.rule_hint);
|
||||
if (row.rule_label !== label) {
|
||||
row.rule_label = label;
|
||||
changed = true;
|
||||
}
|
||||
}
|
||||
|
||||
/* Keep buffered rows current without painting a paused or hidden table. */
|
||||
if (changed && !this.tablePaused && (!this.summaryMode || this.summaryRowsShown))
|
||||
this.renderRows(true);
|
||||
return changed;
|
||||
},
|
||||
|
||||
normalizePollBatch(raw) {
|
||||
const normalized = [];
|
||||
const seen = {};
|
||||
@@ -987,11 +1026,13 @@ return view.extend({
|
||||
|
||||
/* Caller must discard stale epochs before this synchronous application.
|
||||
* This updates transport/adaptive state, summary/banner UI, rows, and buffer. */
|
||||
failPollReply(rtt) {
|
||||
failPollReply(rtt, errorCode) {
|
||||
this.lastPollError = true;
|
||||
this.lastPollErrorCode = typeof errorCode === 'string' ? errorCode : null;
|
||||
this.fillingBuffer = false;
|
||||
this.notePollRtt(rtt, true);
|
||||
this.updateAdaptiveBanner();
|
||||
if (this.lastPollErrorCode === 'timeout_missing') this.updateBackendUi();
|
||||
},
|
||||
|
||||
applyPollReply(poll, context) {
|
||||
@@ -1008,7 +1049,7 @@ return view.extend({
|
||||
return;
|
||||
}
|
||||
if (reply.error) {
|
||||
this.failPollReply(rtt);
|
||||
this.failPollReply(rtt, reply.error);
|
||||
return;
|
||||
}
|
||||
const raw = reply.log;
|
||||
@@ -1018,6 +1059,7 @@ return view.extend({
|
||||
}
|
||||
|
||||
this.lastPollError = false;
|
||||
this.lastPollErrorCode = null;
|
||||
if (reply.adaptive === 0 || reply.adaptive === false) this.serverAdaptive = 0;
|
||||
else if (reply.adaptive === 1 || reply.adaptive === true) this.serverAdaptive = 1;
|
||||
else this.serverAdaptive = undefined;
|
||||
@@ -1082,12 +1124,19 @@ return view.extend({
|
||||
/* Visibility changes and disposal invalidate all application of this reply. */
|
||||
if (epoch !== this.currentPollEpoch()) return;
|
||||
|
||||
const recoveringTimeoutProvider = this.lastPollErrorCode === 'timeout_missing';
|
||||
this.applyPollReply(poll, {
|
||||
beforeLength: beforeLength,
|
||||
fetchLines: fetchLines,
|
||||
pausedAtStart: pausedAtStart,
|
||||
resumeMerge: resumeMerge
|
||||
});
|
||||
if (recoveringTimeoutProvider && !this.lastPollError) {
|
||||
await Promise.all([this.loadRulesMap(epoch), this.loadLoggingStatus(epoch)]);
|
||||
/* Recovery RPCs can outlive the poll epoch; don't repaint stale views. */
|
||||
if (epoch !== this.currentPollEpoch() || this.viewDisposed) return;
|
||||
this.refreshBufferedRuleLabels();
|
||||
}
|
||||
},
|
||||
|
||||
rememberSessionId(id) {
|
||||
@@ -1132,10 +1181,9 @@ return view.extend({
|
||||
constants.WEAK_DEVICE_DISPLAY_ROW_CAP
|
||||
)
|
||||
);
|
||||
if (this.degradedSampling && this.serverAdaptive !== 0) bits.push(_('Degraded — sampling'));
|
||||
if (this.serverTruncated && this.serverAdaptive !== 0) bits.push(_('truncated'));
|
||||
if (this.resolveLoadShed && this.serverAdaptive !== 0)
|
||||
bits.push(_('resolve paused (load)'));
|
||||
if (this.degradedSampling) bits.push(_('Degraded — sampling'));
|
||||
if (this.serverTruncated) bits.push(_('truncated'));
|
||||
if (this.resolveLoadShed) bits.push(_('resolve paused (load)'));
|
||||
if (!this.tablePaused && !this.followLive)
|
||||
bits.push(_('scroll frozen — scroll to top to follow live'));
|
||||
return bits.length ? ' — ' + bits.join(', ') : '';
|
||||
@@ -1513,7 +1561,10 @@ return view.extend({
|
||||
|
||||
if (this.lastPollError) {
|
||||
status.className = 'fwlive-status fwlive-status-error';
|
||||
status.textContent = _('Connection lost — retrying…') + suffix;
|
||||
status.textContent =
|
||||
this.lastPollErrorCode === 'timeout_missing'
|
||||
? _('Installation is incomplete. Reinstall luci-app-fwlive.')
|
||||
: _('Connection lost — retrying…') + suffix;
|
||||
this.updateAdaptiveBanner();
|
||||
return;
|
||||
}
|
||||
@@ -2096,7 +2147,10 @@ return view.extend({
|
||||
/* fetchEntries already accounts the poll RTT for every rpc
|
||||
* outcome; a throw here is a local normalize/buffer bug, not
|
||||
* network slowness, so count nothing further. */
|
||||
if (epoch === this.currentPollEpoch()) this.lastPollError = true;
|
||||
if (epoch === this.currentPollEpoch()) {
|
||||
this.lastPollError = true;
|
||||
this.lastPollErrorCode = null;
|
||||
}
|
||||
}
|
||||
|
||||
if (epoch !== this.currentPollEpoch()) return;
|
||||
@@ -2129,7 +2183,10 @@ return view.extend({
|
||||
} catch (_e) {
|
||||
/* Keep the coordinator promise settling so a queued refresh cannot
|
||||
* be stranded by an unexpected local rendering failure. */
|
||||
if (epoch === this.currentPollEpoch()) this.lastPollError = true;
|
||||
if (epoch === this.currentPollEpoch()) {
|
||||
this.lastPollError = true;
|
||||
this.lastPollErrorCode = null;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -2593,6 +2650,7 @@ return view.extend({
|
||||
this.hostnameFailed = new Map();
|
||||
this.resolveGeneration = 0;
|
||||
this.lastPollError = false;
|
||||
this.lastPollErrorCode = null;
|
||||
this.applyHash();
|
||||
this.attachHandlers();
|
||||
this.applyRowTintMode();
|
||||
|
||||
@@ -12,16 +12,16 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1500
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1548
|
||||
msgid "%d matching · %d/%d stored"
|
||||
msgstr "%d Treffer · %d/%d gespeichert"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1293
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1341
|
||||
msgid "%s · requested up to %d raw lines · %d firewall messages returned"
|
||||
msgstr ""
|
||||
"%s · bis zu %d Rohzeilen angefordert · %d Firewall-Meldungen zurückgegeben"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1282
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1331
|
||||
msgid ""
|
||||
"%s · requested up to %d raw lines · server limited fetch to %d · %d firewall "
|
||||
"messages returned"
|
||||
@@ -29,29 +29,29 @@ msgstr ""
|
||||
"%s · bis zu %d Rohzeilen angefordert · Server begrenzte Abruf auf %d · %d "
|
||||
"Firewall-Meldungen zurückgegeben"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:482
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:493
|
||||
msgid "%s: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1502
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1550
|
||||
msgid "0 matching · %d/%d stored"
|
||||
msgstr "0 Treffer · %d/%d gespeichert"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:432
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:440
|
||||
msgid "Accessible (teal/orange)"
|
||||
msgstr "Barrierefrei (teal/orange)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:342
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:353
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:35
|
||||
msgid "Action"
|
||||
msgstr "Aktion"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:855
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:874
|
||||
msgid "Administrator access is required to disable logging."
|
||||
msgstr ""
|
||||
"Zum Deaktivieren der Protokollierung sind Administratorrechte erforderlich."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:832
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:851
|
||||
msgid "Administrator access is required to enable logging."
|
||||
msgstr ""
|
||||
"Zum Aktivieren der Protokollierung sind Administratorrechte erforderlich."
|
||||
@@ -60,27 +60,27 @@ msgstr ""
|
||||
msgid "Allow/deny rules, LAN logging, or anything else."
|
||||
msgstr "Allow/Deny-Regeln, LAN-Protokollierung oder irgendetwas anderes."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1691
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1742
|
||||
msgid "Also seen"
|
||||
msgstr "Weitere"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:812
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:843
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:832
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:863
|
||||
msgid "Another change is staged for the firewall; apply or revert it first."
|
||||
msgstr ""
|
||||
"Eine andere Änderung an der Firewall ist vorgemerkt; zuerst anwenden oder "
|
||||
"verwerfen."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2490
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2547
|
||||
msgid "Any action"
|
||||
msgstr "Beliebige Aktion"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1684
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1735
|
||||
msgid "Any protocol"
|
||||
msgstr "Beliebiges Protokoll"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1274
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1334
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1322
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1382
|
||||
msgid "Auto"
|
||||
msgstr "Auto"
|
||||
|
||||
@@ -88,7 +88,7 @@ msgstr "Auto"
|
||||
msgid "Before you enable logging"
|
||||
msgstr "Bevor Sie die Protokollierung aktivieren"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:810
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:829
|
||||
msgid "Cannot enable logging until kernel log modules are installed."
|
||||
msgstr ""
|
||||
"Protokollierung kann erst aktiviert werden, wenn die Kernel-Log-Module "
|
||||
@@ -98,11 +98,11 @@ msgstr ""
|
||||
msgid "Changes:"
|
||||
msgstr "Änderungen:"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:431
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:439
|
||||
msgid "Classic (green/red)"
|
||||
msgstr "Klassisch (grün/rot)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2221
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2278
|
||||
msgid "Classic uses green/red; Accessible uses teal/orange"
|
||||
msgstr "Klassisch verwendet grün/rot; Barrierefrei verwendet teal/orange"
|
||||
|
||||
@@ -110,7 +110,7 @@ msgstr "Klassisch verwendet grün/rot; Barrierefrei verwendet teal/orange"
|
||||
msgid "Clear all"
|
||||
msgstr "Alle löschen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2561
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2619
|
||||
msgid ""
|
||||
"Click a cell to filter · ≠ on a chip to exclude · Ctrl+click a rule for "
|
||||
"firewall settings · in Simple view, click a row for the full message"
|
||||
@@ -119,7 +119,7 @@ msgstr ""
|
||||
"auf eine Regel für Firewall-Einstellungen · in der Einfachen Ansicht Zeile "
|
||||
"anklicken für die vollständige Meldung"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2288
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2346
|
||||
msgid ""
|
||||
"Click a row (Time or other non-link cells) to see the full log line (Simple "
|
||||
"view)."
|
||||
@@ -131,7 +131,7 @@ msgstr ""
|
||||
msgid "Click a row for the full message"
|
||||
msgstr "Zeile anklicken für die vollständige Meldung"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2293
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2351
|
||||
msgid ""
|
||||
"Click an IP, action, or protocol to filter; use the Protocol menu (or ≠ on a "
|
||||
"chip) to exclude."
|
||||
@@ -139,40 +139,42 @@ msgstr ""
|
||||
"Klicken Sie auf eine IP, Aktion oder ein Protokoll, um zu filtern; nutzen "
|
||||
"Sie das Protokoll-Menü (oder ≠ auf einem Chip) zum Ausschließen."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1685
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1736
|
||||
msgid "Common"
|
||||
msgstr "Häufig"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1516
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1567
|
||||
msgid "Connection lost — retrying…"
|
||||
msgstr "Verbindung verloren — neuer Versuch…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:818
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:849
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:837
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:868
|
||||
msgid "Could not acquire the logging lock."
|
||||
msgstr "Die Protokollierungssperre konnte nicht erworben werden."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:852
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:871
|
||||
msgid "Could not disable logging."
|
||||
msgstr "Protokollierung konnte nicht deaktiviert werden."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:823
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:842
|
||||
msgid "Could not enable logging."
|
||||
msgstr "Protokollierung konnte nicht aktiviert werden."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:753
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:769
|
||||
msgid "Could not load logging status."
|
||||
msgstr "Protokollstatus konnte nicht geladen werden."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:752
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:768
|
||||
msgid "Could not refresh logging status; showing the last known state."
|
||||
msgstr "Protokollstatus konnte nicht aktualisiert werden; zeige den zuletzt bekannten Zustand."
|
||||
msgstr ""
|
||||
"Protokollstatus konnte nicht aktualisiert werden; zeige den zuletzt "
|
||||
"bekannten Zustand."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:820
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:839
|
||||
msgid "Could not snapshot the current logging state."
|
||||
msgstr "Der aktuelle Protokollierungszustand konnte nicht gesichert werden."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2516
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2574
|
||||
msgid "Custom protocol (prefix ! to exclude). Overrides the menu when set."
|
||||
msgstr ""
|
||||
"Eigenes Protokoll (! zum Ausschließen). Überschreibt das Menü, wenn gesetzt."
|
||||
@@ -181,34 +183,34 @@ msgstr ""
|
||||
msgid "DPort"
|
||||
msgstr "Ziel-Port"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1135
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1184
|
||||
msgid "Degraded — sampling"
|
||||
msgstr "Eingeschränkt — Stichproben"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1305
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1353
|
||||
msgid "Degraded — sampling (slow poll RTT; cadence reduced)."
|
||||
msgstr ""
|
||||
"Eingeschränkt — Stichproben (langsame Poll-Roundtrip-Zeit; Frequenz "
|
||||
"reduziert)."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:346
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:357
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:43
|
||||
msgid "Destination"
|
||||
msgstr "Ziel"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2547
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2604
|
||||
msgid "Destination IP contains (! to exclude)"
|
||||
msgstr "Ziel-IP enthält (! zum Ausschließen)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:348
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:359
|
||||
msgid "Destination port"
|
||||
msgstr "Ziel-Port"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2552
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2609
|
||||
msgid "Destination port (! to exclude)"
|
||||
msgstr "Ziel-Port (! zum Ausschließen)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2405
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2462
|
||||
msgid "Detail"
|
||||
msgstr "Detail"
|
||||
|
||||
@@ -220,15 +222,15 @@ msgstr "Richtung"
|
||||
msgid "Disabling…"
|
||||
msgstr "Wird deaktiviert…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1131
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1180
|
||||
msgid "Display limited to %d rows on this device"
|
||||
msgstr "Anzeige auf %d Zeilen auf diesem Gerät begrenzt"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2162
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2219
|
||||
msgid "Display options"
|
||||
msgstr "Anzeigeoptionen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2254
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2311
|
||||
msgid "Display options on the bar set Limit, row tint, palette, and hostnames."
|
||||
msgstr ""
|
||||
"Anzeigeoptionen in der Leiste setzen Limit, Zeilenfärbung, Palette und "
|
||||
@@ -256,7 +258,7 @@ msgstr ""
|
||||
msgid "Enable logging"
|
||||
msgstr "Protokollierung aktivieren"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2249
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2307
|
||||
msgid ""
|
||||
"Enable logging turns on WAN zone drop/reject logging only (same as Network → "
|
||||
"Firewall). It does not add rules or log normal LAN browsing."
|
||||
@@ -270,7 +272,7 @@ msgstr ""
|
||||
msgid "Enabling…"
|
||||
msgstr "Wird aktiviert…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1698
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1749
|
||||
msgid "Exclude"
|
||||
msgstr "Ausschließen"
|
||||
|
||||
@@ -278,11 +280,11 @@ msgstr "Ausschließen"
|
||||
msgid "Exclude instead"
|
||||
msgstr "Stattdessen ausschließen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2176
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2233
|
||||
msgid "Fetch budget"
|
||||
msgstr "Abrufbudget"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2257
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2315
|
||||
msgid ""
|
||||
"Fetch budget controls raw log lines per poll. Auto derives from Limit; "
|
||||
"Manual selects a bounded maximum."
|
||||
@@ -296,13 +298,13 @@ msgstr ""
|
||||
msgid "Filter by %s"
|
||||
msgstr "Filtern nach %s"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:128
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:129
|
||||
msgid "Filter logs by rule (hint: %s). Ctrl+click to open firewall settings."
|
||||
msgstr ""
|
||||
"Logs nach Regel filtern (Hinweis: %s). Strg+Klick öffnet die Firewall-"
|
||||
"Einstellungen."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2332
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2389
|
||||
#: openwrt-feed/luci-app-fwlive/root/usr/share/luci/menu.d/luci-app-fwlive.json:3
|
||||
msgid "Firewall Live View"
|
||||
msgstr "Firewall-Live-Ansicht"
|
||||
@@ -315,7 +317,7 @@ msgstr "Flags"
|
||||
msgid "Flow"
|
||||
msgstr "Fluss"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2267
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2325
|
||||
msgid ""
|
||||
"For a responsive table on a weak device, keep Limit at 250 rows or below. "
|
||||
"The weak-device cap affects rendered rows; the buffer can still retain more."
|
||||
@@ -332,15 +334,15 @@ msgstr "Weitergeleitet"
|
||||
msgid "Grant access to firewall live log view"
|
||||
msgstr "Zugriff auf die Live-Ansicht der Firewall-Protokolle gewähren"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2241
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2298
|
||||
msgid "Help"
|
||||
msgstr "Hilfe"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1412
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1460
|
||||
msgid "Hide rows"
|
||||
msgstr "Zeilen ausblenden"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1467
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1516
|
||||
msgid ""
|
||||
"High event rate — table refresh is throttled to protect the browser. The "
|
||||
"buffer still updates; refresh will resume automatically."
|
||||
@@ -349,11 +351,11 @@ msgstr ""
|
||||
"Browser zu schonen. Der Puffer wird weiter aktualisiert; die Anzeige wird "
|
||||
"automatisch fortgesetzt."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1312
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1360
|
||||
msgid "Hostname resolve paused while the router is under load."
|
||||
msgstr "Hostnamenauflösung pausiert, solange der Router ausgelastet ist."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1689
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1740
|
||||
msgid "ICMPv6"
|
||||
msgstr "ICMPv6"
|
||||
|
||||
@@ -361,7 +363,7 @@ msgstr "ICMPv6"
|
||||
msgid "IN"
|
||||
msgstr "EINGANG"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2304
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2362
|
||||
msgid ""
|
||||
"If Row tint looks missing, the active LuCI theme may omit success/error or "
|
||||
"info/warn CSS variables; fwlive falls back to local colors (air-gapped, no "
|
||||
@@ -371,7 +373,7 @@ msgstr ""
|
||||
"möglicherweise keine Erfolgs/Fehler-CSS-Variablen; fwlive fällt auf lokale "
|
||||
"Farben zurück (air-gapped, keine Daten verlassen das Gerät)."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:323
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:324
|
||||
msgid ""
|
||||
"If the WAN is quiet, wait for probes or use the optional ping check in "
|
||||
"Help / the enabling-logs guide."
|
||||
@@ -387,12 +389,16 @@ msgstr "Eingehend"
|
||||
msgid "Include instead"
|
||||
msgstr "Stattdessen einschließen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:343
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1566
|
||||
msgid "Installation is incomplete. Reinstall luci-app-fwlive."
|
||||
msgstr "Installation unvollständig. Installieren Sie luci-app-fwlive neu."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:354
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:37
|
||||
msgid "Interface"
|
||||
msgstr "Schnittstelle"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2532
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2589
|
||||
msgid "Interface (prefix ! to exclude)"
|
||||
msgstr "Schnittstelle (! voranstellen zum Ausschließen)"
|
||||
|
||||
@@ -405,7 +411,7 @@ msgstr "Ich konfiguriere das unter Netzwerk → Firewall"
|
||||
msgid "Kernel log modules missing"
|
||||
msgstr "Kernel-Logmodule fehlen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:289
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:290
|
||||
msgid ""
|
||||
"Kernel netfilter log modules are missing. Install kmod-nf-log-ipv4 and kmod-"
|
||||
"nf-log-ipv6 (or kmod-nf-log / kmod-nf-log6), then reload the firewall."
|
||||
@@ -418,32 +424,30 @@ msgstr ""
|
||||
msgid "Len"
|
||||
msgstr "Länge"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2165
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2222
|
||||
msgid "Limit"
|
||||
msgstr "Limit"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:721
|
||||
msgid "Limited diagnostics — timeout command missing"
|
||||
msgstr "Eingeschränkte Diagnose — timeout-Befehl fehlt"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:726
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:734
|
||||
msgid "Live view may be incomplete — a legacy iptables table is registered"
|
||||
msgstr "Die Live-Ansicht kann unvollständig sein — eine veraltete iptables-Tabelle ist registriert"
|
||||
msgstr ""
|
||||
"Die Live-Ansicht kann unvollständig sein — eine veraltete iptables-Tabelle "
|
||||
"ist registriert"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:332
|
||||
msgid "Logging is off on this router"
|
||||
msgstr "Protokollierung ist auf diesem Router deaktiviert"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1274
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1335
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1322
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1383
|
||||
msgid "Manual"
|
||||
msgstr "Manuell"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2194
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2251
|
||||
msgid "Manual still uses server protection and poll cadence"
|
||||
msgstr "Manuell nutzt weiterhin Serverschutz und Abfrageintervall"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2262
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2320
|
||||
msgid ""
|
||||
"Manual still uses server protection and poll cadence; it changes the fetch "
|
||||
"budget, not the polling interval."
|
||||
@@ -455,18 +459,18 @@ msgstr ""
|
||||
msgid "Manual test (System → Terminal):"
|
||||
msgstr "Manueller Test (System → Terminal):"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2188
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2245
|
||||
msgid "Maximum raw lines"
|
||||
msgstr "Maximale Rohzeilen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:49
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:330
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2417
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2424
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2474
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2481
|
||||
msgid "Message"
|
||||
msgstr "Nachricht"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2527
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2584
|
||||
msgid "More filters"
|
||||
msgstr "Weitere Filter"
|
||||
|
||||
@@ -485,8 +489,8 @@ msgstr ""
|
||||
msgid "No WAN zone found"
|
||||
msgstr "Keine WAN-Zone gefunden"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:816
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:847
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:835
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:866
|
||||
msgid "No WAN zone found; cannot toggle logging without one."
|
||||
msgstr ""
|
||||
"Keine WAN-Zone gefunden; Protokollierung kann ohne eine solche nicht "
|
||||
@@ -504,7 +508,7 @@ msgstr "Nichts ändert sich, bis Sie auf Aktivieren klicken."
|
||||
msgid "OUT"
|
||||
msgstr "AUSGANG"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2447
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2504
|
||||
msgid "One line"
|
||||
msgstr "Einzeilig"
|
||||
|
||||
@@ -512,7 +516,7 @@ msgstr "Einzeilig"
|
||||
msgid "Open firewall zone settings"
|
||||
msgstr "Firewall-Zonen-Einstellungen öffnen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:335
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:336
|
||||
msgid ""
|
||||
"OpenWrt does not write firewall events to the log until you turn logging on. "
|
||||
"Live View only shows what the firewall already logs — it does not add allow/"
|
||||
@@ -526,29 +530,29 @@ msgstr ""
|
||||
msgid "Outbound"
|
||||
msgstr "Ausgehend"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2215
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2272
|
||||
msgid "Palette"
|
||||
msgstr "Palette"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1564
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2371
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1615
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2428
|
||||
msgid "Pause"
|
||||
msgstr "Pause"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1563
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1614
|
||||
msgid "Paused"
|
||||
msgstr "Pausiert"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:344
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:355
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:41
|
||||
msgid "Proto"
|
||||
msgstr "Protokoll"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2508
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2565
|
||||
msgid "Protocol — common values"
|
||||
msgstr "Protokoll — häufige Werte"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2487
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2544
|
||||
msgid "Quick search"
|
||||
msgstr "Schnellsuche"
|
||||
|
||||
@@ -556,15 +560,15 @@ msgstr "Schnellsuche"
|
||||
msgid "Remove filter"
|
||||
msgstr "Filter entfernen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1564
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1615
|
||||
msgid "Resume"
|
||||
msgstr "Fortsetzen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2205
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2262
|
||||
msgid "Row tint"
|
||||
msgstr "Zeileneinfärbung"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2298
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2356
|
||||
msgid ""
|
||||
"Row tint shows pass/deny row backgrounds when checked. Choose Classic (green/"
|
||||
"red, default) or Accessible (teal/orange). Action text stays colored either "
|
||||
@@ -574,7 +578,7 @@ msgstr ""
|
||||
"Klassisch (grün/rot, Standard) oder Barrierefrei (teal/orange). Aktionstext "
|
||||
"bleibt in beiden Fällen farbig."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2354
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2412
|
||||
msgid ""
|
||||
"Row tint used a local color fallback because the active LuCI theme did not "
|
||||
"apply pass/deny backgrounds."
|
||||
@@ -586,15 +590,15 @@ msgstr ""
|
||||
msgid "Rule"
|
||||
msgstr "Regel"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:712
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:725
|
||||
msgid "Rule labels incomplete — map truncated"
|
||||
msgstr "Regel-Labels unvollständig — Zuordnung abgeschnitten"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:715
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:728
|
||||
msgid "Rule labels unavailable"
|
||||
msgstr "Regel-Labels nicht verfügbar"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:714
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:727
|
||||
msgid "Rule labels unavailable — temp file failed"
|
||||
msgstr "Regel-Labels nicht verfügbar — temporäre Datei fehlgeschlagen"
|
||||
|
||||
@@ -602,81 +606,81 @@ msgstr "Regel-Labels nicht verfügbar — temporäre Datei fehlgeschlagen"
|
||||
msgid "SPort"
|
||||
msgstr "Quell-Port"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:341
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:352
|
||||
msgid "Search"
|
||||
msgstr "Suche"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1303
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1351
|
||||
msgid "Server adaptive protection is disabled."
|
||||
msgstr "Adaptiver Serverschutz ist deaktiviert."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1301
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1349
|
||||
msgid "Server protection state is unknown."
|
||||
msgstr "Serverschutz-Status unbekannt."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1308
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1356
|
||||
msgid "Server shedding — at most %d log lines per poll."
|
||||
msgstr "Server reduziert — höchstens %d Protokollzeilen pro Abfrage."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1310
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1358
|
||||
msgid "Server truncated this poll (adaptive cap)."
|
||||
msgstr "Server hat diese Abfrage gekürzt (adaptives Limit)."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2232
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2289
|
||||
msgid "Show hostnames"
|
||||
msgstr "Hostnamen anzeigen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2203
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2260
|
||||
msgid "Show pass/deny row background colors"
|
||||
msgstr "Pass/Deny-Zeilenhintergrundfarben anzeigen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1412
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2470
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1460
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2527
|
||||
msgid "Show rows"
|
||||
msgstr "Zeilen anzeigen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1369
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1417
|
||||
msgid "Showing a compact summary of the top of the shown sample."
|
||||
msgstr "Eine kompakte Zusammenfassung des Anfangs der angezeigten Stichprobe."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2394
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2451
|
||||
msgid "Simple"
|
||||
msgstr "Einfach"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:345
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:356
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:42
|
||||
msgid "Source"
|
||||
msgstr "Quelle"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2537
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2594
|
||||
msgid "Source IP contains (! to exclude)"
|
||||
msgstr "Quell-IP enthält (! zum Ausschließen)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:347
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:358
|
||||
msgid "Source port"
|
||||
msgstr "Quell-Port"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2542
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2599
|
||||
msgid "Source port (! to exclude)"
|
||||
msgstr "Quell-Port (! zum Ausschließen)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1371
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1419
|
||||
msgid "Summary data is unavailable; show rows to inspect the sample."
|
||||
msgstr ""
|
||||
"Zusammenfassungsdaten nicht verfügbar; Zeilen anzeigen, um die Stichprobe zu "
|
||||
"prüfen."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2461
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2518
|
||||
msgid "Summary mode"
|
||||
msgstr "Zusammenfassungsmodus"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1373
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1421
|
||||
msgid "Summary was bounded before all categories could be included."
|
||||
msgstr ""
|
||||
"Die Zusammenfassung wurde begrenzt, bevor alle Kategorien aufgenommen werden "
|
||||
"konnten."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2272
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2330
|
||||
msgid ""
|
||||
"Switching tabs pauses polling; returning performs one catch-up poll. "
|
||||
"Hostnames are off by default because lookups add work."
|
||||
@@ -685,14 +689,14 @@ msgstr ""
|
||||
"eine einmalige Aufholabfrage. Hostnamen sind standardmäßig deaktiviert, da "
|
||||
"Auflösungen zusätzliche Arbeit verursachen."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:822
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:851
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:841
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:870
|
||||
msgid "The firewall did not reload; saved and live logging may differ."
|
||||
msgstr ""
|
||||
"Die Firewall wurde nicht neu geladen; gespeicherte und aktive "
|
||||
"Protokollierung können voneinander abweichen."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2282
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2340
|
||||
msgid ""
|
||||
"The rate shown for WAN logging is the firewall zone log_limit. OpenWrt "
|
||||
"defaults to 10/minute when no explicit limit is configured; fwlive does not "
|
||||
@@ -702,7 +706,7 @@ msgstr ""
|
||||
"Standard ist 10/Minute ohne explizites Limit; fwlive setzt diese Grenze "
|
||||
"nicht."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2277
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2335
|
||||
msgid ""
|
||||
"The router log ring may evict older events before fwlive reads them. fwlive "
|
||||
"cannot recover evicted entries or change forwarding behavior."
|
||||
@@ -711,7 +715,7 @@ msgstr ""
|
||||
"fwlive sie liest. fwlive kann verdrängte Einträge nicht wiederherstellen und "
|
||||
"ändert das Weiterleitungsverhalten nicht."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2244
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2302
|
||||
msgid ""
|
||||
"The table updates automatically when your firewall logs traffic. Use Pause "
|
||||
"if it moves too fast."
|
||||
@@ -719,7 +723,7 @@ msgstr ""
|
||||
"Die Tabelle aktualisiert sich automatisch, wenn Ihre Firewall Verkehr "
|
||||
"protokolliert. Pause nutzen, wenn es zu schnell wird."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2358
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2415
|
||||
msgid "Theme tint fallback"
|
||||
msgstr "Theme-Farb-Fallback"
|
||||
|
||||
@@ -738,15 +742,15 @@ msgstr ""
|
||||
msgid "Time"
|
||||
msgstr "Zeit"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1378
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1426
|
||||
msgid "Top drops"
|
||||
msgstr "Häufigste Drops"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1381
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1429
|
||||
msgid "Top rules"
|
||||
msgstr "Häufigste Regeln"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1375
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1423
|
||||
msgid "Top talkers"
|
||||
msgstr "Häufigste Absender"
|
||||
|
||||
@@ -756,7 +760,7 @@ msgstr ""
|
||||
"Über das WAN-Protokollierungs-Steuerelement in der Beobachtungsleiste wieder "
|
||||
"deaktivieren."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:349
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:350
|
||||
msgid ""
|
||||
"Turns on WAN zone drop/reject logging (same as Network → Firewall → wan → "
|
||||
"Log). Rate-limited by the zone log_limit (OpenWrt default 10/minute). Normal "
|
||||
@@ -776,21 +780,21 @@ msgstr ""
|
||||
msgid "Undo:"
|
||||
msgstr "Rückgängig:"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2302
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2359
|
||||
msgid "Use Detail for all columns (flags, length, raw message)."
|
||||
msgstr ""
|
||||
"Verwenden Sie „Detail“ für alle Spalten (Flags, Länge, rohe Nachricht)."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2376
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2382
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2433
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2439
|
||||
msgid "View"
|
||||
msgstr "Ansicht"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:854
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:873
|
||||
msgid "WAN drop/reject logging is off."
|
||||
msgstr "WAN-Drop/Reject-Protokollierung ist aus."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:316
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:317
|
||||
msgid ""
|
||||
"WAN drop/reject logging is on. Blocked inbound WAN traffic will show up "
|
||||
"here. Normal LAN browsing will not."
|
||||
@@ -798,7 +802,7 @@ msgstr ""
|
||||
"WAN-Drop/Reject-Protokollierung ist an. Blockierter eingehender WAN-Verkehr "
|
||||
"erscheint hier. Normales LAN-Surfen nicht."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:827
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:847
|
||||
msgid ""
|
||||
"WAN drop/reject logging is on. Blocked inbound traffic should appear here as "
|
||||
"it happens — not normal LAN browsing."
|
||||
@@ -806,7 +810,7 @@ msgstr ""
|
||||
"WAN-Drop/Reject-Protokollierung ist an. Blockierter eingehender Verkehr "
|
||||
"sollte hier in Echtzeit erscheinen — nicht normales LAN-Surfen."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:830
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:849
|
||||
msgid "WAN logging is already enabled."
|
||||
msgstr "WAN-Protokollierung ist bereits aktiviert."
|
||||
|
||||
@@ -835,25 +839,25 @@ msgstr "WAN-Protokollierung nicht verfügbar: keine WAN-Zone"
|
||||
msgid "Waiting for firewall events"
|
||||
msgstr "Warte auf Firewall-Ereignisse"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1563
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2346
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1614
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2403
|
||||
msgid "Watching"
|
||||
msgstr "Beobachtet"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2436
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2493
|
||||
msgid "Wrap"
|
||||
msgstr "Umbrechen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:69
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2492
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2549
|
||||
msgid "block"
|
||||
msgstr "blockiert"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1122
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1171
|
||||
msgid "buffer filling"
|
||||
msgstr "Puffer füllt sich"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1126
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1175
|
||||
msgid "buffer full"
|
||||
msgstr "Puffer voll"
|
||||
|
||||
@@ -866,7 +870,7 @@ msgid "does not contain"
|
||||
msgstr "enthält nicht"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:70
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2493
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2550
|
||||
msgid "drop"
|
||||
msgstr "verworfen"
|
||||
|
||||
@@ -874,16 +878,16 @@ msgstr "verworfen"
|
||||
msgid "is"
|
||||
msgstr "ist"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1121
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1170
|
||||
msgid "loading buffer"
|
||||
msgstr "Lade Puffer"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1498
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1546
|
||||
msgid "loading…"
|
||||
msgstr "lädt…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1351
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1360
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1399
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1408
|
||||
msgid "none"
|
||||
msgstr "keine"
|
||||
|
||||
@@ -891,98 +895,98 @@ msgstr "keine"
|
||||
msgid "not"
|
||||
msgstr "nicht"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1706
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1757
|
||||
msgid "not AH"
|
||||
msgstr "nicht AH"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1705
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1756
|
||||
msgid "not ESP"
|
||||
msgstr "nicht ESP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1704
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1755
|
||||
msgid "not GRE"
|
||||
msgstr "nicht GRE"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1701
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1752
|
||||
msgid "not ICMP"
|
||||
msgstr "nicht ICMP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1702
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1753
|
||||
msgid "not ICMPv6"
|
||||
msgstr "nicht ICMPv6"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1703
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1754
|
||||
msgid "not IGMP"
|
||||
msgstr "nicht IGMP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1707
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1758
|
||||
msgid "not SCTP"
|
||||
msgstr "nicht SCTP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1699
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1750
|
||||
msgid "not TCP"
|
||||
msgstr "nicht TCP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1700
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1751
|
||||
msgid "not UDP"
|
||||
msgstr "nicht UDP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2498
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2555
|
||||
msgid "not block"
|
||||
msgstr "nicht blockieren"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2497
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2554
|
||||
msgid "not drop"
|
||||
msgstr "nicht verwerfen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2496
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2553
|
||||
msgid "not pass"
|
||||
msgstr "nicht erlauben"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2499
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2556
|
||||
msgid "not reject"
|
||||
msgstr "nicht zurückweisen"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2500
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2557
|
||||
msgid "not unknown"
|
||||
msgstr "nicht unbekannt"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2515
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2572
|
||||
msgid "or type…"
|
||||
msgstr "oder tippen…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:68
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2491
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2548
|
||||
msgid "pass"
|
||||
msgstr "erlaubt"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:71
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2494
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2551
|
||||
msgid "reject"
|
||||
msgstr "abgelehnt"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1128
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1177
|
||||
msgid "render paused (high rate)"
|
||||
msgstr "Rendering pausiert (hohe Rate)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1138
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1186
|
||||
msgid "resolve paused (load)"
|
||||
msgstr "Auflösung pausiert (Last)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1140
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1188
|
||||
msgid "scroll frozen — scroll to top to follow live"
|
||||
msgstr "Scrollen eingefroren — nach oben scrollen für Live-Ansicht"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1136
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1185
|
||||
msgid "truncated"
|
||||
msgstr "gekürzt"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:60
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2495
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2552
|
||||
msgid "unknown"
|
||||
msgstr "unbekannt"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:697
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:709
|
||||
msgid "using fw4"
|
||||
msgstr "mit fw4"
|
||||
|
||||
|
||||
@@ -13,15 +13,15 @@ msgstr ""
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
||||
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1500
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1548
|
||||
msgid "%d matching · %d/%d stored"
|
||||
msgstr "%d совпад. · сохранено %d/%d"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1293
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1341
|
||||
msgid "%s · requested up to %d raw lines · %d firewall messages returned"
|
||||
msgstr "%s · запрошено до %d сырых строк · возвращено %d сообщений firewall"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1282
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1331
|
||||
msgid ""
|
||||
"%s · requested up to %d raw lines · server limited fetch to %d · %d firewall "
|
||||
"messages returned"
|
||||
@@ -29,28 +29,28 @@ msgstr ""
|
||||
"%s · запрошено до %d сырых строк · сервер ограничил выборку до %d · "
|
||||
"возвращено %d сообщений firewall"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:482
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:493
|
||||
msgid "%s: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1502
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1550
|
||||
msgid "0 matching · %d/%d stored"
|
||||
msgstr "0 совпад. · сохранено %d/%d"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:432
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:440
|
||||
msgid "Accessible (teal/orange)"
|
||||
msgstr "Доступный (бирюзовый/оранжевый)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:342
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:353
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:35
|
||||
msgid "Action"
|
||||
msgstr "Действие"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:855
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:874
|
||||
msgid "Administrator access is required to disable logging."
|
||||
msgstr "Для отключения журналирования требуются права администратора."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:832
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:851
|
||||
msgid "Administrator access is required to enable logging."
|
||||
msgstr "Для включения журналирования требуются права администратора."
|
||||
|
||||
@@ -58,27 +58,27 @@ msgstr "Для включения журналирования требуютс
|
||||
msgid "Allow/deny rules, LAN logging, or anything else."
|
||||
msgstr "Правила allow/deny, журналирование LAN и любые другие настройки."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1691
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1742
|
||||
msgid "Also seen"
|
||||
msgstr "Также встречаются"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:812
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:843
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:832
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:863
|
||||
msgid "Another change is staged for the firewall; apply or revert it first."
|
||||
msgstr ""
|
||||
"В брандмауэре уже есть другое незафиксированное изменение; сначала примените "
|
||||
"или отмените его."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2490
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2547
|
||||
msgid "Any action"
|
||||
msgstr "Любое действие"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1684
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1735
|
||||
msgid "Any protocol"
|
||||
msgstr "Любой протокол"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1274
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1334
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1322
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1382
|
||||
msgid "Auto"
|
||||
msgstr "Авто"
|
||||
|
||||
@@ -86,7 +86,7 @@ msgstr "Авто"
|
||||
msgid "Before you enable logging"
|
||||
msgstr "Перед включением журналирования"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:810
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:829
|
||||
msgid "Cannot enable logging until kernel log modules are installed."
|
||||
msgstr ""
|
||||
"Невозможно включить журналирование, пока не установлены модули журнала ядра."
|
||||
@@ -95,11 +95,11 @@ msgstr ""
|
||||
msgid "Changes:"
|
||||
msgstr "Изменения:"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:431
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:439
|
||||
msgid "Classic (green/red)"
|
||||
msgstr "Классический (зелёный/красный)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2221
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2278
|
||||
msgid "Classic uses green/red; Accessible uses teal/orange"
|
||||
msgstr "Классический — зелёный/красный; доступный — бирюзовый/оранжевый"
|
||||
|
||||
@@ -107,7 +107,7 @@ msgstr "Классический — зелёный/красный; доступ
|
||||
msgid "Clear all"
|
||||
msgstr "Очистить всё"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2561
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2619
|
||||
msgid ""
|
||||
"Click a cell to filter · ≠ on a chip to exclude · Ctrl+click a rule for "
|
||||
"firewall settings · in Simple view, click a row for the full message"
|
||||
@@ -116,7 +116,7 @@ msgstr ""
|
||||
"правилу для настроек МЭ · в Простом виде щёлкните строку для полного "
|
||||
"сообщения"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2288
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2346
|
||||
msgid ""
|
||||
"Click a row (Time or other non-link cells) to see the full log line (Simple "
|
||||
"view)."
|
||||
@@ -128,7 +128,7 @@ msgstr ""
|
||||
msgid "Click a row for the full message"
|
||||
msgstr "Щёлкните строку для полного сообщения"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2293
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2351
|
||||
msgid ""
|
||||
"Click an IP, action, or protocol to filter; use the Protocol menu (or ≠ on a "
|
||||
"chip) to exclude."
|
||||
@@ -136,40 +136,42 @@ msgstr ""
|
||||
"Щёлкните по IP, действию или протоколу для фильтрации; для исключения "
|
||||
"используйте меню «Протокол» (или ≠ на чипе)."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1685
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1736
|
||||
msgid "Common"
|
||||
msgstr "Частые"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1516
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1567
|
||||
msgid "Connection lost — retrying…"
|
||||
msgstr "Соединение потеряно — повторная попытка…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:818
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:849
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:837
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:868
|
||||
msgid "Could not acquire the logging lock."
|
||||
msgstr "Не удалось получить блокировку журналирования."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:852
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:871
|
||||
msgid "Could not disable logging."
|
||||
msgstr "Не удалось отключить журналирование."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:823
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:842
|
||||
msgid "Could not enable logging."
|
||||
msgstr "Не удалось включить журналирование."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:753
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:769
|
||||
msgid "Could not load logging status."
|
||||
msgstr "Не удалось загрузить состояние журналирования."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:752
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:768
|
||||
msgid "Could not refresh logging status; showing the last known state."
|
||||
msgstr "Не удалось обновить состояние журналирования; показан последний известный статус."
|
||||
msgstr ""
|
||||
"Не удалось обновить состояние журналирования; показан последний известный "
|
||||
"статус."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:820
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:839
|
||||
msgid "Could not snapshot the current logging state."
|
||||
msgstr "Не удалось сохранить снимок текущего состояния журналирования."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2516
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2574
|
||||
msgid "Custom protocol (prefix ! to exclude). Overrides the menu when set."
|
||||
msgstr "Свой протокол (! для исключения). Переопределяет меню, если задан."
|
||||
|
||||
@@ -177,32 +179,32 @@ msgstr "Свой протокол (! для исключения). Переоп
|
||||
msgid "DPort"
|
||||
msgstr "Порт назн."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1135
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1184
|
||||
msgid "Degraded — sampling"
|
||||
msgstr "Упрощённый режим — выборка"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1305
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1353
|
||||
msgid "Degraded — sampling (slow poll RTT; cadence reduced)."
|
||||
msgstr "Упрощённый режим — выборка (медленный RTT опроса; интервал увеличен)."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:346
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:357
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:43
|
||||
msgid "Destination"
|
||||
msgstr "Назначение"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2547
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2604
|
||||
msgid "Destination IP contains (! to exclude)"
|
||||
msgstr "IP назначения содержит (! для исключения)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:348
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:359
|
||||
msgid "Destination port"
|
||||
msgstr "Порт назначения"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2552
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2609
|
||||
msgid "Destination port (! to exclude)"
|
||||
msgstr "Порт назначения (! для исключения)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2405
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2462
|
||||
msgid "Detail"
|
||||
msgstr "Подробно"
|
||||
|
||||
@@ -214,15 +216,15 @@ msgstr "Напр."
|
||||
msgid "Disabling…"
|
||||
msgstr "Отключение…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1131
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1180
|
||||
msgid "Display limited to %d rows on this device"
|
||||
msgstr "На этом устройстве отображение ограничено %d строками"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2162
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2219
|
||||
msgid "Display options"
|
||||
msgstr "Параметры отображения"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2254
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2311
|
||||
msgid "Display options on the bar set Limit, row tint, palette, and hostnames."
|
||||
msgstr ""
|
||||
"Параметры отображения на панели задают лимит, окраску строк, палитру и имена "
|
||||
@@ -250,7 +252,7 @@ msgstr ""
|
||||
msgid "Enable logging"
|
||||
msgstr "Включить журнал"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2249
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2307
|
||||
msgid ""
|
||||
"Enable logging turns on WAN zone drop/reject logging only (same as Network → "
|
||||
"Firewall). It does not add rules or log normal LAN browsing."
|
||||
@@ -264,7 +266,7 @@ msgstr ""
|
||||
msgid "Enabling…"
|
||||
msgstr "Включение…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1698
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1749
|
||||
msgid "Exclude"
|
||||
msgstr "Исключить"
|
||||
|
||||
@@ -272,17 +274,17 @@ msgstr "Исключить"
|
||||
msgid "Exclude instead"
|
||||
msgstr "Исключить вместо этого"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2176
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2233
|
||||
msgid "Fetch budget"
|
||||
msgstr "Бюджет выборки"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2257
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2315
|
||||
msgid ""
|
||||
"Fetch budget controls raw log lines per poll. Auto derives from Limit; "
|
||||
"Manual selects a bounded maximum."
|
||||
msgstr ""
|
||||
"Бюджет выборки задаёт число сырых строк журнала за опрос. «Авто» выводится из "
|
||||
"лимита; «Вручную» задаёт ограниченный максимум."
|
||||
"Бюджет выборки задаёт число сырых строк журнала за опрос. «Авто» выводится "
|
||||
"из лимита; «Вручную» задаёт ограниченный максимум."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:63
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:91
|
||||
@@ -290,13 +292,13 @@ msgstr ""
|
||||
msgid "Filter by %s"
|
||||
msgstr "Фильтр по %s"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:128
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:129
|
||||
msgid "Filter logs by rule (hint: %s). Ctrl+click to open firewall settings."
|
||||
msgstr ""
|
||||
"Фильтр журналов по правилу (подсказка: %s). Ctrl+клик открывает настройки "
|
||||
"файрвола."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2332
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2389
|
||||
#: openwrt-feed/luci-app-fwlive/root/usr/share/luci/menu.d/luci-app-fwlive.json:3
|
||||
msgid "Firewall Live View"
|
||||
msgstr "Просмотр файрвола в реальном времени"
|
||||
@@ -309,7 +311,7 @@ msgstr "Флаги"
|
||||
msgid "Flow"
|
||||
msgstr "Поток"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2267
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2325
|
||||
msgid ""
|
||||
"For a responsive table on a weak device, keep Limit at 250 rows or below. "
|
||||
"The weak-device cap affects rendered rows; the buffer can still retain more."
|
||||
@@ -326,15 +328,15 @@ msgstr "Транзитный"
|
||||
msgid "Grant access to firewall live log view"
|
||||
msgstr "Предоставить доступ к живому просмотру журнала межсетевого экрана"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2241
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2298
|
||||
msgid "Help"
|
||||
msgstr "Справка"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1412
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1460
|
||||
msgid "Hide rows"
|
||||
msgstr "Скрыть строки"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1467
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1516
|
||||
msgid ""
|
||||
"High event rate — table refresh is throttled to protect the browser. The "
|
||||
"buffer still updates; refresh will resume automatically."
|
||||
@@ -342,11 +344,11 @@ msgstr ""
|
||||
"Высокая частота событий — обновление таблицы ограничено для защиты браузера. "
|
||||
"Буфер продолжает обновляться; отображение возобновится автоматически."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1312
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1360
|
||||
msgid "Hostname resolve paused while the router is under load."
|
||||
msgstr "Разрешение имён приостановлено из-за нагрузки на маршрутизатор."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1689
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1740
|
||||
msgid "ICMPv6"
|
||||
msgstr "ICMPv6"
|
||||
|
||||
@@ -354,7 +356,7 @@ msgstr "ICMPv6"
|
||||
msgid "IN"
|
||||
msgstr "ВХОД"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2304
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2362
|
||||
msgid ""
|
||||
"If Row tint looks missing, the active LuCI theme may omit success/error or "
|
||||
"info/warn CSS variables; fwlive falls back to local colors (air-gapped, no "
|
||||
@@ -364,7 +366,7 @@ msgstr ""
|
||||
"содержать CSS-переменные success/error или info/warn; fwlive использует "
|
||||
"локальные цвета (работает автономно, данные не покидают устройство)."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:323
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:324
|
||||
msgid ""
|
||||
"If the WAN is quiet, wait for probes or use the optional ping check in "
|
||||
"Help / the enabling-logs guide."
|
||||
@@ -380,12 +382,16 @@ msgstr "Входящий"
|
||||
msgid "Include instead"
|
||||
msgstr "Включить вместо этого"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:343
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1566
|
||||
msgid "Installation is incomplete. Reinstall luci-app-fwlive."
|
||||
msgstr "Установка не завершена. Переустановите luci-app-fwlive."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:354
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:37
|
||||
msgid "Interface"
|
||||
msgstr "Интерфейс"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2532
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2589
|
||||
msgid "Interface (prefix ! to exclude)"
|
||||
msgstr "Интерфейс (! в начале для исключения)"
|
||||
|
||||
@@ -398,7 +404,7 @@ msgstr "Я настрою это в разделе Сеть → Межсетев
|
||||
msgid "Kernel log modules missing"
|
||||
msgstr "Отсутствуют модули журналирования ядра"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:289
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:290
|
||||
msgid ""
|
||||
"Kernel netfilter log modules are missing. Install kmod-nf-log-ipv4 and kmod-"
|
||||
"nf-log-ipv6 (or kmod-nf-log / kmod-nf-log6), then reload the firewall."
|
||||
@@ -411,32 +417,30 @@ msgstr ""
|
||||
msgid "Len"
|
||||
msgstr "Длина"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2165
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2222
|
||||
msgid "Limit"
|
||||
msgstr "Лимит"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:721
|
||||
msgid "Limited diagnostics — timeout command missing"
|
||||
msgstr "Ограниченная диагностика — отсутствует команда timeout"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:726
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:734
|
||||
msgid "Live view may be incomplete — a legacy iptables table is registered"
|
||||
msgstr "Живой просмотр может быть неполным — зарегистрирована устаревшая таблица iptables"
|
||||
msgstr ""
|
||||
"Живой просмотр может быть неполным — зарегистрирована устаревшая таблица "
|
||||
"iptables"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:332
|
||||
msgid "Logging is off on this router"
|
||||
msgstr "Журналирование на этом роутере отключено"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1274
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1335
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1322
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1383
|
||||
msgid "Manual"
|
||||
msgstr "Вручную"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2194
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2251
|
||||
msgid "Manual still uses server protection and poll cadence"
|
||||
msgstr "«Вручную» по-прежнему использует защиту сервера и частоту опроса"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2262
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2320
|
||||
msgid ""
|
||||
"Manual still uses server protection and poll cadence; it changes the fetch "
|
||||
"budget, not the polling interval."
|
||||
@@ -448,18 +452,18 @@ msgstr ""
|
||||
msgid "Manual test (System → Terminal):"
|
||||
msgstr "Ручной тест (Система → Терминал):"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2188
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2245
|
||||
msgid "Maximum raw lines"
|
||||
msgstr "Максимум сырых строк"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:49
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:330
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2417
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2424
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2474
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2481
|
||||
msgid "Message"
|
||||
msgstr "Сообщение"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2527
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2584
|
||||
msgid "More filters"
|
||||
msgstr "Больше фильтров"
|
||||
|
||||
@@ -478,8 +482,8 @@ msgstr ""
|
||||
msgid "No WAN zone found"
|
||||
msgstr "WAN-зона не найдена"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:816
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:847
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:835
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:866
|
||||
msgid "No WAN zone found; cannot toggle logging without one."
|
||||
msgstr "WAN-зона не найдена; без неё нельзя переключить журналирование."
|
||||
|
||||
@@ -495,7 +499,7 @@ msgstr "Ничего не изменится, пока вы не нажмёте
|
||||
msgid "OUT"
|
||||
msgstr "ВЫХОД"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2447
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2504
|
||||
msgid "One line"
|
||||
msgstr "Одна строка"
|
||||
|
||||
@@ -503,7 +507,7 @@ msgstr "Одна строка"
|
||||
msgid "Open firewall zone settings"
|
||||
msgstr "Открыть настройки зон файрвола"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:335
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:336
|
||||
msgid ""
|
||||
"OpenWrt does not write firewall events to the log until you turn logging on. "
|
||||
"Live View only shows what the firewall already logs — it does not add allow/"
|
||||
@@ -517,29 +521,29 @@ msgstr ""
|
||||
msgid "Outbound"
|
||||
msgstr "Исходящий"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2215
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2272
|
||||
msgid "Palette"
|
||||
msgstr "Палитра"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1564
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2371
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1615
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2428
|
||||
msgid "Pause"
|
||||
msgstr "Пауза"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1563
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1614
|
||||
msgid "Paused"
|
||||
msgstr "Пауза"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:344
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:355
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:41
|
||||
msgid "Proto"
|
||||
msgstr "Протокол"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2508
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2565
|
||||
msgid "Protocol — common values"
|
||||
msgstr "Протокол — частые значения"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2487
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2544
|
||||
msgid "Quick search"
|
||||
msgstr "Быстрый поиск"
|
||||
|
||||
@@ -547,15 +551,15 @@ msgstr "Быстрый поиск"
|
||||
msgid "Remove filter"
|
||||
msgstr "Удалить фильтр"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1564
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1615
|
||||
msgid "Resume"
|
||||
msgstr "Продолжить"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2205
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2262
|
||||
msgid "Row tint"
|
||||
msgstr "Цвет строк"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2298
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2356
|
||||
msgid ""
|
||||
"Row tint shows pass/deny row backgrounds when checked. Choose Classic (green/"
|
||||
"red, default) or Accessible (teal/orange). Action text stays colored either "
|
||||
@@ -565,7 +569,7 @@ msgstr ""
|
||||
"классический (зелёный/красный, по умолчанию) или доступный (бирюзовый/"
|
||||
"оранжевый). Цвет текста действия сохраняется в любом случае."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2354
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2412
|
||||
msgid ""
|
||||
"Row tint used a local color fallback because the active LuCI theme did not "
|
||||
"apply pass/deny backgrounds."
|
||||
@@ -577,15 +581,15 @@ msgstr ""
|
||||
msgid "Rule"
|
||||
msgstr "Правило"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:712
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:725
|
||||
msgid "Rule labels incomplete — map truncated"
|
||||
msgstr "Метки правил неполные — таблица обрезана"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:715
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:728
|
||||
msgid "Rule labels unavailable"
|
||||
msgstr "Метки правил недоступны"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:714
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:727
|
||||
msgid "Rule labels unavailable — temp file failed"
|
||||
msgstr "Метки правил недоступны — ошибка временного файла"
|
||||
|
||||
@@ -593,77 +597,77 @@ msgstr "Метки правил недоступны — ошибка време
|
||||
msgid "SPort"
|
||||
msgstr "Порт ист."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:341
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:352
|
||||
msgid "Search"
|
||||
msgstr "Поиск"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1303
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1351
|
||||
msgid "Server adaptive protection is disabled."
|
||||
msgstr "Адаптивная защита сервера отключена."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1301
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1349
|
||||
msgid "Server protection state is unknown."
|
||||
msgstr "Состояние защиты сервера неизвестно."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1308
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1356
|
||||
msgid "Server shedding — at most %d log lines per poll."
|
||||
msgstr "Сервер ограничивает выдачу — не более %d строк журнала за опрос."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1310
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1358
|
||||
msgid "Server truncated this poll (adaptive cap)."
|
||||
msgstr "Сервер сократил этот опрос (адаптивный предел)."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2232
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2289
|
||||
msgid "Show hostnames"
|
||||
msgstr "Показывать имена узлов"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2203
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2260
|
||||
msgid "Show pass/deny row background colors"
|
||||
msgstr "Показывать цвета фона строк pass/deny"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1412
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2470
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1460
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2527
|
||||
msgid "Show rows"
|
||||
msgstr "Показать строки"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1369
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1417
|
||||
msgid "Showing a compact summary of the top of the shown sample."
|
||||
msgstr "Показана краткая сводка верхней части отображаемой выборки."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2394
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2451
|
||||
msgid "Simple"
|
||||
msgstr "Простой"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:345
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:356
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:42
|
||||
msgid "Source"
|
||||
msgstr "Источник"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2537
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2594
|
||||
msgid "Source IP contains (! to exclude)"
|
||||
msgstr "IP источника содержит (! для исключения)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:347
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:358
|
||||
msgid "Source port"
|
||||
msgstr "Порт источника"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2542
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2599
|
||||
msgid "Source port (! to exclude)"
|
||||
msgstr "Порт источника (! для исключения)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1371
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1419
|
||||
msgid "Summary data is unavailable; show rows to inspect the sample."
|
||||
msgstr "Данные сводки недоступны; покажите строки для проверки выборки."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2461
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2518
|
||||
msgid "Summary mode"
|
||||
msgstr "Режим сводки"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1373
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1421
|
||||
msgid "Summary was bounded before all categories could be included."
|
||||
msgstr "Сводка ограничена до включения всех категорий."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2272
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2330
|
||||
msgid ""
|
||||
"Switching tabs pauses polling; returning performs one catch-up poll. "
|
||||
"Hostnames are off by default because lookups add work."
|
||||
@@ -672,14 +676,14 @@ msgstr ""
|
||||
"один догоняющий опрос. Имена хостов по умолчанию отключены, поскольку их "
|
||||
"разрешение создаёт дополнительную нагрузку."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:822
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:851
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:841
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:870
|
||||
msgid "The firewall did not reload; saved and live logging may differ."
|
||||
msgstr ""
|
||||
"Брандмауэр не перезагрузился; сохранённые и активные настройки "
|
||||
"журналирования могут различаться."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2282
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2340
|
||||
msgid ""
|
||||
"The rate shown for WAN logging is the firewall zone log_limit. OpenWrt "
|
||||
"defaults to 10/minute when no explicit limit is configured; fwlive does not "
|
||||
@@ -688,7 +692,7 @@ msgstr ""
|
||||
"Показанная частота WAN-журнала — log_limit зоны. По умолчанию OpenWrt: 10/"
|
||||
"мин без явного лимита; fwlive сам лимит не задаёт."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2277
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2335
|
||||
msgid ""
|
||||
"The router log ring may evict older events before fwlive reads them. fwlive "
|
||||
"cannot recover evicted entries or change forwarding behavior."
|
||||
@@ -697,7 +701,7 @@ msgstr ""
|
||||
"fwlive их прочитает. fwlive не может восстановить вытесненные записи и не "
|
||||
"изменяет пересылку."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2244
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2302
|
||||
msgid ""
|
||||
"The table updates automatically when your firewall logs traffic. Use Pause "
|
||||
"if it moves too fast."
|
||||
@@ -705,7 +709,7 @@ msgstr ""
|
||||
"Таблица обновляется автоматически, когда файрвол пишет в журнал. Используйте "
|
||||
"Паузу, если слишком быстро."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2358
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2415
|
||||
msgid "Theme tint fallback"
|
||||
msgstr "Запасной цвет темы"
|
||||
|
||||
@@ -724,15 +728,15 @@ msgstr ""
|
||||
msgid "Time"
|
||||
msgstr "Время"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1378
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1426
|
||||
msgid "Top drops"
|
||||
msgstr "Частые сбросы"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1381
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1429
|
||||
msgid "Top rules"
|
||||
msgstr "Частые правила"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1375
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1423
|
||||
msgid "Top talkers"
|
||||
msgstr "Частые источники"
|
||||
|
||||
@@ -741,7 +745,7 @@ msgid "Turn it back off with the WAN logging control on the watch strip."
|
||||
msgstr ""
|
||||
"Отключите её снова элементом управления журналом WAN на панели наблюдения."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:349
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:350
|
||||
msgid ""
|
||||
"Turns on WAN zone drop/reject logging (same as Network → Firewall → wan → "
|
||||
"Log). Rate-limited by the zone log_limit (OpenWrt default 10/minute). Normal "
|
||||
@@ -761,21 +765,21 @@ msgstr ""
|
||||
msgid "Undo:"
|
||||
msgstr "Отмена:"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2302
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2359
|
||||
msgid "Use Detail for all columns (flags, length, raw message)."
|
||||
msgstr ""
|
||||
"Используйте «Подробно» для всех столбцов (флаги, длина, исходное сообщение)."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2376
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2382
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2433
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2439
|
||||
msgid "View"
|
||||
msgstr "Вид"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:854
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:873
|
||||
msgid "WAN drop/reject logging is off."
|
||||
msgstr "Журналирование drop/reject для WAN отключено."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:316
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:317
|
||||
msgid ""
|
||||
"WAN drop/reject logging is on. Blocked inbound WAN traffic will show up "
|
||||
"here. Normal LAN browsing will not."
|
||||
@@ -783,7 +787,7 @@ msgstr ""
|
||||
"Журналирование drop/reject для WAN включено. Заблокированный входящий WAN-"
|
||||
"трафик будет отображаться здесь. Обычный LAN-трафик — нет."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:827
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:847
|
||||
msgid ""
|
||||
"WAN drop/reject logging is on. Blocked inbound traffic should appear here as "
|
||||
"it happens — not normal LAN browsing."
|
||||
@@ -792,7 +796,7 @@ msgstr ""
|
||||
"должен появляться здесь по мере поступления — обычный LAN-трафик не "
|
||||
"отображается."
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:830
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:849
|
||||
msgid "WAN logging is already enabled."
|
||||
msgstr "WAN-журналирование уже включено."
|
||||
|
||||
@@ -821,25 +825,25 @@ msgstr "WAN-журналирование недоступно: нет зоны W
|
||||
msgid "Waiting for firewall events"
|
||||
msgstr "Ожидание событий межсетевого экрана"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1563
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2346
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1614
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2403
|
||||
msgid "Watching"
|
||||
msgstr "Наблюдение"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2436
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2493
|
||||
msgid "Wrap"
|
||||
msgstr "Перенос"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:69
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2492
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2549
|
||||
msgid "block"
|
||||
msgstr "заблокирован"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1122
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1171
|
||||
msgid "buffer filling"
|
||||
msgstr "буфер заполняется"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1126
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1175
|
||||
msgid "buffer full"
|
||||
msgstr "буфер заполнен"
|
||||
|
||||
@@ -852,7 +856,7 @@ msgid "does not contain"
|
||||
msgstr "не содержит"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:70
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2493
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2550
|
||||
msgid "drop"
|
||||
msgstr "отброшен"
|
||||
|
||||
@@ -860,16 +864,16 @@ msgstr "отброшен"
|
||||
msgid "is"
|
||||
msgstr "есть"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1121
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1170
|
||||
msgid "loading buffer"
|
||||
msgstr "загрузка буфера"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1498
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1546
|
||||
msgid "loading…"
|
||||
msgstr "загрузка…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1351
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1360
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1399
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1408
|
||||
msgid "none"
|
||||
msgstr "нет"
|
||||
|
||||
@@ -877,99 +881,99 @@ msgstr "нет"
|
||||
msgid "not"
|
||||
msgstr "не"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1706
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1757
|
||||
msgid "not AH"
|
||||
msgstr "не AH"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1705
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1756
|
||||
msgid "not ESP"
|
||||
msgstr "не ESP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1704
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1755
|
||||
msgid "not GRE"
|
||||
msgstr "не GRE"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1701
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1752
|
||||
msgid "not ICMP"
|
||||
msgstr "не ICMP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1702
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1753
|
||||
msgid "not ICMPv6"
|
||||
msgstr "не ICMPv6"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1703
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1754
|
||||
msgid "not IGMP"
|
||||
msgstr "не IGMP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1707
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1758
|
||||
msgid "not SCTP"
|
||||
msgstr "не SCTP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1699
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1750
|
||||
msgid "not TCP"
|
||||
msgstr "не TCP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1700
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1751
|
||||
msgid "not UDP"
|
||||
msgstr "не UDP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2498
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2555
|
||||
msgid "not block"
|
||||
msgstr "не блокировать"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2497
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2554
|
||||
msgid "not drop"
|
||||
msgstr "не отбрасывать"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2496
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2553
|
||||
msgid "not pass"
|
||||
msgstr "не пропускать"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2499
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2556
|
||||
msgid "not reject"
|
||||
msgstr "не отклонять"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2500
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2557
|
||||
msgid "not unknown"
|
||||
msgstr "не неизвестно"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2515
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2572
|
||||
msgid "or type…"
|
||||
msgstr "или введите…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:68
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2491
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2548
|
||||
msgid "pass"
|
||||
msgstr "разрешён"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:71
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2494
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2551
|
||||
msgid "reject"
|
||||
msgstr "отклонён"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1128
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1177
|
||||
msgid "render paused (high rate)"
|
||||
msgstr "рендеринг приостановлен (высокая частота)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1138
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1186
|
||||
msgid "resolve paused (load)"
|
||||
msgstr "Разрешение приостановлено (нагрузка)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1140
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1188
|
||||
msgid "scroll frozen — scroll to top to follow live"
|
||||
msgstr ""
|
||||
"прокрутка заморожена — прокрутите вверх, чтобы следить в реальном времени"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1136
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1185
|
||||
msgid "truncated"
|
||||
msgstr "обрезано"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:60
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2495
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2552
|
||||
msgid "unknown"
|
||||
msgstr "неизвестно"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:697
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:709
|
||||
msgid "using fw4"
|
||||
msgstr "используется fw4"
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=UTF-8"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1500
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1548
|
||||
msgid "%d matching · %d/%d stored"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1293
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1341
|
||||
msgid "%s · requested up to %d raw lines · %d firewall messages returned"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1282
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1331
|
||||
msgid ""
|
||||
"%s · requested up to %d raw lines · server limited fetch to %d · %d firewall "
|
||||
"messages returned"
|
||||
@@ -19,11 +19,11 @@ msgstr ""
|
||||
msgid "%s: %s"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1502
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1550
|
||||
msgid "0 matching · %d/%d stored"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:432
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:440
|
||||
msgid "Accessible (teal/orange)"
|
||||
msgstr ""
|
||||
|
||||
@@ -32,11 +32,11 @@ msgstr ""
|
||||
msgid "Action"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:855
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:874
|
||||
msgid "Administrator access is required to disable logging."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:832
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:851
|
||||
msgid "Administrator access is required to enable logging."
|
||||
msgstr ""
|
||||
|
||||
@@ -44,25 +44,25 @@ msgstr ""
|
||||
msgid "Allow/deny rules, LAN logging, or anything else."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1691
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1742
|
||||
msgid "Also seen"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:812
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:843
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:832
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:863
|
||||
msgid "Another change is staged for the firewall; apply or revert it first."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2490
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2547
|
||||
msgid "Any action"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1684
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1735
|
||||
msgid "Any protocol"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1274
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1334
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1322
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1382
|
||||
msgid "Auto"
|
||||
msgstr ""
|
||||
|
||||
@@ -70,7 +70,7 @@ msgstr ""
|
||||
msgid "Before you enable logging"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:810
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:829
|
||||
msgid "Cannot enable logging until kernel log modules are installed."
|
||||
msgstr ""
|
||||
|
||||
@@ -78,11 +78,11 @@ msgstr ""
|
||||
msgid "Changes:"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:431
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:439
|
||||
msgid "Classic (green/red)"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2221
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2278
|
||||
msgid "Classic uses green/red; Accessible uses teal/orange"
|
||||
msgstr ""
|
||||
|
||||
@@ -90,13 +90,13 @@ msgstr ""
|
||||
msgid "Clear all"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2561
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2619
|
||||
msgid ""
|
||||
"Click a cell to filter · ≠ on a chip to exclude · Ctrl+click a rule for "
|
||||
"firewall settings · in Simple view, click a row for the full message"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2288
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2346
|
||||
msgid ""
|
||||
"Click a row (Time or other non-link cells) to see the full log line (Simple "
|
||||
"view)."
|
||||
@@ -106,46 +106,46 @@ msgstr ""
|
||||
msgid "Click a row for the full message"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2293
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2351
|
||||
msgid ""
|
||||
"Click an IP, action, or protocol to filter; use the Protocol menu (or ≠ on a "
|
||||
"chip) to exclude."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1685
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1736
|
||||
msgid "Common"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1516
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1567
|
||||
msgid "Connection lost — retrying…"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:818
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:849
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:837
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:868
|
||||
msgid "Could not acquire the logging lock."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:852
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:871
|
||||
msgid "Could not disable logging."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:823
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:842
|
||||
msgid "Could not enable logging."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:753
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:769
|
||||
msgid "Could not load logging status."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:752
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:768
|
||||
msgid "Could not refresh logging status; showing the last known state."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:820
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:839
|
||||
msgid "Could not snapshot the current logging state."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2516
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2574
|
||||
msgid "Custom protocol (prefix ! to exclude). Overrides the menu when set."
|
||||
msgstr ""
|
||||
|
||||
@@ -153,11 +153,11 @@ msgstr ""
|
||||
msgid "DPort"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1135
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1184
|
||||
msgid "Degraded — sampling"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1305
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1353
|
||||
msgid "Degraded — sampling (slow poll RTT; cadence reduced)."
|
||||
msgstr ""
|
||||
|
||||
@@ -166,7 +166,7 @@ msgstr ""
|
||||
msgid "Destination"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2547
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2604
|
||||
msgid "Destination IP contains (! to exclude)"
|
||||
msgstr ""
|
||||
|
||||
@@ -174,11 +174,11 @@ msgstr ""
|
||||
msgid "Destination port"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2552
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2609
|
||||
msgid "Destination port (! to exclude)"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2405
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2462
|
||||
msgid "Detail"
|
||||
msgstr ""
|
||||
|
||||
@@ -190,15 +190,15 @@ msgstr ""
|
||||
msgid "Disabling…"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1131
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1180
|
||||
msgid "Display limited to %d rows on this device"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2162
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2219
|
||||
msgid "Display options"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2254
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2311
|
||||
msgid "Display options on the bar set Limit, row tint, palette, and hostnames."
|
||||
msgstr ""
|
||||
|
||||
@@ -222,7 +222,7 @@ msgstr ""
|
||||
msgid "Enable logging"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2249
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2307
|
||||
msgid ""
|
||||
"Enable logging turns on WAN zone drop/reject logging only (same as Network → "
|
||||
"Firewall). It does not add rules or log normal LAN browsing."
|
||||
@@ -233,7 +233,7 @@ msgstr ""
|
||||
msgid "Enabling…"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1698
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1749
|
||||
msgid "Exclude"
|
||||
msgstr ""
|
||||
|
||||
@@ -241,11 +241,11 @@ msgstr ""
|
||||
msgid "Exclude instead"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2176
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2233
|
||||
msgid "Fetch budget"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2257
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2315
|
||||
msgid ""
|
||||
"Fetch budget controls raw log lines per poll. Auto derives from Limit; "
|
||||
"Manual selects a bounded maximum."
|
||||
@@ -257,11 +257,11 @@ msgstr ""
|
||||
msgid "Filter by %s"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:128
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:129
|
||||
msgid "Filter logs by rule (hint: %s). Ctrl+click to open firewall settings."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2332
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2389
|
||||
#: openwrt-feed/luci-app-fwlive/root/usr/share/luci/menu.d/luci-app-fwlive.json:3
|
||||
msgid "Firewall Live View"
|
||||
msgstr ""
|
||||
@@ -274,7 +274,7 @@ msgstr ""
|
||||
msgid "Flow"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2267
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2325
|
||||
msgid ""
|
||||
"For a responsive table on a weak device, keep Limit at 250 rows or below. "
|
||||
"The weak-device cap affects rendered rows; the buffer can still retain more."
|
||||
@@ -288,25 +288,25 @@ msgstr ""
|
||||
msgid "Grant access to firewall live log view"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2241
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2298
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1412
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1460
|
||||
msgid "Hide rows"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1467
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1516
|
||||
msgid ""
|
||||
"High event rate — table refresh is throttled to protect the browser. The "
|
||||
"buffer still updates; refresh will resume automatically."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1312
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1360
|
||||
msgid "Hostname resolve paused while the router is under load."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1689
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1740
|
||||
msgid "ICMPv6"
|
||||
msgstr ""
|
||||
|
||||
@@ -314,14 +314,14 @@ msgstr ""
|
||||
msgid "IN"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2304
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2362
|
||||
msgid ""
|
||||
"If Row tint looks missing, the active LuCI theme may omit success/error or "
|
||||
"info/warn CSS variables; fwlive falls back to local colors (air-gapped, no "
|
||||
"data leaves the device)."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:323
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:324
|
||||
msgid ""
|
||||
"If the WAN is quiet, wait for probes or use the optional ping check in "
|
||||
"Help / the enabling-logs guide."
|
||||
@@ -335,12 +335,16 @@ msgstr ""
|
||||
msgid "Include instead"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1566
|
||||
msgid "Installation is incomplete. Reinstall luci-app-fwlive."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:354
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:37
|
||||
msgid "Interface"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2532
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2589
|
||||
msgid "Interface (prefix ! to exclude)"
|
||||
msgstr ""
|
||||
|
||||
@@ -353,7 +357,7 @@ msgstr ""
|
||||
msgid "Kernel log modules missing"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:289
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:290
|
||||
msgid ""
|
||||
"Kernel netfilter log modules are missing. Install kmod-nf-log-ipv4 and kmod-"
|
||||
"nf-log-ipv6 (or kmod-nf-log / kmod-nf-log6), then reload the firewall."
|
||||
@@ -363,15 +367,11 @@ msgstr ""
|
||||
msgid "Len"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2165
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2222
|
||||
msgid "Limit"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:721
|
||||
msgid "Limited diagnostics — timeout command missing"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:726
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:734
|
||||
msgid "Live view may be incomplete — a legacy iptables table is registered"
|
||||
msgstr ""
|
||||
|
||||
@@ -379,16 +379,16 @@ msgstr ""
|
||||
msgid "Logging is off on this router"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1274
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1335
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1322
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1383
|
||||
msgid "Manual"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2194
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2251
|
||||
msgid "Manual still uses server protection and poll cadence"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2262
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2320
|
||||
msgid ""
|
||||
"Manual still uses server protection and poll cadence; it changes the fetch "
|
||||
"budget, not the polling interval."
|
||||
@@ -398,18 +398,18 @@ msgstr ""
|
||||
msgid "Manual test (System → Terminal):"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2188
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2245
|
||||
msgid "Maximum raw lines"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:49
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:330
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2417
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2424
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2474
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2481
|
||||
msgid "Message"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2527
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2584
|
||||
msgid "More filters"
|
||||
msgstr ""
|
||||
|
||||
@@ -426,8 +426,8 @@ msgstr ""
|
||||
msgid "No WAN zone found"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:816
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:847
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:835
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:866
|
||||
msgid "No WAN zone found; cannot toggle logging without one."
|
||||
msgstr ""
|
||||
|
||||
@@ -443,7 +443,7 @@ msgstr ""
|
||||
msgid "OUT"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2447
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2504
|
||||
msgid "One line"
|
||||
msgstr ""
|
||||
|
||||
@@ -451,7 +451,7 @@ msgstr ""
|
||||
msgid "Open firewall zone settings"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:335
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:336
|
||||
msgid ""
|
||||
"OpenWrt does not write firewall events to the log until you turn logging on. "
|
||||
"Live View only shows what the firewall already logs — it does not add allow/"
|
||||
@@ -462,16 +462,16 @@ msgstr ""
|
||||
msgid "Outbound"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2215
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2272
|
||||
msgid "Palette"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1564
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2371
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1615
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2428
|
||||
msgid "Pause"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1563
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1614
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
|
||||
@@ -480,11 +480,11 @@ msgstr ""
|
||||
msgid "Proto"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2508
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2565
|
||||
msgid "Protocol — common values"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2487
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2544
|
||||
msgid "Quick search"
|
||||
msgstr ""
|
||||
|
||||
@@ -492,22 +492,22 @@ msgstr ""
|
||||
msgid "Remove filter"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1564
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1615
|
||||
msgid "Resume"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2205
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2262
|
||||
msgid "Row tint"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2298
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2356
|
||||
msgid ""
|
||||
"Row tint shows pass/deny row backgrounds when checked. Choose Classic (green/"
|
||||
"red, default) or Accessible (teal/orange). Action text stays colored either "
|
||||
"way."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2354
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2412
|
||||
msgid ""
|
||||
"Row tint used a local color fallback because the active LuCI theme did not "
|
||||
"apply pass/deny backgrounds."
|
||||
@@ -517,15 +517,15 @@ msgstr ""
|
||||
msgid "Rule"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:712
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:725
|
||||
msgid "Rule labels incomplete — map truncated"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:715
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:728
|
||||
msgid "Rule labels unavailable"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:714
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:727
|
||||
msgid "Rule labels unavailable — temp file failed"
|
||||
msgstr ""
|
||||
|
||||
@@ -537,40 +537,40 @@ msgstr ""
|
||||
msgid "Search"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1303
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1351
|
||||
msgid "Server adaptive protection is disabled."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1301
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1349
|
||||
msgid "Server protection state is unknown."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1308
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1356
|
||||
msgid "Server shedding — at most %d log lines per poll."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1310
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1358
|
||||
msgid "Server truncated this poll (adaptive cap)."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2232
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2289
|
||||
msgid "Show hostnames"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2203
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2260
|
||||
msgid "Show pass/deny row background colors"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1412
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2470
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1460
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2527
|
||||
msgid "Show rows"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1369
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1417
|
||||
msgid "Showing a compact summary of the top of the shown sample."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2394
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2451
|
||||
msgid "Simple"
|
||||
msgstr ""
|
||||
|
||||
@@ -579,7 +579,7 @@ msgstr ""
|
||||
msgid "Source"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2537
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2594
|
||||
msgid "Source IP contains (! to exclude)"
|
||||
msgstr ""
|
||||
|
||||
@@ -587,53 +587,53 @@ msgstr ""
|
||||
msgid "Source port"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2542
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2599
|
||||
msgid "Source port (! to exclude)"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1371
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1419
|
||||
msgid "Summary data is unavailable; show rows to inspect the sample."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2461
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2518
|
||||
msgid "Summary mode"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1373
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1421
|
||||
msgid "Summary was bounded before all categories could be included."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2272
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2330
|
||||
msgid ""
|
||||
"Switching tabs pauses polling; returning performs one catch-up poll. "
|
||||
"Hostnames are off by default because lookups add work."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:822
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:851
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:841
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:870
|
||||
msgid "The firewall did not reload; saved and live logging may differ."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2282
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2340
|
||||
msgid ""
|
||||
"The rate shown for WAN logging is the firewall zone log_limit. OpenWrt "
|
||||
"defaults to 10/minute when no explicit limit is configured; fwlive does not "
|
||||
"impose this cap."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2277
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2335
|
||||
msgid ""
|
||||
"The router log ring may evict older events before fwlive reads them. fwlive "
|
||||
"cannot recover evicted entries or change forwarding behavior."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2244
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2302
|
||||
msgid ""
|
||||
"The table updates automatically when your firewall logs traffic. Use Pause "
|
||||
"if it moves too fast."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2358
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2415
|
||||
msgid "Theme tint fallback"
|
||||
msgstr ""
|
||||
|
||||
@@ -650,15 +650,15 @@ msgstr ""
|
||||
msgid "Time"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1378
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1426
|
||||
msgid "Top drops"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1381
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1429
|
||||
msgid "Top rules"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1375
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1423
|
||||
msgid "Top talkers"
|
||||
msgstr ""
|
||||
|
||||
@@ -666,7 +666,7 @@ msgstr ""
|
||||
msgid "Turn it back off with the WAN logging control on the watch strip."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:349
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:350
|
||||
msgid ""
|
||||
"Turns on WAN zone drop/reject logging (same as Network → Firewall → wan → "
|
||||
"Log). Rate-limited by the zone log_limit (OpenWrt default 10/minute). Normal "
|
||||
@@ -681,32 +681,32 @@ msgstr ""
|
||||
msgid "Undo:"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2302
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2359
|
||||
msgid "Use Detail for all columns (flags, length, raw message)."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2376
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2382
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2433
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2439
|
||||
msgid "View"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:854
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:873
|
||||
msgid "WAN drop/reject logging is off."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:316
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:317
|
||||
msgid ""
|
||||
"WAN drop/reject logging is on. Blocked inbound WAN traffic will show up "
|
||||
"here. Normal LAN browsing will not."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:827
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:847
|
||||
msgid ""
|
||||
"WAN drop/reject logging is on. Blocked inbound traffic should appear here as "
|
||||
"it happens — not normal LAN browsing."
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:830
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:849
|
||||
msgid "WAN logging is already enabled."
|
||||
msgstr ""
|
||||
|
||||
@@ -735,25 +735,25 @@ msgstr ""
|
||||
msgid "Waiting for firewall events"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1563
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2346
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1614
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2403
|
||||
msgid "Watching"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2436
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2493
|
||||
msgid "Wrap"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:69
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2492
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2549
|
||||
msgid "block"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1122
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1171
|
||||
msgid "buffer filling"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1126
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1175
|
||||
msgid "buffer full"
|
||||
msgstr ""
|
||||
|
||||
@@ -766,7 +766,7 @@ msgid "does not contain"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:70
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2493
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2550
|
||||
msgid "drop"
|
||||
msgstr ""
|
||||
|
||||
@@ -774,16 +774,16 @@ msgstr ""
|
||||
msgid "is"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1121
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1170
|
||||
msgid "loading buffer"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1498
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1546
|
||||
msgid "loading…"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1351
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1360
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1399
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1408
|
||||
msgid "none"
|
||||
msgstr ""
|
||||
|
||||
@@ -791,102 +791,101 @@ msgstr ""
|
||||
msgid "not"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1706
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1757
|
||||
msgid "not AH"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1705
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1756
|
||||
msgid "not ESP"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1704
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1755
|
||||
msgid "not GRE"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1701
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1752
|
||||
msgid "not ICMP"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1702
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1753
|
||||
msgid "not ICMPv6"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1703
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1754
|
||||
msgid "not IGMP"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1707
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1758
|
||||
msgid "not SCTP"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1699
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1750
|
||||
msgid "not TCP"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1700
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1751
|
||||
msgid "not UDP"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2498
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2555
|
||||
msgid "not block"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2497
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2554
|
||||
msgid "not drop"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2496
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2553
|
||||
msgid "not pass"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2499
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2556
|
||||
msgid "not reject"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2500
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2557
|
||||
msgid "not unknown"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2515
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2572
|
||||
msgid "or type…"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:68
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2491
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2548
|
||||
msgid "pass"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:71
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2494
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2551
|
||||
msgid "reject"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1128
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1177
|
||||
msgid "render paused (high rate)"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1138
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1186
|
||||
msgid "resolve paused (load)"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1140
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1188
|
||||
msgid "scroll frozen — scroll to top to follow live"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1136
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1185
|
||||
msgid "truncated"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:60
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2495
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2552
|
||||
msgid "unknown"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:697
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:709
|
||||
msgid "using fw4"
|
||||
msgstr ""
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:134
|
||||
msgid "· %s"
|
||||
msgstr ""
|
||||
|
||||
@@ -12,43 +12,43 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1500
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1548
|
||||
msgid "%d matching · %d/%d stored"
|
||||
msgstr "%d 条匹配 · 已存 %d/%d"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1293
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1341
|
||||
msgid "%s · requested up to %d raw lines · %d firewall messages returned"
|
||||
msgstr "%s · 请求最多 %d 行原始日志 · 返回 %d 条防火墙消息"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1282
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1331
|
||||
msgid ""
|
||||
"%s · requested up to %d raw lines · server limited fetch to %d · %d firewall "
|
||||
"messages returned"
|
||||
msgstr ""
|
||||
"%s · 请求最多 %d 行原始日志 · 服务器将抓取限制为 %d · 返回 %d 条防火墙消息"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:482
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:493
|
||||
msgid "%s: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1502
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1550
|
||||
msgid "0 matching · %d/%d stored"
|
||||
msgstr "0 条匹配 · 已存 %d/%d"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:432
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:440
|
||||
msgid "Accessible (teal/orange)"
|
||||
msgstr "无障碍(青绿/橙色)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:342
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:353
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:35
|
||||
msgid "Action"
|
||||
msgstr "动作"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:855
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:874
|
||||
msgid "Administrator access is required to disable logging."
|
||||
msgstr "需要管理员权限才能禁用日志记录。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:832
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:851
|
||||
msgid "Administrator access is required to enable logging."
|
||||
msgstr "需要管理员权限才能启用日志记录。"
|
||||
|
||||
@@ -56,25 +56,25 @@ msgstr "需要管理员权限才能启用日志记录。"
|
||||
msgid "Allow/deny rules, LAN logging, or anything else."
|
||||
msgstr "允许/拒绝规则、LAN 日志记录或任何其他设置。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1691
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1742
|
||||
msgid "Also seen"
|
||||
msgstr "其他常见"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:812
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:843
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:832
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:863
|
||||
msgid "Another change is staged for the firewall; apply or revert it first."
|
||||
msgstr "防火墙另有未提交的更改;请先应用或还原。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2490
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2547
|
||||
msgid "Any action"
|
||||
msgstr "所有动作"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1684
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1735
|
||||
msgid "Any protocol"
|
||||
msgstr "任意协议"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1274
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1334
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1322
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1382
|
||||
msgid "Auto"
|
||||
msgstr "自动"
|
||||
|
||||
@@ -82,7 +82,7 @@ msgstr "自动"
|
||||
msgid "Before you enable logging"
|
||||
msgstr "启用日志记录之前"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:810
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:829
|
||||
msgid "Cannot enable logging until kernel log modules are installed."
|
||||
msgstr "无法启用日志记录,直到内核日志模块已安装。"
|
||||
|
||||
@@ -90,11 +90,11 @@ msgstr "无法启用日志记录,直到内核日志模块已安装。"
|
||||
msgid "Changes:"
|
||||
msgstr "变更:"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:431
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:439
|
||||
msgid "Classic (green/red)"
|
||||
msgstr "经典(绿/红)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2221
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2278
|
||||
msgid "Classic uses green/red; Accessible uses teal/orange"
|
||||
msgstr "经典使用绿/红;无障碍使用青绿/橙色"
|
||||
|
||||
@@ -102,7 +102,7 @@ msgstr "经典使用绿/红;无障碍使用青绿/橙色"
|
||||
msgid "Clear all"
|
||||
msgstr "全部清除"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2561
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2619
|
||||
msgid ""
|
||||
"Click a cell to filter · ≠ on a chip to exclude · Ctrl+click a rule for "
|
||||
"firewall settings · in Simple view, click a row for the full message"
|
||||
@@ -110,7 +110,7 @@ msgstr ""
|
||||
"点击单元格筛选 · 芯片上的 ≠ 排除 · Ctrl+点击规则打开防火墙设置 · 在简单视图中"
|
||||
"点击行查看完整消息"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2288
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2346
|
||||
msgid ""
|
||||
"Click a row (Time or other non-link cells) to see the full log line (Simple "
|
||||
"view)."
|
||||
@@ -120,47 +120,47 @@ msgstr "点击一行(时间或其他非链接单元格)可查看完整日志
|
||||
msgid "Click a row for the full message"
|
||||
msgstr "点击行可查看完整消息"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2293
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2351
|
||||
msgid ""
|
||||
"Click an IP, action, or protocol to filter; use the Protocol menu (or ≠ on a "
|
||||
"chip) to exclude."
|
||||
msgstr ""
|
||||
"点击 IP、动作或协议进行筛选;使用协议菜单(或筛选标签上的 ≠)进行排除。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1685
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1736
|
||||
msgid "Common"
|
||||
msgstr "常用"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1516
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1567
|
||||
msgid "Connection lost — retrying…"
|
||||
msgstr "连接已断开 — 正在重试…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:818
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:849
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:837
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:868
|
||||
msgid "Could not acquire the logging lock."
|
||||
msgstr "无法获取日志记录锁。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:852
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:871
|
||||
msgid "Could not disable logging."
|
||||
msgstr "无法禁用日志记录。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:823
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:842
|
||||
msgid "Could not enable logging."
|
||||
msgstr "无法启用日志记录。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:753
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:769
|
||||
msgid "Could not load logging status."
|
||||
msgstr "无法加载日志状态。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:752
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:768
|
||||
msgid "Could not refresh logging status; showing the last known state."
|
||||
msgstr "无法刷新日志状态;显示上次已知状态。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:820
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:839
|
||||
msgid "Could not snapshot the current logging state."
|
||||
msgstr "无法快照当前日志记录状态。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2516
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2574
|
||||
msgid "Custom protocol (prefix ! to exclude). Overrides the menu when set."
|
||||
msgstr "自定义协议(! 排除)。有内容时覆盖菜单。"
|
||||
|
||||
@@ -168,32 +168,32 @@ msgstr "自定义协议(! 排除)。有内容时覆盖菜单。"
|
||||
msgid "DPort"
|
||||
msgstr "目的端口"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1135
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1184
|
||||
msgid "Degraded — sampling"
|
||||
msgstr "降级 — 抽样"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1305
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1353
|
||||
msgid "Degraded — sampling (slow poll RTT; cadence reduced)."
|
||||
msgstr "降级 — 抽样(轮询 RTT 较慢;已降低频率)。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:346
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:357
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:43
|
||||
msgid "Destination"
|
||||
msgstr "目的地址"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2547
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2604
|
||||
msgid "Destination IP contains (! to exclude)"
|
||||
msgstr "目的 IP 包含(! 表示排除)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:348
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:359
|
||||
msgid "Destination port"
|
||||
msgstr "目标端口"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2552
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2609
|
||||
msgid "Destination port (! to exclude)"
|
||||
msgstr "目的端口(! 表示排除)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2405
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2462
|
||||
msgid "Detail"
|
||||
msgstr "详细"
|
||||
|
||||
@@ -205,15 +205,15 @@ msgstr "方向"
|
||||
msgid "Disabling…"
|
||||
msgstr "正在禁用…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1131
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1180
|
||||
msgid "Display limited to %d rows on this device"
|
||||
msgstr "此设备上的显示限制为 %d 行"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2162
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2219
|
||||
msgid "Display options"
|
||||
msgstr "显示选项"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2254
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2311
|
||||
msgid "Display options on the bar set Limit, row tint, palette, and hostnames."
|
||||
msgstr "栏上的显示选项可设置行数限制、行着色、调色板和主机名。"
|
||||
|
||||
@@ -237,7 +237,7 @@ msgstr "启用 WAN 区域的丢弃/拒绝日志记录(同 网络 → 防火墙
|
||||
msgid "Enable logging"
|
||||
msgstr "启用日志"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2249
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2307
|
||||
msgid ""
|
||||
"Enable logging turns on WAN zone drop/reject logging only (same as Network → "
|
||||
"Firewall). It does not add rules or log normal LAN browsing."
|
||||
@@ -250,7 +250,7 @@ msgstr ""
|
||||
msgid "Enabling…"
|
||||
msgstr "正在启用…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1698
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1749
|
||||
msgid "Exclude"
|
||||
msgstr "排除"
|
||||
|
||||
@@ -258,11 +258,11 @@ msgstr "排除"
|
||||
msgid "Exclude instead"
|
||||
msgstr "改为排除"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2176
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2233
|
||||
msgid "Fetch budget"
|
||||
msgstr "抓取配额"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2257
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2315
|
||||
msgid ""
|
||||
"Fetch budget controls raw log lines per poll. Auto derives from Limit; "
|
||||
"Manual selects a bounded maximum."
|
||||
@@ -276,11 +276,11 @@ msgstr ""
|
||||
msgid "Filter by %s"
|
||||
msgstr "按 %s 筛选"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:128
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/links.js:129
|
||||
msgid "Filter logs by rule (hint: %s). Ctrl+click to open firewall settings."
|
||||
msgstr "按规则筛选日志(提示:%s)。Ctrl+点击可打开防火墙设置。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2332
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2389
|
||||
#: openwrt-feed/luci-app-fwlive/root/usr/share/luci/menu.d/luci-app-fwlive.json:3
|
||||
msgid "Firewall Live View"
|
||||
msgstr "防火墙实时视图"
|
||||
@@ -293,13 +293,13 @@ msgstr "标志"
|
||||
msgid "Flow"
|
||||
msgstr "流向"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2267
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2325
|
||||
msgid ""
|
||||
"For a responsive table on a weak device, keep Limit at 250 rows or below. "
|
||||
"The weak-device cap affects rendered rows; the buffer can still retain more."
|
||||
msgstr ""
|
||||
"要让弱设备上的表格保持响应,请将 行数限制 保持在 250 行或更少。弱设备限制影响渲"
|
||||
"染的行数;缓冲区仍可保留更多行。"
|
||||
"要让弱设备上的表格保持响应,请将 行数限制 保持在 250 行或更少。弱设备限制影响"
|
||||
"渲染的行数;缓冲区仍可保留更多行。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:59
|
||||
msgid "Forwarded"
|
||||
@@ -309,26 +309,26 @@ msgstr "已转发"
|
||||
msgid "Grant access to firewall live log view"
|
||||
msgstr "授予防火墙实时日志视图的访问权限"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2241
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2298
|
||||
msgid "Help"
|
||||
msgstr "帮助"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1412
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1460
|
||||
msgid "Hide rows"
|
||||
msgstr "隐藏行"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1467
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1516
|
||||
msgid ""
|
||||
"High event rate — table refresh is throttled to protect the browser. The "
|
||||
"buffer still updates; refresh will resume automatically."
|
||||
msgstr ""
|
||||
"事件速率过高 — 已限制表格刷新以保护浏览器。缓冲区仍在更新;刷新将自动恢复。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1312
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1360
|
||||
msgid "Hostname resolve paused while the router is under load."
|
||||
msgstr "路由器负载较高,已暂停主机名解析。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1689
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1740
|
||||
msgid "ICMPv6"
|
||||
msgstr "ICMPv6"
|
||||
|
||||
@@ -336,7 +336,7 @@ msgstr "ICMPv6"
|
||||
msgid "IN"
|
||||
msgstr "IN"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2304
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2362
|
||||
msgid ""
|
||||
"If Row tint looks missing, the active LuCI theme may omit success/error or "
|
||||
"info/warn CSS variables; fwlive falls back to local colors (air-gapped, no "
|
||||
@@ -345,7 +345,7 @@ msgstr ""
|
||||
"如果行着色看起来缺失,当前 LuCI 主题可能未提供成功/错误或信息/警告 CSS 变量;"
|
||||
"fwlive 会回退到本地颜色(隔离运行,数据不会离开本设备)。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:323
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:324
|
||||
msgid ""
|
||||
"If the WAN is quiet, wait for probes or use the optional ping check in "
|
||||
"Help / the enabling-logs guide."
|
||||
@@ -361,12 +361,16 @@ msgstr "入站"
|
||||
msgid "Include instead"
|
||||
msgstr "改为包含"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:343
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1566
|
||||
msgid "Installation is incomplete. Reinstall luci-app-fwlive."
|
||||
msgstr "安装不完整。请重新安装 luci-app-fwlive。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:354
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:37
|
||||
msgid "Interface"
|
||||
msgstr "接口"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2532
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2589
|
||||
msgid "Interface (prefix ! to exclude)"
|
||||
msgstr "接口(前缀 ! 表示排除)"
|
||||
|
||||
@@ -379,7 +383,7 @@ msgstr "稍后我会在 网络 → 防火墙 中配置"
|
||||
msgid "Kernel log modules missing"
|
||||
msgstr "缺少内核日志模块"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:289
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:290
|
||||
msgid ""
|
||||
"Kernel netfilter log modules are missing. Install kmod-nf-log-ipv4 and kmod-"
|
||||
"nf-log-ipv6 (or kmod-nf-log / kmod-nf-log6), then reload the firewall."
|
||||
@@ -391,15 +395,11 @@ msgstr ""
|
||||
msgid "Len"
|
||||
msgstr "长度"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2165
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2222
|
||||
msgid "Limit"
|
||||
msgstr "行数限制"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:721
|
||||
msgid "Limited diagnostics — timeout command missing"
|
||||
msgstr "诊断功能受限 — 缺少 timeout 命令"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:726
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:734
|
||||
msgid "Live view may be incomplete — a legacy iptables table is registered"
|
||||
msgstr "实时视图可能不完整 — 已注册旧版 iptables 表"
|
||||
|
||||
@@ -407,16 +407,16 @@ msgstr "实时视图可能不完整 — 已注册旧版 iptables 表"
|
||||
msgid "Logging is off on this router"
|
||||
msgstr "此路由器的日志记录已关闭"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1274
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1335
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1322
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1383
|
||||
msgid "Manual"
|
||||
msgstr "手动"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2194
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2251
|
||||
msgid "Manual still uses server protection and poll cadence"
|
||||
msgstr "手动模式仍受服务器保护和轮询节奏约束"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2262
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2320
|
||||
msgid ""
|
||||
"Manual still uses server protection and poll cadence; it changes the fetch "
|
||||
"budget, not the polling interval."
|
||||
@@ -427,18 +427,18 @@ msgstr ""
|
||||
msgid "Manual test (System → Terminal):"
|
||||
msgstr "手动测试(系统 → 终端):"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2188
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2245
|
||||
msgid "Maximum raw lines"
|
||||
msgstr "最大原始行数"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:49
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:330
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2417
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2424
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2474
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2481
|
||||
msgid "Message"
|
||||
msgstr "消息"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2527
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2584
|
||||
msgid "More filters"
|
||||
msgstr "更多筛选"
|
||||
|
||||
@@ -456,8 +456,8 @@ msgstr ""
|
||||
msgid "No WAN zone found"
|
||||
msgstr "未找到 WAN 区域"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:816
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:847
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:835
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:866
|
||||
msgid "No WAN zone found; cannot toggle logging without one."
|
||||
msgstr "未找到 WAN 区域;没有它无法切换日志记录。"
|
||||
|
||||
@@ -473,7 +473,7 @@ msgstr "点击「启用」之前不会有任何更改。"
|
||||
msgid "OUT"
|
||||
msgstr "出接口"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2447
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2504
|
||||
msgid "One line"
|
||||
msgstr "单行"
|
||||
|
||||
@@ -481,7 +481,7 @@ msgstr "单行"
|
||||
msgid "Open firewall zone settings"
|
||||
msgstr "打开防火墙区域设置"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:335
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:336
|
||||
msgid ""
|
||||
"OpenWrt does not write firewall events to the log until you turn logging on. "
|
||||
"Live View only shows what the firewall already logs — it does not add allow/"
|
||||
@@ -494,29 +494,29 @@ msgstr ""
|
||||
msgid "Outbound"
|
||||
msgstr "出站"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2215
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2272
|
||||
msgid "Palette"
|
||||
msgstr "配色"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1564
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2371
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1615
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2428
|
||||
msgid "Pause"
|
||||
msgstr "暂停"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1563
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1614
|
||||
msgid "Paused"
|
||||
msgstr "已暂停"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:344
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:355
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:41
|
||||
msgid "Proto"
|
||||
msgstr "协议"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2508
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2565
|
||||
msgid "Protocol — common values"
|
||||
msgstr "协议 — 常用值"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2487
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2544
|
||||
msgid "Quick search"
|
||||
msgstr "快速搜索"
|
||||
|
||||
@@ -524,15 +524,15 @@ msgstr "快速搜索"
|
||||
msgid "Remove filter"
|
||||
msgstr "移除筛选"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1564
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1615
|
||||
msgid "Resume"
|
||||
msgstr "继续"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2205
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2262
|
||||
msgid "Row tint"
|
||||
msgstr "行着色"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2298
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2356
|
||||
msgid ""
|
||||
"Row tint shows pass/deny row backgrounds when checked. Choose Classic (green/"
|
||||
"red, default) or Accessible (teal/orange). Action text stays colored either "
|
||||
@@ -541,7 +541,7 @@ msgstr ""
|
||||
"勾选后行着色显示放行/拒绝行背景。可选经典(绿/红,默认)或无障碍(青绿/橙)。"
|
||||
"操作文本在两种模式下均保持着色。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2354
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2412
|
||||
msgid ""
|
||||
"Row tint used a local color fallback because the active LuCI theme did not "
|
||||
"apply pass/deny backgrounds."
|
||||
@@ -551,15 +551,15 @@ msgstr "由于当前 LuCI 主题未应用放行/拒绝背景色,行着色使
|
||||
msgid "Rule"
|
||||
msgstr "规则"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:712
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:725
|
||||
msgid "Rule labels incomplete — map truncated"
|
||||
msgstr "规则标签不完整 — 映射被截断"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:715
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:728
|
||||
msgid "Rule labels unavailable"
|
||||
msgstr "规则标签不可用"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:714
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:727
|
||||
msgid "Rule labels unavailable — temp file failed"
|
||||
msgstr "规则标签不可用 — 临时文件创建失败"
|
||||
|
||||
@@ -567,77 +567,77 @@ msgstr "规则标签不可用 — 临时文件创建失败"
|
||||
msgid "SPort"
|
||||
msgstr "源端口"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:341
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:352
|
||||
msgid "Search"
|
||||
msgstr "搜索"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1303
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1351
|
||||
msgid "Server adaptive protection is disabled."
|
||||
msgstr "服务器自适应保护已禁用。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1301
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1349
|
||||
msgid "Server protection state is unknown."
|
||||
msgstr "服务器保护状态未知。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1308
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1356
|
||||
msgid "Server shedding — at most %d log lines per poll."
|
||||
msgstr "服务器正在削减 — 每次轮询最多 %d 行日志。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1310
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1358
|
||||
msgid "Server truncated this poll (adaptive cap)."
|
||||
msgstr "服务器已截断本次轮询(自适应上限)。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2232
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2289
|
||||
msgid "Show hostnames"
|
||||
msgstr "显示主机名"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2203
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2260
|
||||
msgid "Show pass/deny row background colors"
|
||||
msgstr "显示放行/拒绝行背景色"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1412
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2470
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1460
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2527
|
||||
msgid "Show rows"
|
||||
msgstr "显示行"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1369
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1417
|
||||
msgid "Showing a compact summary of the top of the shown sample."
|
||||
msgstr "显示当前样本顶部的简要摘要。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2394
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2451
|
||||
msgid "Simple"
|
||||
msgstr "简洁"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:345
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:356
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:42
|
||||
msgid "Source"
|
||||
msgstr "源地址"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2537
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2594
|
||||
msgid "Source IP contains (! to exclude)"
|
||||
msgstr "源 IP 包含(! 表示排除)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:347
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/log.js:358
|
||||
msgid "Source port"
|
||||
msgstr "源端口"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2542
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2599
|
||||
msgid "Source port (! to exclude)"
|
||||
msgstr "源端口(! 表示排除)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1371
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1419
|
||||
msgid "Summary data is unavailable; show rows to inspect the sample."
|
||||
msgstr "摘要数据不可用;显示行以检查样本。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2461
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2518
|
||||
msgid "Summary mode"
|
||||
msgstr "摘要模式"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1373
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1421
|
||||
msgid "Summary was bounded before all categories could be included."
|
||||
msgstr "摘要已受限,无法包含所有类别。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2272
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2330
|
||||
msgid ""
|
||||
"Switching tabs pauses polling; returning performs one catch-up poll. "
|
||||
"Hostnames are off by default because lookups add work."
|
||||
@@ -645,12 +645,12 @@ msgstr ""
|
||||
"切换到其他标签页会暂停轮询;返回时执行一次追赶轮询。主机名默认关闭,因为解析"
|
||||
"会增加工作量。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:822
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:851
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:841
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:870
|
||||
msgid "The firewall did not reload; saved and live logging may differ."
|
||||
msgstr "防火墙未能重新加载;已保存的日志设置与当前生效状态可能不一致。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2282
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2340
|
||||
msgid ""
|
||||
"The rate shown for WAN logging is the firewall zone log_limit. OpenWrt "
|
||||
"defaults to 10/minute when no explicit limit is configured; fwlive does not "
|
||||
@@ -659,7 +659,7 @@ msgstr ""
|
||||
"WAN 日志显示的速率是防火墙区域的 log_limit。未显式配置时 OpenWrt 默认为 10 "
|
||||
"条/分钟;此上限并非 fwlive 施加。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2277
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2335
|
||||
msgid ""
|
||||
"The router log ring may evict older events before fwlive reads them. fwlive "
|
||||
"cannot recover evicted entries or change forwarding behavior."
|
||||
@@ -667,13 +667,13 @@ msgstr ""
|
||||
"路由器日志环形缓冲区可能在 fwlive 读取前淘汰较旧事件。fwlive 无法恢复已淘汰的"
|
||||
"条目,也不会改变转发行为。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2244
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2302
|
||||
msgid ""
|
||||
"The table updates automatically when your firewall logs traffic. Use Pause "
|
||||
"if it moves too fast."
|
||||
msgstr "防火墙记录流量时表格会自动更新。如果滚动太快,请使用「暂停」。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2358
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2415
|
||||
msgid "Theme tint fallback"
|
||||
msgstr "主题着色回退"
|
||||
|
||||
@@ -690,15 +690,15 @@ msgstr "此路由器报告了 Live View 尚无法识别的日志阻止项。"
|
||||
msgid "Time"
|
||||
msgstr "时间"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1378
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1426
|
||||
msgid "Top drops"
|
||||
msgstr "主要丢弃"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1381
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1429
|
||||
msgid "Top rules"
|
||||
msgstr "主要规则"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1375
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1423
|
||||
msgid "Top talkers"
|
||||
msgstr "主要通信方"
|
||||
|
||||
@@ -706,7 +706,7 @@ msgstr "主要通信方"
|
||||
msgid "Turn it back off with the WAN logging control on the watch strip."
|
||||
msgstr "通过监视栏上的 WAN 日志控件将其重新关闭。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:349
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:350
|
||||
msgid ""
|
||||
"Turns on WAN zone drop/reject logging (same as Network → Firewall → wan → "
|
||||
"Log). Rate-limited by the zone log_limit (OpenWrt default 10/minute). Normal "
|
||||
@@ -723,20 +723,20 @@ msgstr "开启 WAN 防火墙区域的日志记录并重新加载防火墙。"
|
||||
msgid "Undo:"
|
||||
msgstr "撤销:"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2302
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2359
|
||||
msgid "Use Detail for all columns (flags, length, raw message)."
|
||||
msgstr "使用「详细」可查看全部列(标志、长度、原始消息)。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2376
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2382
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2433
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2439
|
||||
msgid "View"
|
||||
msgstr "视图"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:854
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:873
|
||||
msgid "WAN drop/reject logging is off."
|
||||
msgstr "WAN 丢弃/拒绝日志记录已关闭。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:316
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/logging.js:317
|
||||
msgid ""
|
||||
"WAN drop/reject logging is on. Blocked inbound WAN traffic will show up "
|
||||
"here. Normal LAN browsing will not."
|
||||
@@ -744,7 +744,7 @@ msgstr ""
|
||||
"WAN 丢弃/拒绝日志记录已开启。被阻止的 WAN 入站流量会显示在这里;正常的 LAN 浏"
|
||||
"览不会。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:827
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:847
|
||||
msgid ""
|
||||
"WAN drop/reject logging is on. Blocked inbound traffic should appear here as "
|
||||
"it happens — not normal LAN browsing."
|
||||
@@ -752,7 +752,7 @@ msgstr ""
|
||||
"WAN 丢弃/拒绝日志记录已开启。被阻止的入站流量会实时显示在这里 — 正常的 LAN 浏"
|
||||
"览不会。"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:830
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:849
|
||||
msgid "WAN logging is already enabled."
|
||||
msgstr "WAN 日志记录已处于启用状态。"
|
||||
|
||||
@@ -781,25 +781,25 @@ msgstr "WAN 日志不可用:无 WAN 区域"
|
||||
msgid "Waiting for firewall events"
|
||||
msgstr "正在等待防火墙事件"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1563
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2346
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1614
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2403
|
||||
msgid "Watching"
|
||||
msgstr "监视中"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2436
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2493
|
||||
msgid "Wrap"
|
||||
msgstr "自动换行"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:69
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2492
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2549
|
||||
msgid "block"
|
||||
msgstr "拦截"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1122
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1171
|
||||
msgid "buffer filling"
|
||||
msgstr "缓冲区填充中"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1126
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1175
|
||||
msgid "buffer full"
|
||||
msgstr "缓冲区已满"
|
||||
|
||||
@@ -812,7 +812,7 @@ msgid "does not contain"
|
||||
msgstr "不包含"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:70
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2493
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2550
|
||||
msgid "drop"
|
||||
msgstr "丢弃"
|
||||
|
||||
@@ -820,16 +820,16 @@ msgstr "丢弃"
|
||||
msgid "is"
|
||||
msgstr "是"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1121
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1170
|
||||
msgid "loading buffer"
|
||||
msgstr "正在加载缓冲区"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1498
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1546
|
||||
msgid "loading…"
|
||||
msgstr "加载中…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1351
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1360
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1399
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1408
|
||||
msgid "none"
|
||||
msgstr "无"
|
||||
|
||||
@@ -837,98 +837,98 @@ msgstr "无"
|
||||
msgid "not"
|
||||
msgstr "非"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1706
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1757
|
||||
msgid "not AH"
|
||||
msgstr "非 AH"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1705
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1756
|
||||
msgid "not ESP"
|
||||
msgstr "非 ESP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1704
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1755
|
||||
msgid "not GRE"
|
||||
msgstr "非 GRE"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1701
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1752
|
||||
msgid "not ICMP"
|
||||
msgstr "非 ICMP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1702
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1753
|
||||
msgid "not ICMPv6"
|
||||
msgstr "非 ICMPv6"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1703
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1754
|
||||
msgid "not IGMP"
|
||||
msgstr "非 IGMP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1707
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1758
|
||||
msgid "not SCTP"
|
||||
msgstr "非 SCTP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1699
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1750
|
||||
msgid "not TCP"
|
||||
msgstr "非 TCP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1700
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1751
|
||||
msgid "not UDP"
|
||||
msgstr "非 UDP"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2498
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2555
|
||||
msgid "not block"
|
||||
msgstr "非阻止"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2497
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2554
|
||||
msgid "not drop"
|
||||
msgstr "非丢弃"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2496
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2553
|
||||
msgid "not pass"
|
||||
msgstr "非放行"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2499
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2556
|
||||
msgid "not reject"
|
||||
msgstr "非拒绝"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2500
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2557
|
||||
msgid "not unknown"
|
||||
msgstr "非未知"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2515
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2572
|
||||
msgid "or type…"
|
||||
msgstr "或输入…"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:68
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2491
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2548
|
||||
msgid "pass"
|
||||
msgstr "通过"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:71
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2494
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2551
|
||||
msgid "reject"
|
||||
msgstr "拒绝"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1128
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1177
|
||||
msgid "render paused (high rate)"
|
||||
msgstr "渲染已暂停(速率过高)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1138
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1186
|
||||
msgid "resolve paused (load)"
|
||||
msgstr "解析已暂停(负载)"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1140
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1188
|
||||
msgid "scroll frozen — scroll to top to follow live"
|
||||
msgstr "滚动已冻结 — 滚动到顶部以恢复跟随"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1136
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:1185
|
||||
msgid "truncated"
|
||||
msgstr "已截断"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/fwlive/table.js:60
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2495
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:2552
|
||||
msgid "unknown"
|
||||
msgstr "未知"
|
||||
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:697
|
||||
#: openwrt-feed/luci-app-fwlive/htdocs/luci-static/resources/view/status/fwlive.js:709
|
||||
msgid "using fw4"
|
||||
msgstr "使用 fw4"
|
||||
|
||||
|
||||
@@ -483,7 +483,12 @@ fwlive_adaptive_merge_reply() {
|
||||
fwlive_adaptive_enabled || _adapt=0
|
||||
case "$_body" in
|
||||
'{}') _sep= ;;
|
||||
*\}) _sep=, ;;
|
||||
'{"log":[]'*|*'],"messages_received":'*)
|
||||
case "$_body" in
|
||||
*\}) _sep=, ;;
|
||||
*) printf '%s' "$_body"; return 0 ;;
|
||||
esac
|
||||
;;
|
||||
*) printf '%s' "$_body"; return 0 ;;
|
||||
esac
|
||||
_base=${_body%\}}
|
||||
|
||||
@@ -11,6 +11,14 @@
|
||||
|
||||
NF_LOG_IPV4="${FWLIVE_NF_LOG_IPV4_PATH:-/proc/sys/net/netfilter/nf_log/2}"
|
||||
NF_LOG_IPV6="${FWLIVE_NF_LOG_IPV6_PATH:-/proc/sys/net/netfilter/nf_log/10}"
|
||||
# BusyBox ash may resolve its enabled timeout applet ahead of PATH entries.
|
||||
# Use the coreutils-timeout package path explicitly so GNU `-k` is available.
|
||||
# FWLIVE_TIMEOUT_BIN is an environment seam for host tests; rpcd's environment
|
||||
# is root-owned and no ubus input can set it.
|
||||
FWLIVE_TIMEOUT_BIN="${FWLIVE_TIMEOUT_BIN:-/usr/bin/timeout}"
|
||||
fwlive_timeout_available() {
|
||||
[ -x "$FWLIVE_TIMEOUT_BIN" ]
|
||||
}
|
||||
# /proc/sys/net/netfilter/nf_log/10 is a backend selector, not an IPv6
|
||||
# availability probe. A missing or empty /proc/net/if_inet6 means the IPv6
|
||||
# stack is absent (compiled out or ipv6.disable=1), so an IPv6 backend is
|
||||
@@ -660,9 +668,9 @@ legacy_iptables_active() {
|
||||
collect_logging_warnings() {
|
||||
LOGGING_WARNINGS=''
|
||||
|
||||
# rpcd/fwlive run_with_timeout fail-closes to 127 without timeout.
|
||||
# rpcd/fwlive run_with_timeout fail-closes to 127 without GNU timeout.
|
||||
# Warnings are diagnostics only — do not gate the enable-logging CTA.
|
||||
command -v timeout >/dev/null 2>&1 || logging_warnings_append 'timeout_missing'
|
||||
fwlive_timeout_available || logging_warnings_append 'timeout_missing'
|
||||
|
||||
# Diagnostic only: supported releases use nftables, but a registered legacy
|
||||
# iptables table can still exist in the namespace visible to rpcd. LuCI
|
||||
|
||||
@@ -24,16 +24,19 @@ RESOLVE_MAX=32
|
||||
# Per-lookup nslookup timeout (integer seconds — BusyBox `timeout` truncates
|
||||
# fractional values to 0 on OpenWrt 23.05/1.36, so 0.5 would silently
|
||||
# degrade to no timeout; luna fold 2026-08-10). The wall-clock budget
|
||||
# below is the real whole-call bound; this per-lookup cap only prevents a
|
||||
# single hung resolver from dominating the budget. LAN/local-resolver
|
||||
# lookups are single-digit ms, so 1s is ample. Passed as argv to
|
||||
# `timeout`, never interpolated into a shell string.
|
||||
# below stops starting work after the budget; this per-lookup cap plus the
|
||||
# shared TERM/KILL grace bounds the last in-progress lookup. LAN/local-resolver
|
||||
# lookups are single-digit ms, so 1s is ample. Passed as argv to `timeout`,
|
||||
# never interpolated into a shell string.
|
||||
RESOLVE_TIMEOUT=1
|
||||
# Wall-clock budget (seconds) for a single ubus fwlive.resolve call. The
|
||||
# lookup loop checks elapsed time and aborts cleanly once this budget is
|
||||
# spent, so a flood of unresolvable IPs cannot hold an rpcd worker for the
|
||||
# full RESOLVE_MAX * RESOLVE_TIMEOUT worst case. Worst case total time is
|
||||
# budget + one in-progress lookup (<= RESOLVE_TIMEOUT), i.e. ~6s.
|
||||
# budget + one in-progress lookup (RESOLVE_TIMEOUT + TIMEOUT_KILL_GRACE),
|
||||
# plus scheduling/IPC overhead: approximately 7s before scheduler/IPC delay.
|
||||
# Elapsed time comes from /proc/uptime centiseconds so an NTP step cannot
|
||||
# stretch the budget; RESOLVE_MAX still bounds the work if uptime is unreadable.
|
||||
RESOLVE_BUDGET=5
|
||||
# Cap raw logd lines per poll (~2000 ≈ typical logd ring / ~200 KB JSON before filter).
|
||||
POLL_LINES_MAX=2000
|
||||
@@ -42,6 +45,11 @@ NFT_TIMEOUT=5
|
||||
# Bound poll log.read (wedged logd must not hold an rpcd worker past the UI cadence).
|
||||
# Integer seconds — BusyBox timeout truncates fractions to 0 (see RESOLVE_TIMEOUT).
|
||||
POLL_TIMEOUT=5
|
||||
# Outer GNU timeout hard-kills the command group after the inner command's
|
||||
# duration plus this TERM grace. The package dependency ensures GNU's
|
||||
# --foreground and signal options are available, including when BusyBox also
|
||||
# has a timeout applet.
|
||||
TIMEOUT_KILL_GRACE=1
|
||||
# Host tests override this to a pinned libubox helper; devices keep the package path.
|
||||
: "${FWLIVE_JSHN_SH:=/usr/share/libubox/jshn.sh}"
|
||||
|
||||
@@ -52,7 +60,7 @@ POLL_TIMEOUT=5
|
||||
. "$ADAPTIVE_SH"
|
||||
|
||||
slug_key() {
|
||||
echo "$1" | tr '[:upper:]' '[:lower:]' | tr ' _' '--'
|
||||
printf '%s\n' "$1" | tr '[:upper:]' '[:lower:]' | tr ' _' '--'
|
||||
}
|
||||
|
||||
# Cap rules JSON size so a huge ruleset cannot unbound an rpcd reply.
|
||||
@@ -143,7 +151,7 @@ map_prefix_with_label() {
|
||||
map_add "$slug" "$label"
|
||||
fi
|
||||
else
|
||||
cosmetic=$(echo "$prefix" | tr '-' ' ')
|
||||
cosmetic=$(printf '%s\n' "$prefix" | tr '-' ' ')
|
||||
map_add "$prefix" "$cosmetic"
|
||||
if [ "$slug" != "$prefix" ]; then
|
||||
map_add "$slug" "$cosmetic"
|
||||
@@ -154,10 +162,61 @@ map_prefix_with_label() {
|
||||
run_with_timeout() {
|
||||
secs="$1"
|
||||
shift
|
||||
if command -v timeout >/dev/null 2>&1; then
|
||||
timeout "$secs" "$@" 2>/dev/null
|
||||
if fwlive_timeout_available; then
|
||||
run_timeout_busybox="$(command -v busybox 2>/dev/null)" || return 127
|
||||
run_timeout_cat="$(command -v cat 2>/dev/null)" || return 127
|
||||
[ -n "$run_timeout_busybox" ] && [ -n "$run_timeout_cat" ] || return 127
|
||||
# The inner foreground timeout sends TERM to the direct command at its
|
||||
# deadline. Keep a pipe reader alive until every inherited stdout fd
|
||||
# closes; the outer timeout then KILLs the whole process group at the
|
||||
# hard deadline. After the pipeline ends, keep this wrapper alive while
|
||||
# any other live process remains in its dedicated process group. setsid keeps
|
||||
# unrelated rpcd processes out of that scan and lets the outer timeout
|
||||
# kill children even when they close stdout. BusyBox ash pipefail
|
||||
# preserves the inner timeout status; invoking it explicitly keeps this
|
||||
# portable from host dash too.
|
||||
"$run_timeout_busybox" setsid "$FWLIVE_TIMEOUT_BIN" -s KILL "$((secs + TIMEOUT_KILL_GRACE))" \
|
||||
"$run_timeout_busybox" sh -c '
|
||||
set -o pipefail || exit 125
|
||||
timeout_bin="$1"
|
||||
duration="$2"
|
||||
cat_bin="$3"
|
||||
busybox_bin="$4"
|
||||
shift 4
|
||||
"$timeout_bin" --foreground "$duration" "$@" | "$cat_bin"
|
||||
status="$?"
|
||||
IFS= read -r proc_fields < "/proc/$$/stat" || exit 125
|
||||
proc_fields="${proc_fields##*) }"
|
||||
proc_fields="${proc_fields#* }"
|
||||
proc_fields="${proc_fields#* }"
|
||||
group="${proc_fields%% *}"
|
||||
while :; do
|
||||
peer=0
|
||||
for proc_stat in /proc/[0-9]*/stat; do
|
||||
[ -r "$proc_stat" ] || continue
|
||||
IFS= read -r proc_fields < "$proc_stat" || continue
|
||||
proc_fields="${proc_fields##*) }"
|
||||
proc_state="${proc_fields%% *}"
|
||||
proc_fields="${proc_fields#* }"
|
||||
proc_fields="${proc_fields#* }"
|
||||
proc_group="${proc_fields%% *}"
|
||||
proc_pid="${proc_stat#/proc/}"
|
||||
proc_pid="${proc_pid%/stat}"
|
||||
if [ "$proc_group" = "$group" ] && \
|
||||
[ "$proc_pid" != "$group" ] && [ "$proc_pid" != "$$" ] && \
|
||||
[ "$proc_state" != Z ]; then
|
||||
peer=1
|
||||
break
|
||||
fi
|
||||
done
|
||||
[ "$peer" = 1 ] || break
|
||||
"$busybox_bin" sleep 0.1
|
||||
done
|
||||
exit "$status"
|
||||
' fwlive-timeout "$FWLIVE_TIMEOUT_BIN" "$secs" \
|
||||
"$run_timeout_cat" "$run_timeout_busybox" "$@" 2>/dev/null
|
||||
else
|
||||
# Fail closed: never run unbounded when timeout is absent.
|
||||
# Fail closed: never run unbounded without the GNU provider.
|
||||
return 127
|
||||
fi
|
||||
}
|
||||
@@ -402,7 +461,11 @@ build_rules_map() {
|
||||
|
||||
# Temp file first, then a single nft_list_ruleset; backend from success.
|
||||
if command -v nft >/dev/null 2>&1; then
|
||||
enrich_rules_dump fwlive-nft
|
||||
if fwlive_timeout_available; then
|
||||
enrich_rules_dump fwlive-nft
|
||||
else
|
||||
_enrich_error='timeout_missing'
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$backend" = unknown ] && [ -z "$_enrich_error" ]; then
|
||||
@@ -526,15 +589,24 @@ fetch_firewall_logs() {
|
||||
export FWLIVE_SUMMARY
|
||||
|
||||
# Do not swallow a filter failure into a silent empty table.
|
||||
# If the filter exits non-zero but still printed JSON, keep it.
|
||||
# A killed classifier can leave a truncated body that still ends in `}`.
|
||||
# Keep a non-zero body only when it is one of the complete error
|
||||
# objects the shipped filter prints; otherwise emit filter_failed.
|
||||
# Empty success is not valid poll JSON — the shipped filter always
|
||||
# prints {"log":[...]}, but a stub/regression must not emit a blank body.
|
||||
_filter_ok=1
|
||||
if ! out=$(printf '%s' "$raw" | run_with_timeout "$POLL_TIMEOUT" "$FILTER_SH" /tmp); then
|
||||
_filter_ok=0
|
||||
if [ -z "$out" ]; then
|
||||
out='{"log":[],"error":"filter_failed"}'
|
||||
fi
|
||||
case "$out" in
|
||||
'{"log":[],"error":"filter_failed"}'|\
|
||||
'{"log":[],"error":"jsonfilter_missing"}'|\
|
||||
'{"log":[],"error":"classifier_missing"}'|\
|
||||
'{"log":[],"error":"filter_tempfile_failed"}')
|
||||
;;
|
||||
*)
|
||||
out='{"log":[],"error":"filter_failed"}'
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
if [ -z "$out" ]; then
|
||||
_filter_ok=0
|
||||
@@ -567,6 +639,10 @@ fetch_firewall_logs() {
|
||||
}
|
||||
|
||||
poll_logs() {
|
||||
if ! fwlive_timeout_available; then
|
||||
printf '{"log":[],"error":"timeout_missing"}'
|
||||
return 0
|
||||
fi
|
||||
# Optional JSON on $1 (rpcd may also pass argv $3 at the call site); else stdin.
|
||||
input=$(read_rpc_input "$1")
|
||||
fetch_firewall_logs "$input"
|
||||
@@ -715,6 +791,11 @@ resolve_addresses() {
|
||||
printf '{"names":{},"error":"no_resolver"}'
|
||||
return 0
|
||||
fi
|
||||
# Do not turn a missing timeout provider into a negative PTR cache entry.
|
||||
if ! fwlive_timeout_available; then
|
||||
printf '{"names":{},"error":"timeout_missing"}'
|
||||
return 0
|
||||
fi
|
||||
|
||||
# Load shed: previous poll was hot.
|
||||
if fwlive_adaptive_is_hot; then
|
||||
@@ -726,10 +807,9 @@ resolve_addresses() {
|
||||
input=$(read_rpc_input "$1")
|
||||
# Wall-clock budget starts after the input read and bounds the lookup
|
||||
# loop only. Stalled stdin is not interrupted — production rpcd closes
|
||||
# a finite payload. `date +%s` can jump under NTP sync — accepted
|
||||
# (worst case the budget over- or under-runs by the jump; worker
|
||||
# starvation is still prevented).
|
||||
start=$(date +%s)
|
||||
# a finite payload. /proc/uptime centiseconds are monotonic across an
|
||||
# NTP step; if the clock helper prints 0, RESOLVE_MAX still bounds work.
|
||||
start=$(fwlive_adaptive_clock_cs)
|
||||
lookups=0
|
||||
truncated=0
|
||||
OUT=''
|
||||
@@ -777,8 +857,8 @@ resolve_addresses() {
|
||||
fi
|
||||
# Abort cleanly once the lookup-loop wall-clock budget is spent;
|
||||
# never START a lookup past the budget.
|
||||
now=$(date +%s)
|
||||
if [ $((now - start)) -ge "$RESOLVE_BUDGET" ]; then
|
||||
now=$(fwlive_adaptive_clock_cs)
|
||||
if [ $((now - start)) -ge $((RESOLVE_BUDGET * 100)) ]; then
|
||||
truncated=1
|
||||
break
|
||||
fi
|
||||
@@ -884,6 +964,13 @@ run_selftest() {
|
||||
echo 'is_uci_style_name: expected reject empty' >&2
|
||||
return 1
|
||||
fi
|
||||
# echo would swallow -n/-E and dash echo would expand backslashes.
|
||||
_slug=$(slug_key '-n')
|
||||
check_eq 'slug_key -n' "$_slug" '-n' "expected -n got $_slug" || return 1
|
||||
_slug=$(slug_key '-E')
|
||||
check_eq 'slug_key -E' "$_slug" '-e' "expected -e got $_slug" || return 1
|
||||
_slug=$(slug_key "$(printf 'a\\tb')")
|
||||
check_eq 'slug_key backslash' "$_slug" "$(printf 'a\\tb')" "expected literal backslash got $_slug" || return 1
|
||||
|
||||
if is_resolvable_address 'not an ip'; then
|
||||
echo 'is_resolvable_address: expected reject for spaces' >&2
|
||||
|
||||
@@ -17,12 +17,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=luci-app-wwand
|
||||
PKG_VERSION:=1.6.8_p4
|
||||
PKG_RELEASE:=30
|
||||
PKG_VERSION:=1.6.8_p8
|
||||
PKG_RELEASE:=31
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/ddimension/luci-app-wwand.git
|
||||
PKG_SOURCE_VERSION:=3d7585f3afe7eca05d55a179f4acc56653d8eac3
|
||||
PKG_SOURCE_VERSION:=ee53e2130cc68616aabb0f8e9343d124ae5dfe63
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
|
||||
@@ -10,7 +10,7 @@ register_init() {
|
||||
local init="$2"
|
||||
shift; shift
|
||||
|
||||
if [ -x "$init" ] && ! grep -sqE 'USE_PROCD=.' "$init"; then
|
||||
if [ -x "$init" ] && "$init" enabled && ! grep -sqE 'USE_PROCD=.' "$init"; then
|
||||
logger -t "ucitrack" "Setting up /etc/config/$config reload trigger for non-procd $init"
|
||||
procd_add_config_trigger "config.change" "$config" "$init" "$@"
|
||||
fi
|
||||
|
||||
@@ -20,12 +20,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=luci-proto-wwand
|
||||
PKG_VERSION:=1.6.8
|
||||
PKG_RELEASE:=14
|
||||
PKG_VERSION:=1.6.8_p1
|
||||
PKG_RELEASE:=15
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/ddimension/luci-proto-wwand.git
|
||||
PKG_SOURCE_VERSION:=9955af19483341997923b0d03e7644622636c640
|
||||
PKG_SOURCE_VERSION:=43c71ef81faa7c2a164a9026ab526d3e2544a88e
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
|
||||
+3
-3
@@ -13,12 +13,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=wwand-ipa
|
||||
PKG_VERSION:=0.1.0_p1
|
||||
PKG_RELEASE:=2
|
||||
PKG_VERSION:=0.1.0_p2
|
||||
PKG_RELEASE:=3
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/ddimension/wwand-ipa.git
|
||||
PKG_SOURCE_VERSION:=f84625427503041472ba10f32df4969091a86f17
|
||||
PKG_SOURCE_VERSION:=5b20069accf93daf685867e5902fb97e63413a36
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
|
||||
+11
-3
@@ -15,12 +15,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=wwand-ipad
|
||||
PKG_VERSION:=0.1.0
|
||||
PKG_RELEASE:=2
|
||||
PKG_VERSION:=0.1.0_p21
|
||||
PKG_RELEASE:=3
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/ddimension/ipad.git
|
||||
PKG_SOURCE_VERSION:=fbb175f4d272f0db45b3bc006392f172cd248aa5
|
||||
PKG_SOURCE_VERSION:=fef4e5807f43eebc54327ff6f3751705d74b2dd7
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only Apache-2.0
|
||||
@@ -30,6 +30,14 @@ PKG_MAINTAINER:=
|
||||
MBEDTLS_VERSION:=3.6.7
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
|
||||
# mbedTLS' MULADDC inline assembly (library/bn_mul.h) is plain MIPS32 and cannot
|
||||
# be assembled inside a MIPS16 function, which is how OpenWrt compiles
|
||||
# mips_24kc/mipsel_24kc by default: bignum_core.c fails with "invalid operands
|
||||
# `lw $10,16($sp)'" and "unrecognized opcode `addi'" (run 36239783275, both mips
|
||||
# legs, nothing else). Same reason wwand-lpac sets it for wolfSSL's SP math.
|
||||
PKG_BUILD_FLAGS:=no-mips16
|
||||
|
||||
CMAKE_BINARY_SUBDIR:=openwrt-build
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
@@ -0,0 +1,227 @@
|
||||
#
|
||||
# Remote SIM for wwand: a SIM card in a reader on the router — or on another
|
||||
# machine over SSH — used by the modem as if it sat in its own slot, through
|
||||
# Qualcomm's QMI UIM Remote service. A wwand PLUGIN (wwand plugins.uc), kept
|
||||
# out of the wwand sources on purpose: it is not meant for upstream.
|
||||
#
|
||||
# Sources live in https://github.com/ddimension/wwand-rsim, tagged vX.Y.Z. Pin
|
||||
# a new commit with `scripts/bump-source.sh wwand-rsim <tag|commit>`.
|
||||
#
|
||||
# Three packages from one source:
|
||||
# - rsim-card: the card-side helper alone (C, the repo's helper/ subdirectory,
|
||||
# CMake). What a SIM HOST needs — another router that only holds the
|
||||
# reader: no wwand, no ucode, just the tool in /usr/bin, where an SSH reader
|
||||
# (`ssh:<user>@<host>:<reader>`) runs it by name.
|
||||
# - wwand-rsim: the plugin and the wwandctl command (ucode, installed as they
|
||||
# are), pulling in rsim-card for readers on the modem's own router.
|
||||
# - luci-app-wwand-rsim: the LuCI page (luci/), installed explicitly from
|
||||
# $(PKG_BUILD_DIR) like luci-app-wwand-ipa.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=wwand-rsim
|
||||
PKG_VERSION:=0.0.1_p27
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/ddimension/wwand-rsim.git
|
||||
PKG_SOURCE_VERSION:=a0cc81ccb480c19bcf5808cc148b17a2f5d26ca4
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
PKG_MAINTAINER:=
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/cmake.mk
|
||||
|
||||
# The helper is the repo's helper/ subtree, in two builds (VARIANTs, built one
|
||||
# after the other — no PKG_PARALLEL_VARIANTS, see the hostapd race in this
|
||||
# feed's history): rsim-card without PC/SC — the Smartmouse USB, Phoenix and
|
||||
# AT readers need none of it, and pcscd is a daemon a small SIM host should
|
||||
# not have to run — and rsim-card-pcsc with it, for any CCID reader through
|
||||
# pcscd. libusb is for the Smartmouse USB in both: its clock and mode are set
|
||||
# and its UART driven over USB directly, no kernel serial driver needed.
|
||||
CMAKE_SOURCE_SUBDIR:=helper
|
||||
CMAKE_BINARY_SUBDIR:=build
|
||||
CMAKE_OPTIONS += \
|
||||
-DWITH_LIBUSB=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DRSIM_WERROR=OFF
|
||||
|
||||
ifeq ($(BUILD_VARIANT),pcsc)
|
||||
CMAKE_OPTIONS += -DWITH_PCSC=ON
|
||||
else
|
||||
CMAKE_OPTIONS += -DWITH_PCSC=OFF
|
||||
endif
|
||||
|
||||
# Beside the package: the same helper, linked statically, as a file the site
|
||||
# hands out. A SIM host reached with `ssh:<user>@<host>:<reader>` runs
|
||||
# `rsim-card` by name and needs nothing else of this project, so it should be
|
||||
# able to fetch one file — build.yml collects $(BIN_DIR)/rsim-card into
|
||||
# public/tools/<arch>/, publish-feed.sh puts it under tools/<channel>/<arch>/
|
||||
# and the start page links it. It is NOT part of any .apk.
|
||||
#
|
||||
# x86_64 only, because that is what people plug a reader into; adding an arch
|
||||
# is one more value here. The second CMake tree repeats the toolchain settings
|
||||
# of include/cmake.mk rather than reusing Build/Configure/Default, which is
|
||||
# bound to CMAKE_BINARY_DIR. RSIM_STATIC=ON (upstream 7452f28) takes the static
|
||||
# pkg-config link lines, so libusb comes along — on musl it needs no udev, the
|
||||
# reason the same switch cannot produce a static USB build on a glibc distro.
|
||||
RSIM_STATIC_ARCHS:=x86_64
|
||||
|
||||
# once, from the plain build: the static file carries no PC/SC either
|
||||
ifeq ($(BUILD_VARIANT)$(filter $(ARCH),$(RSIM_STATIC_ARCHS)),nopcsc$(ARCH))
|
||||
define Build/Compile/StaticTool
|
||||
mkdir -p $(PKG_BUILD_DIR)/build-static
|
||||
(cd $(PKG_BUILD_DIR)/build-static; \
|
||||
CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \
|
||||
LDFLAGS="$(TARGET_LDFLAGS)" \
|
||||
cmake \
|
||||
--no-warn-unused-cli \
|
||||
-DCMAKE_SYSTEM_NAME=Linux \
|
||||
-DCMAKE_SYSTEM_VERSION=1 \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=$(ARCH) \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_C_FLAGS_RELEASE="-DNDEBUG" \
|
||||
-DCMAKE_C_COMPILER="$(CMAKE_C_COMPILER)" \
|
||||
-DCMAKE_AR="$(CMAKE_AR)" \
|
||||
-DCMAKE_NM="$(CMAKE_NM)" \
|
||||
-DCMAKE_RANLIB="$(CMAKE_RANLIB)" \
|
||||
-DCMAKE_FIND_ROOT_PATH="$(CMAKE_FIND_ROOT_PATH)" \
|
||||
-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \
|
||||
-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \
|
||||
-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY \
|
||||
-DCMAKE_PREFIX_PATH=$(STAGING_DIR) \
|
||||
-DCMAKE_SKIP_RPATH=TRUE \
|
||||
-DCMAKE_STRIP=: \
|
||||
-DRSIM_STATIC=ON \
|
||||
-DWITH_PCSC=OFF \
|
||||
-DWITH_LIBUSB=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DRSIM_WERROR=OFF \
|
||||
$(CMAKE_SOURCE_DIR))
|
||||
+$(MAKE) -C $(PKG_BUILD_DIR)/build-static rsim-card
|
||||
$(INSTALL_DIR) $(BIN_DIR)
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/build-static/rsim-card $(BIN_DIR)/rsim-card
|
||||
endef
|
||||
Hooks/Compile/Post += Build/Compile/StaticTool
|
||||
endif
|
||||
|
||||
UCDIR:=/usr/share/ucode/wwand
|
||||
|
||||
define Package/rsim-card
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
SUBMENU:=WWAN
|
||||
TITLE:=SIM card reader helper for wwand-rsim (SIM host)
|
||||
# libusb-1.0: the Smartmouse USB backend (clock, mode and UART over USB)
|
||||
DEPENDS:=+libusb-1.0
|
||||
VARIANT:=nopcsc
|
||||
# the provider apk and Kconfig prefer for `rsim-card` (a dependency of
|
||||
# wwand-rsim): the plain one; rsim-card-pcsc provides the same name, and
|
||||
# same-provide variants need a default (include/package-pack.mk)
|
||||
DEFAULT_VARIANT:=1
|
||||
endef
|
||||
|
||||
define Package/rsim-card-pcsc
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
SUBMENU:=WWAN
|
||||
TITLE:=SIM card reader helper for wwand-rsim, with PC/SC readers
|
||||
# pcscd + ccid: a CCID reader needs the daemon and its driver, and a
|
||||
# helper that can reach neither would only fail at the first card
|
||||
DEPENDS:=+libusb-1.0 +libpcsclite +pcscd +ccid
|
||||
VARIANT:=pcsc
|
||||
PROVIDES:=rsim-card
|
||||
CONFLICTS:=rsim-card
|
||||
endef
|
||||
|
||||
define Package/rsim-card-pcsc/description
|
||||
rsim-card with the PC/SC backend as well (pcsc:<reader name or index>):
|
||||
any CCID smart-card reader through pcscd, besides the Smartmouse USB,
|
||||
Phoenix and AT readers. Installed instead of rsim-card; pulls in pcscd
|
||||
and the CCID driver. `rsim-card --list` shows the readers pcscd knows.
|
||||
endef
|
||||
|
||||
define Package/rsim-card/description
|
||||
The card-side helper of wwand-rsim on its own: it owns a SIM card reader
|
||||
(Phoenix/Smartmouse serial readers, the WB Electronics Smartmouse USB over
|
||||
libusb) or the SIM of a modem it reaches over its AT port (at:<tty>,
|
||||
AT+CSIM; that modem's radio is switched off while its card is lent), and
|
||||
speaks JSON lines on stdin/stdout. Install it on a router that only holds
|
||||
the reader or the modem (a SIM host); the router with the using modem
|
||||
reaches it over SSH (rsim_reader ssh:<user>@<host>:<reader>). Needs
|
||||
nothing of wwand.
|
||||
endef
|
||||
|
||||
define Package/wwand-rsim
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
SUBMENU:=WWAN
|
||||
TITLE:=Remote SIM (QMI UIM Remote) for wwand
|
||||
# wwand-qmi: the plugin allocates its UIM Remote client on the modem's QMI
|
||||
# channel (core dep qmi_client); rsim-card: the helper for a reader on this
|
||||
# router (the plugin looks for it in /usr/bin since upstream 56c9a71)
|
||||
DEPENDS:=+wwand-qmi +rsim-card
|
||||
VARIANT:=nopcsc
|
||||
endef
|
||||
|
||||
define Package/wwand-rsim/description
|
||||
Lets a Qualcomm modem use a SIM card that sits in a reader on the router,
|
||||
or on another machine reached over SSH, as if it were in the modem's own
|
||||
slot (QMI UIM Remote). Readers: Phoenix/Smartmouse serial readers, and the
|
||||
WB Electronics Smartmouse USB driven over libusb (clock and mode set by
|
||||
software). Configure per modem with `option rsim_reader` (phoenix:<tty>,
|
||||
wbsm:, or ssh:<user>@<host>:<reader>). The modem firmware must have the
|
||||
service enabled: `wwandctl rsim [modem] enable --reset` (Quectel).
|
||||
Another wwand modem can lend its card instead (`modem:<donor>`), over the
|
||||
SIM Access Profile or APDU by APDU (QMI UIM or AT+CSIM).
|
||||
endef
|
||||
|
||||
define Package/luci-app-wwand-rsim
|
||||
SECTION:=luci
|
||||
CATEGORY:=LuCI
|
||||
SUBMENU:=3. Applications
|
||||
TITLE:=Remote SIM page for wwand-rsim
|
||||
DEPENDS:=+luci-base +wwand-rsim
|
||||
PKGARCH:=all
|
||||
VARIANT:=nopcsc
|
||||
endef
|
||||
|
||||
define Package/luci-app-wwand-rsim/description
|
||||
Network -> Remote SIM: per modem, where its SIM comes from (its own, a
|
||||
reader on the router or on another machine over SSH, or another modem
|
||||
lending its card), the state of the remote card, and the router's SSH key.
|
||||
endef
|
||||
|
||||
define Package/rsim-card/install
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(INSTALL_BIN) $(CMAKE_BINARY_DIR)/rsim-card $(1)/usr/bin/
|
||||
endef
|
||||
|
||||
Package/rsim-card-pcsc/install = $(Package/rsim-card/install)
|
||||
|
||||
define Package/wwand-rsim/install
|
||||
$(INSTALL_DIR) $(1)$(UCDIR)/plugins $(1)$(UCDIR)/ctl
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/plugins/rsim.uc $(1)$(UCDIR)/plugins/
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/ctl/rsim.uc $(1)$(UCDIR)/ctl/
|
||||
endef
|
||||
|
||||
# named, not globbed (the rule luci-app-wwand follows)
|
||||
define Package/luci-app-wwand-rsim/install
|
||||
$(INSTALL_DIR) $(1)/www/luci-static/resources/view/wwand
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/luci/htdocs/luci-static/resources/view/wwand/rsim.js \
|
||||
$(1)/www/luci-static/resources/view/wwand/
|
||||
$(INSTALL_DIR) $(1)/usr/share/luci/menu.d $(1)/usr/share/rpcd/acl.d
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/luci/root/usr/share/luci/menu.d/luci-app-wwand-rsim.json \
|
||||
$(1)/usr/share/luci/menu.d/
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/luci/root/usr/share/rpcd/acl.d/luci-app-wwand-rsim.json \
|
||||
$(1)/usr/share/rpcd/acl.d/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,rsim-card))
|
||||
$(eval $(call BuildPackage,rsim-card-pcsc))
|
||||
$(eval $(call BuildPackage,wwand-rsim))
|
||||
$(eval $(call BuildPackage,luci-app-wwand-rsim))
|
||||
+4
-4
@@ -50,12 +50,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=wwand
|
||||
PKG_VERSION:=1.6.8_p25
|
||||
PKG_RELEASE:=58
|
||||
PKG_VERSION:=1.6.8_p41
|
||||
PKG_RELEASE:=59
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/ddimension/wwand.git
|
||||
PKG_SOURCE_VERSION:=cd55f6dd5c0b81d47f7dd6f8a07ab69b58bd1061
|
||||
PKG_SOURCE_VERSION:=113788ba066262395e84ac8f8e9ad11a5facfaf8
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
@@ -101,7 +101,7 @@ WWAND_BASE_UC:=apndb.uc atcmd.uc atcmd_parse.uc atport.uc backend.uc board.uc \
|
||||
hwops.uc log.uc modem_common.uc modem_datapath_qmi.uc modem_init_qmi.uc plugins.uc \
|
||||
modem_quirks.uc modeswitch.uc ncm_vendors.uc netlink.uc netsel_ops.uc \
|
||||
protocol_switch.uc reconnect.uc recovery.uc regdetail.uc sim.uc sim_plmn.uc \
|
||||
simops.uc sms.uc sms_pdu.uc telemetry_mbim.uc telemetry_ncm.uc \
|
||||
simops.uc siminventory.uc sms.uc sms_pdu.uc telemetry_mbim.uc telemetry_ncm.uc \
|
||||
telemetry_qmi.uc transport.uc ubus.uc version.uc wwandctl_fmt.uc
|
||||
WWAND_BASE_CODEC:=arfcn_bands.uc hex.uc qmux.uc tlv.uc
|
||||
WWAND_BASE_SCHEMA:=cat.uc ctl.uc dms.uc dsd.uc loc.uc loc_lazy.uc merge.uc nas.uc pdc.uc rat.uc \
|
||||
|
||||
Reference in new issue
Block a user