I'm experiencing a strange issue, so I would really appreciate some help.
The setup I have is like the following:

For some time I've been using only LAN-1 with 2 ISPs (switching default gateway to ISP-2 when ISP-1 is down).
Then a new network (LAN-2) joined and I had to provide LAN-2 with internet connectivity as well. I decided to use ISP-2, since it's idle most of the time anyway. Also, I had to isolate them not to be able to reach each other, for security reasons. So, I added a routing mark in the prerouting phase to mark all the packets originating from LAN-2 with:
Code: Select all
ip firewall mangle add chain=prerouting in-interface=eth2 action=mark-routing new-routing-mark=packets-from-lan-2
Code: Select all
ip route add dst-address=0.0.0.0/0 gateway=eth6 routing-mark=packets-from-lan1
When doing a traceroute from LAN-2 to a random ip address on the internet I could see the following:
Code: Select all
C:\> tracert -d google.com
Tracing route to google.com [216.58.214.206]
over a maximum of 30 hops:
1 2 ms 1 ms 2 ms 10.2.0.1
2 6 ms 3 ms 3 ms 2.2.2.2
3 7 ms 5 ms 8 ms ...
I configured a port forwarding for LAN-1, in order to have some servers visible from the internet, like this:
Code: Select all
ip firewall nat add chain=dstnat dst-address=3.3.3.3 action=dst-nat to-addresses=10.1.x.x
Btw, I had to add an ip address 3.3.3.3 to the router, otherwise this dst-nat thing wouldn't work. Is that supposed to work like that?
Anyway, the problem I have now is that I can't reach 3.3.3.3 from LAN-2. I was expecting a traceroute from LAN-2 to 3.3.3.3 would give me something like this:
Code: Select all
10.2.0.1
2.2.2.2
...
1.1.1.1
3.3.3.3

Does anyone have any idea what could be the issue here or how could I try to troubleshoot this properly?