1. Ip-Firewall-Nat
Chain:srcnat
Src.Address:192.168.10.1
Routing Mark:192.168.223.3
Action:src-nat
To Address 33.33.33.33
Hiki 11:22:21
有点问题,我再想想。大体是这头绪,源地址和目的地址有点乱
老莫 11:26:36
我昨天有想过这方式,不过跟你有点差别,我一会试一下你提出这方案
老莫 11:26:41
我觉得有可行
Hiki 11:29:05
关键是数据怎么样标记 怎么样在NAT上引用这个标记
Hiki 11:30:09
还有在主路由上关闭掉masquerade测试
Hiki 11:31:03
masquerade做了以后数据走向是查找ip routes表
Hiki 11:31:25
虽然你把 手工nat放在nat表前面,但还是有影响。
Hiki 11:31:33
路由表里有 默认网关即可。
Hiki 11:32:23
现在的做法就让数据关心nat表和标记 不关心路由表
老莫 11:32:27
这个可不可以这样:在主VPN上比如:将从in-interface=pptp-1进来的数据的源地址先分离出来增加到一个地址列表,然后再做第二个标记,所有要从主PVN再出去到这个地址列表的数据进行标记,再去路由里面指定这个标记全部走VPN1出去
老莫 11:33:07
Hiki 11:32:23
现在的做法就让数据关心nat表和标记 不关心路由表
这个方法也有一定的可行性
老莫 11:33:19
不过得再想想一下
Hiki 11:35:34
你刚才说的标记pptp-1的源地址表 但是这个源IP地址只有VPN1路由知道 主路由并不知道客户1的IP。因为在VPN1路由上已经经过一次NAT转换,主路由接受到得源IP地址是VPN1路由转换过后的192.168.222.3
Hiki 11:37:17
除非想办法让主路由 学习到 VPN1抓出来源IP(公网IP).或者取消VPN1路由上的NAT转换(但不可能,因为你已经做了80端口的NAT转换)
Hiki 11:38:15
简单点就是 主路由获取不到 公网源IP
老莫 11:41:00
嗯
老莫 11:41:42
主路由上面的确是只能得到那个192.168.222.3
Hiki 11:42:19
我刚才的那个方法也有问题,标记了192.168.222.3 没任何意义
Hiki 11:43:32
因为192.168.10.1返回的数据源地址和目的地址不可能有192.168.222.3
Hiki 11:44:31
标记数据包也不可以 用户1的数据就算打了标签,到192.168.10.1,这个标记同样没了。
老莫 11:44:47
嗯
老莫 11:44:53
这个的确是
Hiki 11:45:04
但我觉得可以实现。
Hiki 11:45:17
现在思路宽了大家继续向。
Hiki 11:46:38
可以考虑减少一个NAT过程。
老莫 11:47:02
就是在主VPN上不做NAT
Hiki 11:47:07
是的
老莫 11:47:12
考虑不在主VPN上不做NAT
Hiki 11:47:31
经过2个NAT转换 再做这种分流是很难得
老莫 11:48:06
但只是做路由策略的话如何做,一个源IP的数据要同时走两条VPN线路跑
并且还得知道那个数据是走那条线的
Hiki 11:48:13
VPN1上的路由直接可以和web服务器通信,
Hiki 11:49:29
但是少了一次NAT就可以获取到两个VPN路由各自的源地址(客户1和客户2的IP),然后就可以标记出来了
Hiki 11:51:01
主VPN上的那一级NAT不可以取消,取消了就失去这个网络结构意义了
老莫 11:51:28
不取消的话没有办法做
Hiki 11:51:31
取消了 主路由就是个摆设了
老莫 11:52:39
除非做那个双网关,直接标记从192.168.1.10出来的数据,然后再在路由内添加两个VPN网关,全部强制这个标记就走这两个网关
Hiki 11:53:41
怎么区分?
老莫 11:54:02
这个就是问题的所在