#!/bin/sh
function usage()
{
echo "need root priority"
echo "usage:`basename $0` [exchange dns mode]"
echo " :`basename $0` <ip>[manual dns server ip]"
exit -1
}
#test root priority
[ `id -u` != 0 ] && usage
function unblockresolv()
{
chattr -i /etc/resolv.conf
chmod 777 /etc/resolv.conf
}
function blockresolv()
{
chmod 444 /etc/resolv.conf
chattr +i /etc/resolv.conf
}
if [ $# == 0 ]; then
unblockresolv
CNT=$(cat /etc/resolv.conf|grep 127.0.0.1|wc -l)
if [ $CNT == 1 ]; then
echo "nameserver 8.8.8.8" > /etc/resolv.conf
else
echo "nameserver 127.0.0.1" > /etc/resolv.conf
fi
blockresolv
exit -1
elif [ $# == 1 ]; then
dnsip=`echo $1|grep -x -E "([0-9]{1,3}\.){3}[0-9]{1,3}"`
if [ $? == 0 ]; then
unblockresolv
echo "nameserver $dnsip" > /etc/resolv.conf
blockresolv
exit -1
else
usage
fi
else
usage
fi