1

Temat: NAT Reflection / NAT Loopback w OpenWRT 21.02

Jestem w trakcie aktualizacji APU2 z 18.06 do 21.02-SNAPSHOT, r16500-b99d7aecc8
Własna kompilacja z patchami od @Cezary
Czysta instalacja, dostosowanie konfiguracji do nowej.
Z większych zmian zamiast OpenVPN jest Wireguard, doszedł Docker.

Mam problem z NAT Loopback na 21.02

Przekierowanie działa ale nie mogę wbić się na domenę z sieci lokalnej.

config redirect
        option enabled '1'
        option target 'DNAT'
        option src 'wan'
        option dest 'lan'
        option proto 'tcp'
        option src_dport '44279'
        option dest_port '8123'
        option dest_ip '10.1.1.60'
        option name 'Home Assistant'

Natrafiłem na stronę kolegi @morfik https://morfikov.github.io/post/nat-ref … w-openwrt/

OpenWRT tworzy wpisy w firewalu

root@apu2:/etc/config# iptables -t nat -L | grep Home
SNAT       tcp  --  10.1.1.0/24          OMV.lan              tcp dpt:8123 /* !fw3: Home Assistant (reflection) */ to:10.1.1.1
DNAT       tcp  --  10.1.1.0/24          cxxx-xx.icpnet.pl    tcp dpt:44279 /* !fw3: Home Assistant (reflection) */ to:10.1.1.60:8123
DNAT       tcp  --  anywhere             anywhere             tcp dpt:44279 /* !fw3: Home Assistant */ to:10.1.1.60:8123


-A zone_lan_postrouting -s 10.1.1.0/24 -d 10.1.1.60/32 -p tcp -m tcp --dport 8123 -m comment --comment "!fw3: Home Assistant (reflection)" -j SNAT --to-source 10.1.1.1
-A zone_lan_prerouting -s 10.1.1.0/24 -d 85.xxx.xxx.xx/32 -p tcp -m tcp --dport 44279 -m comment --comment "!fw3: Home Assistant (reflection)" -j DNAT --to-destination 10.1.1.60:8123
-A zone_wan_prerouting -p tcp -m tcp --dport 44279 -m comment --comment "!fw3: Home Assistant" -j DNAT --to-destination 10.1.1.60:8123

Uruchomiłem Wireshark na komputerze w domu ale nie bardzo go ogarniam.
Udało mi się znaleźć w logach po IP jak w przykładzie @morfik "TCP Retransmission"

Proszę o pomoc w zdiagnozowaniu gdzie leży problem.

APU2 @ OpenWrt 18.06-SNAPSHOT, r7852-7ac6044632

2 (edytowany przez Graffy 2022-03-10 14:32:58)

Odp: NAT Reflection / NAT Loopback w OpenWRT 21.02

Drążę temat, wygląda na to, że nie łapie się na regułę SNAT


root@apu2:/etc/config# iptables -t nat -L -v | grep Home
    0     0 SNAT       tcp  --  any    any     10.1.1.0/24          OMV.lan              tcp dpt:8123 /* !fw3: Home Assistant (reflection) */ to:10.1.1.1
    0     0 DNAT       tcp  --  any    any     10.1.1.0/24          cxxx-xx.icpnet.pl    tcp dpt:44279 /* !fw3: Home Assistant (reflection) */ to:10.1.1.60:8123
    0     0 DNAT       tcp  --  any    any     anywhere             anywhere             tcp dpt:44279 /* !fw3: Home Assistant */ to:10.1.1.60:8123
root@apu2:/etc/config# iptables -t nat -L -v | grep Home
    0     0 SNAT       tcp  --  any    any     10.1.1.0/24          OMV.lan              tcp dpt:8123 /* !fw3: Home Assistant (reflection) */ to:10.1.1.1
    0     0 DNAT       tcp  --  any    any     10.1.1.0/24          cxxx-xx.icpnet.pl    tcp dpt:44279 /* !fw3: Home Assistant (reflection) */ to:10.1.1.60:8123
    4   283 DNAT       tcp  --  any    any     anywhere             anywhere             tcp dpt:44279 /* !fw3: Home Assistant */ to:10.1.1.60:8123
root@apu2:/etc/config# iptables -t nat -L -v | grep Home
    0     0 SNAT       tcp  --  any    any     10.1.1.0/24          OMV.lan              tcp dpt:8123 /* !fw3: Home Assistant (reflection) */ to:10.1.1.1
   14   840 DNAT       tcp  --  any    any     10.1.1.0/24          cxxx-xx.icpnet.pl    tcp dpt:44279 /* !fw3: Home Assistant (reflection) */ to:10.1.1.60:8123
    4   283 DNAT       tcp  --  any    any     anywhere             anywhere             tcp dpt:44279 /* !fw3: Home Assistant */ to:10.1.1.60:8123


Przy próbie połączenia z zewnątrz rośnie ostatnia reguła.
Przy próbie połączenia z lan, łapie się tylko na drugą.
Pierwsza ani drgnie.

Na 18.06 działało to poprawnie...

APU2 @ OpenWrt 18.06-SNAPSHOT, r7852-7ac6044632

3

Odp: NAT Reflection / NAT Loopback w OpenWRT 21.02

1. Otwórz port 44279 na lanie (tak, lan) i zobacz czy działa.
2. Sprawdź co będzie jak zrobisz 8123 na 8123 a nie  44279

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

4

Odp: NAT Reflection / NAT Loopback w OpenWRT 21.02

Otwarłem port na LAN analogicznie jak na WAN, @Cezary o to chodziło?

config rule
        option name 'HA test'
        option src 'lan'
        option target 'ACCEPT'
        option proto 'tcp'
        option dest_port '44279'
        option enabled '1'

Próbowałem 44279 oraz 8123 i oba na raz, nie pomogło.
Przekierowanie 8123 na 8123 również nie działa.

APU2 @ OpenWrt 18.06-SNAPSHOT, r7852-7ac6044632

5

Odp: NAT Reflection / NAT Loopback w OpenWRT 21.02

Cześć
I jak walka z loopback?
Mam podobny problem z tym, że na wersji 19.07.
Jak dodam do dhcp domain adres domenowy i zepnę z lokalnym to łączy ale tylko w przeglądarce. Aplikacja homeassistant milczy.
Tracert na adres domenowy ma kilkanaście hop.
Wychodzi z routera na adres WAN później krąży aby wrócić przez bramę dostawcy na właściwy adres.
Mam uruchomione  MWAN.

6

Odp: NAT Reflection / NAT Loopback w OpenWRT 21.02

Na tą chwilę odpuściłem z braku czasu.
Mam zamiar postawić czysty obraz od @Cezarego i testować, kiedy zmiany w konfiguracji spowodują brak "NAT Loopback"
Może w majówkę się uda smile

APU2 @ OpenWrt 18.06-SNAPSHOT, r7852-7ac6044632

7 (edytowany przez Jarecki78 2022-11-24 20:46:54)

Odp: NAT Reflection / NAT Loopback w OpenWRT 21.02

Cześć
Openwrt 22.03 nie wiem jak na poprzednim bo nie będę wracał.
Częściowo jak Cezary napisał ale nie regułą a przekierowaniem portu.

8123 z LAN do adresu serwera na port 8123. Ruszyła apka. Przeglądarki też działają. Wpisu z host i ip już nie mam - dhcp config domain

config redirect
        option dest 'lan'
        option target 'DNAT'
        list proto 'tcp'
        option src 'wan'
        option src_dport '8123'
        option dest_ip '192.168.1.2'
        option dest_port '8123'
        option name 'HA 8123'

config redirect
        option dest 'lan'
        option target 'DNAT'
        option name 'HA 8123 LAN'
        list proto 'tcp'
        option src 'lan'
        option src_dport '8123'
        option dest_ip '192.168.1.2'
        option dest_port '8123'

Jarek

EDIT

Loopback działa o ile na porcie WAN jest adres publiczny przypisany do domeny do której odwołujemy się. Jak adres jest za NAT'em wtedy nie działa.
Czy jest szansa aby to ruszyło jak było w poprzednich wydaniach?

Jarek