dhcp交互式搭建脚本

dhcp交互式搭建脚本

搭建时采用的是centos7,使用其它系统可能会产生错误。

#!/bin/bash
#创建自动搭建DHCP服务的交互式脚本
nul=/dev/null
echo "开始安装dhcp..."
sleep 1
yum -y install dhcp.x86_64 	>>$nul
if [ $? -eq 0 ]
then
	echo "dhcp.x86_64安装成功"
else
	echo "安装失败,请检测yum源"
	exit 1
fi
rm -rf /etc/dhcp/dhcpd.conf
if [ $? -eq 1 ]
then 
	echo "dhcpd.conf删除失败,请查看/etc/dhcp/路径"
	exit 1
fi

echo "正在查询本地IP地址、网关、子网掩码..."
sleep 2
IP= `ifconfig |head -2 |tail -1 |awk '{print $2}'`
echo "您的IP地址是:"   $IP
getway=`route -n |head -3|tail -1 |awk '{print $2}'`
echo "您的网关是:"     $getway
netmask=`ifconfig |head -2 |tail -1 |awk '{print $4}'`
echo "您的子网掩码是:" $netmask


echo "开始进行DHCP信息配置..."
sleep 2
read -p "请输入网络地址:" subnet
echo "您输入的网路地址是:"$subnet

read -p "请输入起始地址池IP:" addr_pool
echo "您输入的起始地址池是IP:"$addr_pool

read -p "请输入结束地址池的IP:" addr_poolend
echo "您输入的结束地址池数IP:" $addr_poolend

read -p "请输入首选DNS:"  dns
echo "您输入的首选DNS是:"$dns

read -p "请输入广播地址:" broadcast
echo "您输入的广播地址是:"$broadcast

echo "
subnet $subnet netmask $netmask {
  range $addr_pool $addr_poolend;
  option domain-name-servers $dns;
  option routers $getway;
  option broadcast-address $broadcast;
  default-lease-time 600;
  max-lease-time 7200;
}"    > /etc/dhcp/dhcpd.conf

if [ $? -eq 0 ]
then
	echo "配置成功"
else 
	echo "配置失败"
	exit 1
fi

new=`cat /etc/dhcp/dhcpd.conf |wc -c`  >>$nul
if [ $new -eq 0 ]
then
echo "/etc/dhcp/dhcpd.conf文件没有内容,请查找原因。"
exit 1
fi

echo "正在启动DHCP服务..."
sleep 2
systemctl start dhcpd.service 		     >>$nul
if [ $? -eq 0 ]
then
echo "服务启动成功"
else
echo "服务启动失败,请查看报错信息"
fi

此脚本仅供参考,其中可能存在不同错误,有待完善。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值