I was looking around and saw that this may be called a “hairpin nat” ? I messed around with some rules and added this, which works, but I want to know if this is correct and the best way to achieve what I want to do:
add action=src-nat chain=srcnat comment=“Hairpin NAT to for motioneye” dst-address=192.168.1.9 src-address=192.168.1.0/24 to-addresses=my_public_ip_here
In summary, what happens is the internal device receives an answer from the internal, dst-natted IP when it expects the source IP it to come from the public IP it requested; hairpin nat does an additional src-nat so that device receives a answer with the src-address it expects (the one it requested).
You could also use action=masquerade if your WAN interface has only a public IP that is dynamically fetched from your ISP.
Do you mean this?
add action=masquerade chain=srcnat comment=“Hairpin NAT to for motioneye” dst-address=192.168.1.9 src-address=192.168.1.0/24 to-addresses=my_public_ip_here
Okay thanks, I will try this when I get home, unfortunately I am having packet loss, disconnect issues again (i made another post in this forum). So I cannot implement the change while I am remote.