DHCP自動化腳本

#!/bin/bash

#

dhcp="/mnt/Server/dhcp-3.0.5-23.el5.i386.rpm"

file=/etc/sysconfig/network-scripts/ifcfg-eth0

grep dhcp $file

if [ $? -eq 0 ]

then

#設置IP

read -p "請輸入IP 地址": ip

read -p "請輸入子網掩碼": net

read -p "請輸入網關地址": ga

sed -i 's/BOOTPROTO=.*/BOOTPROTO=static/' $file

echo IPADDR="$ip" >> $file

echo GATEWAY=$ga >> $file

echo NETMASK=$net >> $file

service network restart

else

#設置IP

read -p "請輸入IP 地址": ip

read -p "請輸入子網掩碼": net

read -p "請輸入網關地址": ga

sed -i 's/^IPADDR.*$/IPADDR='$ip'/' $file

sed -i 's/^BOOTPROTO=.*/BOOTPROTO=static/' $file

sed -i 's/^NETMASK.*$/NETMASK='$net'/' $file

sed -i 's/^GATEWAY.*$/GATEWAY='$ga'/' $file

service network restart

fi

rpm -q dhcp &> /dev/null

if [ $? -eq 1 ]

then

        echo "正在掛載光盤"

                if [ ! -d /mnt/Server ]

                then

                        umount /dev/cdrom &> /dev/null

                        mount /dev/cdrom /mnt &> /dev/null

                        echo "正在安裝服務"

                        rpm -ivh $dhcp &> /dev/null

                        cp -p /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf

                        sed -i "4 s/192.168.0.0/192.168.1.0/" /etc/dhcpd.conf

                        sed -i "4 s/255.255.255.0/$net/" /etc/dhcpd.conf

                        sed -i "7 s/192.168.0.1/$ga/" /etc/dhcpd.conf

                        sed -i "12 s/192.168.1.1/$ip/" /etc/dhcpd.conf

                        sed -i "21 s/192.168.0.128/192.168.1.100/" /etc/dhcpd.conf

                        sed -i "21 s/192.168.0.254/192.168.1.254/" /etc/dhcpd.conf

                        service dhcpd restart

                        chkconfig dhcpd on

                else

                        echo "光盤已掛載"

                        rpm -ivh $dhcp &> /dev/null

                        cp -p /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf

                        sed -i '4 s/192.168.0.0/192.168.1.0/' /etc/dhcpd.conf

                        sed -i "4 s/255.255.255.0/$net/" /etc/dhcpd.conf

                        sed -i "7 s/192.168.0.1/$ga/" /etc/dhcpd.conf

                        sed -i "12 s/192.168.1.1/$ip/" /etc/dhcpd.conf

                        sed -i '21 s/192.168.0.128/192.168.1.100/' /etc/dhcpd.conf

                        sed -i '21 s/192.168.0.254/192.168.1.254/' /etc/dhcpd.conf

                        service dhcpd restart

                        chkconfig dhcpd on

                fi


else

        echo "服務已安裝"

fi


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章