这不太可能是一个错误,更可能是我对路由缺乏了解。
我遇到了非对称路由问题,返回流量从错误的防火墙出去。我有一个明确的静态路由,说明要转到正确的防火墙内部地址,但它被忽略,并传出默认路由。
Server A Server B
(10.0.12.7) (10.1.12.100)
| |
4500 ---------> 6500 ----------> PIX (in:10.0.11.200 out:172.16.0.162)
(10.0.11.2) (10.0.11.1) `-----> ASA (in:10.0.11.201 out:172.16.0.165)
注意:此处描述的所有网络均为 /24
源流量来自通过 VPN 连接到 ASA 的 10.50.1.0/24 网络。如果流量到达 10.1.12.0/24 网络,则一切正常。
如果流量以 10.0.12.7 流向服务器 A,ASA 会报告不对称路由问题。
4500 包含以下行:ip route 10.50.1.0 255.255.255.0 10.0.11.1 6500 包含以下行:ip route 10.50.1.0 255.255.255.0 10.0.11.201
当我从 6500 进行 ping 操作时,使用不同的 vlan 作为源 IP,发生了这种情况;
6500#ping
Protocol [ip]:
Target IP address: 10.50.1.11
Repeat count [5]:
Datagram size [100]:
Timeout in seconds [2]:
Extended commands [n]: y
Source address or interface: 10.0.11.1
Type of service [0]:
Set DF bit in IP header? [no]:
Validate reply data? [no]:
Data pattern [0xABCD]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.50.1.11, timeout is 2 seconds:
Packet sent with a source address of 10.0.11.1
.....
Success rate is 0 percent (0/5)
6500#ping
Protocol [ip]:
Target IP address: 10.50.1.11
Repeat count [5]:
Datagram size [100]:
Timeout in seconds [2]:
Extended commands [n]: y
Source address or interface: 10.0.12.1
Type of service [0]:
Set DF bit in IP header? [no]:
Validate reply data? [no]:
Data pattern [0xABCD]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.50.1.11, timeout is 2 seconds:
Packet sent with a source address of 10.0.12.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/3/4 ms
如您所见,当我从我的服务器所在的 VLAN 发送时,路由正确。当从我的交换机相互连接的 VLAN 发送时,路由失败。
答案1
当通过 4500 进行 ping 操作时,两个防火墙后的下一跳都有响应,而不是我最初认为的 PIX 的外部接口。意识到这一点之后,我检查了 ASA,发现由于某种原因,我添加了一个包含 10.0.0.0/16 子网的全局 nat,它接收来自 4500 的流量,但不接收来自 10.1.0.0/16 子网的流量。
抱歉浪费了大家的时间。