ARP协议揭密( 六 )




我们现在看如何配置一台主机作为透明接入模式的防火墙(透明接入的防火墙不需要IP),

如图5所示,一台防火墙连接内部网段和DMZ网段到外部路由.我们在这台用作防火墙的主机上使用linux操作系统,这样我们可以方便的使用iptables防火墙.假设三块网卡为eth0,eth1和eth2,eth0和路由器相连,eth1和内网相连.eth2和外网相连.假设DMZ区有2台服务器.

内网地址:192.168.1.0/24
DMZ地址:192.168.1.2---192.168.1.3
路由器的ip地址:192.168.1.1
eth0:AA:AA:AA:AA:AA:AA
eth1:BB:BB:BB:BB:BB:BB
eth2:CC:CC:CC:CC:CC:CC

和前面差不多,第一步需要实现ARP欺骗,这次我们有个简单的实现.我们把路由器的IP地址和防火墙的eth1和eth2的网卡物理地址绑定,将内网和DMZ网段的IP地址和eth0的网卡绑定,在linux系统上我们用arp命令实现:

arp -s 192.168.1.1 BB:BB:BB:BB:BB:BB
arp -s 192.168.1.1 CC:CC:CC:CC:CC:CC
arp -s 192.168.1.0/24 AA:AA:AA:AA:AA:AA

第二部我们需要在基于linux的防火墙上设置路由,把目标地址是外部路由的包转发到eth0,把目标地址为内网的包转发到eth1,把目标地址是DMZ网段服务器的包转发到eth2.在linux下面用route命令实现

route add 192.168.1.1 dev eth0
route add -net 192.168.1.0/24 dev eth1
route add 192.168.1.2 dev eth2
route add 192.168.1.3 dev eth3

(针对DMZ网段里面的每台服务器都要增加一条单独的路由) 现在我们就已经实现了一个简单的arp代理的透明接入,当然对应于防火墙的iptables部分要另外配置,iptables的配置不在本文范畴之内.

小结

本文介绍了ARP协议以及与其相关的安全问题 。一个重要的安全问题就是ARP欺骗,我们讲到了同一网段的ARP欺骗以及跨网段的ARP欺骗和ICMP重定向相结合的方法 。由于有这些安全问题的存在,我们给出一些最基本的解决办法 。最后谈到了利用代理ARP实现在交换网络中嗅探和防火墙的透明接入 。

推荐阅读