Document grouped control, isolated helper ports and ingress correlation
This commit is contained in:
1 parent
179aa0ef35
commit
2ba011d3fd
2 files changed
+34
-22
No files matched your search
@@ -1,6 +1,6 @@
|
||||
/* NAT-детектор владельца endpoint. Один раунд на рабочий сокет:
|
||||
* S->B observation, B->C ingress(S), S->C/C-alt observations, S->B repeat.
|
||||
* Команды к C проходят через B: контроль не открывает фильтр S->C. */
|
||||
/* Владелец выбирает пару из всех групп; управление A->B->C идёт через router.
|
||||
* S->B observation, C->S controlled ingress, S->C/C-alt observations, S->B repeat.
|
||||
* Два отдельных порта C и короткий приоритет холодного owner сохраняют независимость ingress. */
|
||||
#include "nat_detection.h"
|
||||
|
||||
#include <stdio.h>
|
||||
@@ -735,6 +735,9 @@ static void helper_remove(struct nat_probe *probe) {
|
||||
|
||||
static void helper_finish(struct nat_probe *probe, uint8_t reason) {
|
||||
probe->message.command = NAT_RESULT; probe->message.reason = reason;
|
||||
if (reason) DEBUG_WARN(DEBUG_CATEGORY_NAT, "NAT helper failed group=%016llx owner=%016llx round=%016llx step=%u reason=%s",
|
||||
(unsigned long long)probe->group_id, (unsigned long long)read64(probe->message.owner),
|
||||
(unsigned long long)read64(probe->message.round), probe->message.step, nat_check_reason_name(reason));
|
||||
DEBUG_DEBUG(DEBUG_CATEGORY_NAT, "NAT helper done owner=%016llx round=%016llx step=%u sent=%u received=%u errors=%u reason=%s",
|
||||
(unsigned long long)read64(probe->message.owner), (unsigned long long)read64(probe->message.round),
|
||||
probe->message.step, probe->message.sent, probe->message.received, probe->message.errors, nat_check_reason_name(reason));
|
||||
|
||||
Reference in new issue
Block a user