Freebsd解决ARP欺骗问题

1.不安装软件的方法。
首先要重启,确保你拿到的网关地址是正确的。
步骤如下:

ifconfig

显示类似如下内容

bge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING>
inet 192.168.0.5 netmask 0xffffffc0 broadcast 192.168.0.1
ether 00:17:08:2a:13:88
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> mtu 1500
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000

我们把网关的信息存到一个文件里。

echo 192.168.0.1 00:17:08:2a:13:88 > /etc/ipmac

接着使用crontab -e编辑系统定时排程(计划任务)让它按照设定时间循环执行

*/5 * * * * /usr/sbin/arp -f /etc/ipmac

这样就每5分钟更新一次网关MAC地址,保证正确。 Continue reading

freebsd对抗ARP欺骗病毒

最近机房ARP欺骗病毒很猖狂。将鄙人经验总结于此,仅供参考。

在/etc/rc.local中加入两行:

arp -s 网关IP地址 网关以太网地址
sh /opt/bin/watcharp.sh &

前一行用于设置静态ARP项,以防中毒主机拦截通信。
后一行用于启动一个脚本,用于在网关以太网地址改变时,即时删去静态ARP项
并发信通知管理员,以防主机断网失控。脚本内容如下(须修改头部的参数设置
后方可使用,每行末尾都不要有多余的空格、Tab等字符):

#!/bin/sh
#$FreeBSD: src/scripts/watcharp.sh,v 1.1 2008/05/03 05:30:10 admin Exp $

gateway=”202.108.0.1″
admin_email=”webmaster@website.com”
ping_trial=10
sleep_interval=10

while true; do
if ! ping -q -c $ping_trial $gateway > /dev/null 2>&1 ; then
arp -d $gateway
mail -s “★★网关的以太网地址变了★★” $admin_email << EOF
如题!!!
EOF
exit 1
fi
sleep $sleep_interval
done