主路由:192.168.0.1/24,开启dhcp,lan的dns和gw设置为旁路由。
旁路由:192.168.0.2,静态ip,gw=主路由。
旁路由加了一条转发:
iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
具体细节见
https://www.right.com.cn/forum/thread-2983767-1-1.html
那么在做端口转发的时候遇到问题了
PlanA:主路由-旁路由-设备转发
比如访问内网的9999,需要主路由转发到旁路由的9999,旁路由再转发给设备的9999
但是此时的问题是,旁路由转发的是Lan侧的流量,导致访问其他服务的9999也会被拦截
可选的解决方案:旁路由加一个来源限制(我还没成功)
PlanB:直接主路由向设备转发,但是收不到回包
这也好理解,由于主路由是NAT,一个包进来的dst和出去的src应该一致。
但是端口转发的时候,包直接发给设备,dst是设备,
设备回包给网关,网关发给路由器,这样回包的src就是网关(旁路由了)
于是想到俩解决方案:
1 在设备单独设置转发规则,这个端口的包直接给路由而不是网关
2 在网关上修改src为对应设备
求问各位大神是这样么。。