dhcdrop подавление сторонних dhcp серверов в сети

Давно собирался написать эту заметку, но все не хватало времени, сегодня выделил :)
dhcdrop — это софтинка для подавления чужих дхцп серверов в сети.
Устанавливается как всегда из портов:
# cd /usr/ports/net-mgmt/dhcdrop
# make install clean
# rehash

Теперь стартовый скрипт для его работы, можно написать свой, но я взял готовый, спс © 2009, Andrey Zentavr
# ee /usr/local/etc/rc.d/dhcdrop.sh

#!/bin/sh

# (c) 2009, Andrey Zentavr

# Legal DHCP Serverz, space separated mac address
LEGAL_SERVERS="00:00:00:00:00:00" #тут маки через пробел серверов легальных, т.е. наших

DROPPER="/usr/local/sbin/dhcdrop"
IFNAME="em1"
PARAMS="-t -m 3"

# Lets Go!
# legal params
for mac in ${LEGAL_SERVERS}; do
LMAC="${LMAC} -l ${mac}"
done

#echo ${LMAC}

# Discovering on every interface
for IF in ${IFNAME}; do
echo "Processing interface ${IF}"
# test to any DHCP-Server
${DROPPER} -i ${IF} ${LMAC} ${PARAMS}

# Check for status 200
if [ $? = 200 ]; then
echo "Illegal server found on ${IF}! Dropping him!"
${DROPPER} -i ${IF} ${LMAC} -y
else
echo "Illegal server not found on ${IF}."
fi
done
echo "All done"

сделаем его исполняемым:
# chmod +x /usr/local/etc/rc.d/dhcdrop.sh

все что останется, это добавить в крон его:
# crontab -e

и дописать следующую строку:
*/30 * * * * /usr/local/etc/rc.d/dhcdrop.sh

т.е. периодичность проверки раз в пол часа, можно поставить и чаще :))

Комментарии

http://adminnotes.info/other/