Рейтинг:0

nftables nat counter неполный

флаг cn

Я пытаюсь изучить nftables/nat и у меня есть простая экспериментальная установка:

Машина1 (маршрутизатор):
    - эт0 192.168.0.1
    - эт1 192.168.1.1

Машина2:
    - эт0 192.168.1.2

Для Machine1 я настраиваю NAT:

IP-адрес таблицы {
        посттрассировка цепи {
                введите nat hook приоритет постмаршрутизации srcnat; политика принять;
                ipdddr 192.168.1.2 счетчик пакетов 0 байт 0
                ip saddr 192.168.1.2 счетчик пакетов 6 байт 420
                ip saddr 192.168.1.0/24 oif "eth0" snat to 192.168.0.1
        }
}

NAT работает нормально, я могу получить доступ к 192.168.0.1 (и выше) с Machine2.

Однако я борюсь со счетчиком: цифры выше взяты из wget stackoverflow.com от Machine2, и намного ниже, чем ls -l index.html говорит (~ 180k). Я мог представить, что это только исходящие байты/пакеты, входящие просто не учитываются (я добавил отец счетчик в надежде получить это).

Что мне не хватает?

Рейтинг:0
флаг us

Когда соединение проходит через NAT, соединение обрабатывается с помощью отслеживания соединения.Это означает, что только начальные пакеты для соединения (SYN, SYN-ACK, ACK) проходят через правило NAT.

Остальные пакеты обрабатываются с помощью записи отслеживания соединения, которая устанавливается при запуске NAT.

Если вы хотите подсчитывать пакеты, вам нужно добавить правила в фильтр Таблица ВПЕРЕД цепь.

A.B avatar
флаг cl
A.B
На самом деле только первый пакет проходит через NAT (для TCP это пакет SYN). Даже SYN-ACK и ACK являются частью записи conntrack, которая уже существует и изменена для операций NAT за единственный раз, когда правило nat nftables увидело первый пакет (в записи conntrack в состоянии NEW). Эти следующие пакеты находятся в той же записи conntrack, поэтому больше не находятся в состоянии NEW, поэтому больше не проходят через nftables nat.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.