我们有一个Cisco ASA 5505(版本8.2(2)),有三个接口:
外部:IP地址11.11.11.11,这是里面的默认路由:IP地址10.1.1.1,这是本地子网newlink:22.22.22.22,这是一个新的Internet连接。
我们需要将VPN用户从11.11.11.11地址转移到22.22.22.22地址,我们在ASA上使用SSH来testing和整理路由。
我们遇到的问题是这样的:
如果我们将一个特定的IP定义为在新链路接口上的静态路由,那么它可以通过SSH到22.22.22.22。 如果我们没有定义一个静态路由,那么这个stream量就会到达ASA,但是返回stream量不会通过新链接返回; 据推测它是通过外部interfcae发送的,因为这是默认路由。 我们不能为每个远程端点定义一个静态路由,因为有拨号VPN用户,他们明显地改变了IP
我们需要做的是configurationASA,因此如果新连接接口上有连接,则通过新连接接口传出的数据包,而不是默认路由。 使用iptables时,这应该可以通过标记连接和标记路由来实现,但思科ASA的等价物是什么?
正如我所看到的,这个问题已经有三年的历史,但是我决定给出一个答案,因为这个答案可能对某个访问这个页面的人有用。
这个问题是关于PBR(基于策略的路由),也被称为基于源地址的路由。 事情是,这个东西是“正式”不被ASA支持的。 但是,有一个与NAT的技巧,可以用来实现类似的结果。 这就是所谓的身份NAT,也被称为同地址转换。
在这种情况下,这看起来像这样:
sysopt noproxyarp newlink
静态(newlink,newlink)0.0.0.0 0.0.0.0 netmask 0.0.0.0
这就是说,当接口newlink上有ANY IP(0.0.0.0/0)时,把它翻译回自己的接口(0.0.0.0)。 所以没有NAT真的发生,但我们正在说什么是输出接口。 此路由表覆盖正在发生,因为当使用身份NAT时,NAT过程基于“翻译”接口执行一些部分路由。 sysopt noproxyarp newlink命令是必需的,否则ASA将开始对任何到达“newlink”接口的目标地址的ARP请求(proxy-ARP)进行回应。 所有这些都是8.3之前的 ASA OS语法。
后8.3的语法是这样的:
sysopt noproxyarp newlink
nat(newlink,newlink)源静态任何任何
这在思科ASA上似乎不可能。 在光明的一面,我得到了“风滚草”徽章,没有人知道如何做一个星期。 🙂