B
Bozza Sysadmin
@bozzaru23 подп.
20просмотров
87.0%от подписчиков
27 января 2026 г.
Score: 22
Комментарий к заметке https://bozza.ru/art-379.html Меня тут спросил один человек по поводу настройки hairpin, дополню так, может и другим будет проще понять. 1. Клиент отправляет пакет Например: 192.168.1.10 → 1.2.3.4:443. MikroTik получает пакет. 2. Выполняется цепочка dstnat (PREROUTING) MikroTik переписывает адрес назначения: dst-address: 1.2.3.4 → 192.168.1.100 Но пакет ещё не отправлен — он только прошёл PREROUTING-хуку. 3. Выполняется маршрутизация Теперь роутер решает, куда отправить пакет: он видит, что 192.168.1.100 находится в локальной сети (LAN-интерфейс), выбирает интерфейс LAN как выходной. Это всё ещё не выход пакета, это лишь принятие решения. 4. Пакет проходит цепочку forward Это обычная межинтерфейсная передача (если фильтров нет — просто проходит). 5. Попадает в цепочку srcnat (POSTROUTING) Это последний этап перед отправкой. Здесь и срабатывает правило: если источник из LAN, а назначение внутренняя машина по проброшенному порту, то делаем masquerade/SNAT. Вот теперь пакет действительно выходит наружу. Это и есть ответ: SRC-NAT применяется позже, всегда после маршрутизации, перед самой отправкой, независимо от того, был ли выполнен DST-NAT ранее. Ключевая идея DST-NAT и SRC-NAT не конкурируют и не блокируют друг друга, потому что работают на разных этапах жизненного цикла пакета. DST-NAT = изменить адрес назначения до маршрутизации. SRC-NAT = изменить адрес источника после маршрутизации. Поэтому пакет всегда может пройти оба правила NAT в одном прохождении — и именно это обеспечивает NAT-hairpin.
20
просмотров
1551
символов
Нет
эмодзи
Нет
медиа

Другие посты @bozzaru

Все посты канала →
Комментарий к заметке https://bozza.ru/art-379.html Меня тут — @bozzaru | PostSniper