注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

c.pass 的博客

众里寻他千百度,蓦然回首,那人却在,灯火阑珊处。

 
 
 

日志

 
 

linux dhcp & dhcrelay  

2010-09-15 21:52:01|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 环境介绍:
        dhcpserver 有一块网卡ETH0
        Dhcrelay 有两块网卡ETH0 ETH1    

 #ETH0与dhcpserver的ETH0连接,ETH1与switch/pc连接

linux下的DHCP&dhcrelay

######################################################################

由于dhcp是基于网关分配IP的,所以把网关信息进行适当的设置即可得到想要的信息.

在运行脚本之前应当给予脚本文件"dhcpd.sh & dhcrelay.sh".可执行权限.

chmod 744 dhcpd.sh
       chmod 744 dhcrelay.sh

#在使用时稍作修改就可以了。如果在WINDOWS环境下修改的,那么编码格式可能有问题,可在linux下先把格式进行转换,然后运行。
命令:dos2unix dhcp.sh dhcp.sh
##########################################################################

 

dhcpd配置脚本内容:

#!/bin/sh                                     

DHCP="/etc/dhcpd.conf"                                       #定义变量
       DM="/etc/resolv.conf"                                            #定义变量
       ETH="/etc/sysconfig/network-scripts/ifcfg-eth0"     #定义变量

rpm -ivh ./dhcp-3.0.1-12_EL.i386.rpm --nodeps --force    #安装dhcpd server包,注意包要与脚本文件在一个目录下.

echo "ddns-update-style interim;" >$DHCP            #这行跟DNS有关即使不使用也要些不然会报错

echo "subnet 192.168.1.0 netmask 255.255.255.0 {" >> $DHCP           #定义一个区域

echo " range 192.168.1.210 192.168.1.220;" >> $DHCP                       #定义范围
       echo " option subnet-mask              255.255.255.0;" >> $DHCP            #定义掩码
       echo " option routers                  192.168.1.201;" >> $DHCP                 #定义网关

echo " option domain-name              \"gnome.com\";" >> $DHCP         #定义域名
       echo " option domain-name-servers      192.168.1.200;" >> $DHCP    #定义域名服务器

echo " default-lease-time 21600;" >> $DHCP                                #定义租约
       echo "       max-lease-time 43200;" >> $DHCP                               #定义最大租约
       echo " }" >> $DHCP

 

#host jekay                                                                    #声明保留IP的主机
       #      option host-name jekay.benet.com;                          #指定保留的主机名
       #      hardware ethernet 00:00:A0:2E:9c:0A;                     #匹配保留主机的MAC地址
       #      fixed-address 192.168.1.100                                    #设置分配的固定IP地址
       #}                                                              #######这个脚本中没有定义

echo "subnet 192.168.2.0 netmask 255.255.255.0 {" >> $DHCP          #定义第二个范围

echo " range 192.168.2.100 192.168.2.200;" >> $DHCP                      #定义第二个IP范围
       echo " option subnet-mask              255.255.255.0;" >> $DHCP           #定义掩码
       echo " option routers                  192.168.2.1;" >> $DHCP                     #定义第二个范围的网关

echo " option domain-name              \"gnome.com\";" >> $DHCP           #定义域名
       echo " option domain-name-servers      192.168.1.200;" >> $DHCP     #定义域名服务器
       echo " default-lease-time 21600;" >> $DHCP                                        #定义最短租约          
       echo "       max-lease-time 43200;" >> $DHCP                                      #定义最大租约
       echo " }" >> $DHCP

 echo "DEVICE=eth0" >>$ETH                                               #定义网卡信息ETH0
       echo "ONBOOT=yes" >>$ETH                                               #
       echo "BOOTPROTO=static" >>$ETH                                     #指定网卡状态服务器一定是static
       echo "IPADDR=192.168.1.200" >>$ETH                                #指定网卡IP
       echo "NETMASK=255.255.255.0" >>$ETH                             #指定网卡掩码
       echo "GATEWAY=192.168.1.201" >> $ETH                           #指定网卡所使用的网关

echo "NETWORKING=yes" >> $DM                                   #定义主名
       echo "HOSTNAME=server" >> $DM                                  #主机名为server

 

service network restart                                        #重新启动网卡
       service dhcpd restart                                          #重启DHCP服务


 

dhcrelay配置脚本内容:

#!/bin/sh

DHR="/etc/sysconfig/dhcrelay"                                         #定义变量
       ETH0="/etc/sysconfig/network-scripts/ifcfg-eth0"              #定义变量
       ETH1="/etc/sysconfig/network-scripts/ifcfg-eth1"              #定义变量
       DM="/etc/sysconfig/network"                                             #定义变量

rpm -ivh dhcp-3.0.1-12_EL.i386.rpm --nodeps --force           #安装dhcpserver包,方法与上面相同

echo "INTERFACES=\"\"" > $DHR                                            #指定要监听网卡,不定义就是监听所有
       echo "DHCPSERVERS=192.168.1.200" >>$DHR                     #指定服务器地址

echo 1 > /proc/sys/net/ipv4/ip_forward                           #启用转发功能

echo "DEVICE=eth0" >$ETH0                                         #定义网卡信息eth0

echo "ONBOOT=yes" >> $ETH0                                
       echo "BOOTPROTO=static" >> $ETH0
       echo "IPADDR=192.168.1.201" >> $ETH0
       echo "NETMASK=255.255.255.0" >> $ETH0
       echo "GATEWAY=192.168.1.201" >> $ETH0                   #网关设置为1.201

echo "DEVICE=eth1" > $ETH1                                          #定义网卡信息eth1
       echo "ONBOOT=yes" >> $ETH1
       echo "BOOTPROTO=static" >> $ETH1
       echo "IPADDR=192.168.2.1" >> $ETH1                            #IP地址为192.168.2.1
       echo "NETMASK=255.255.255.0" >> $ETH1 
       echo "GATEWAY=192.168.2.1" >> $ETH1                        #网关信息为192.168.2.1

echo "NETWORKING=yes" >> $DM                                   #定义主机名称
       echo "HOSTNAME=dhcrelay" >> $DM                               #名称为dhcrelay

 

service network restart                                    #重新启动网络
       /etc/init.d/dhcrelay restart                               #重启代理服务

 

完成后就大功告成了,此脚本我已经使用过,虽然简单了点但是很好用,不信可以试试看!

 

  评论这张
 
阅读(665)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017