Chinaunix首页 | 论坛 | 博客
  • 博客访问: 120258
  • 博文数量: 40
  • 博客积分: 2510
  • 博客等级: 少校
  • 技术积分: 420
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-02 15:41
文章分类

全部博文(40)

文章存档

2009年(40)

我的朋友
最近访客

分类: 系统运维

2009-06-12 09:27:03

四、运行DHCP服务器

(一)启动DHCP服务器

最后一步了,我们需要启动DHCP服务,使刚刚修改的配置生效。启动DHCP服务有两种方法

1、       第1种方法

service  dhcpd   start     启动DHCP服务

service  dhcpd    stop     停止DHCP服务

service  dhcpd   restart   重启DHCP服务

 

使用这种方法,只有此次生效,关机或重启计算机后无效。

2、        第2种方法

chkconfig    dhcpd    on     启动DHCP服务

chkconfig    dhcpd    off     停止DHCP服务

 

使用这种方法,只有重启计算机后才生效。

 

3、从指定端口启动DHCP服务器

如果系统连接不止一个网络接口,但是只想让DHCP服务器启动其中之一,则可以配置DHCP服务器只在相应设备上启动。在/etc/sysconfig/dhcpd中,把接口的名称添加到DHCPDARGS的列表中:

# Command line options here

DHCPDARGS=eth0

 

如果有一个带有两块网卡的防火墙机器,这种方法就会大派用场。一块网卡可以被配置成DHCP客户端从互联网上检索IP地址;另一块网卡可以被用做防火墙之后的内部网络的DHCP服务器。仅指定连接到内部网络的网卡使系统更加安全,因为用户无法通过互联网来连接其守护进程。

其他可在/etc/sysconfig/dhcpd中指定的命令行选项如下。

(1)-p

指定dhcpd应该监听的UDP端口号码,默认值为67。DHCP服务器在比指定的UDP端口大一位的端口号上把回应传输给DHCP客户端。例如,如果使用默认端口67,服务器就会在端口67上监听请求,然后在端口68上回应客户。如果在此处指定了一个端口号,并且使用了DHCP转发代理,所指定的DHCP转发代理所监听的端口必须是同一端口。

(2)-f

把守护进程作为前台进程运行,在调试时最常用。

(3)-d

把DCHP服务器守护进程记录到标准错误描述器中,在调试时最常用。如果未指定,日志将被写入/var/log/messages中。

(4)-cf

指定配置文件的位置,默认为/etc/dhcpd.conf。

(5)-lf

指定租期数据库文件的位置。如果租期数据库文件已存在,在DHCP服务器每次启动时使用同一个文件至关重要。建议只在无关紧要的机器上为调试目的才使用该选项,默认为/var/lib/dhcp/dhcpd.leases。

(6)-q

在启动该守护进程时,不要显示整篇版权信息

(7)-4|-6

      以支持ipv4还是ipv6的方式启动dhcp

4、有关启动脚本

注意只有当你想在网络上分配LAN地址时才需要运行dhcp服务器。dhcp客户端不需要使用下面的脚本。还要注意的是下面的脚本是针对'eth1'网络接口编写的,你需要根据你的硬件配置做相应的修改。了解了这些后,用下面的创建dhcp的init.d脚本:

cat > /etc/rc.d/init.d/dhcp << "EOF"

#!/bin/sh

# Begin $rc_base/init.d/dhcp

 

# Based on sysklogd script from LFS-3.1 and earlier.

# Rewritten by Gerard Beekmans  - gerard@linuxfromscratch.org

 

source /etc/sysconfig/rc

source $rc_functions

 

case "$1" in

        start)

                echo "Starting DHCP Server..."

                loadproc dhcpd -q eth1

                ;;

        stop)

                echo "Stopping DHCP Server..."

                killproc dhcpd

                ;;

        reload)

                echo "Reloading DHCP Server..."

                reloadproc dhcpd

                ;;

        restart)

                $0 stop

                sleep 1

                $0 start

                ;;

        status)

                statusproc dhcpd

                ;;

        *)

                echo "Usage: $0 {start|stop|reload|restart|status}"

                exit 1

                ;;

esac

 

# End $rc_base/init.d/dhcp

EOF

chmod 755 /etc/rc.d/init.d/dhcp

 

5、检查dhcp运行的情况

(1)使用ps命令检查dhcpd进程:

 

#ps -ef | grep dhcpd

root      2402     1  0 14:25 ?        00:00:00 /usr/sbin/dhcpd

root      2764  2725  0 14:29 pts/2    00:00:00 grep dhcpd

 

(2)使用netstat检查dhcpd运行的端口:

 

# netstat -nutap | grep dhcpd

    udp   0  0 0.0.0.0:67         0.0.0.0:*      2402/dhcpd

 

 

/etc/init.d/dhcpd restart  重新启动DHCP
/etc/dhcpd.conf            DHCP配置文件
/etc/sysconfig/network-scripts/ifcfg-eth0  配置网卡信息
more /var/lib/dhcpd/dhcpd.leases  可查看地址分配情况
ifdown eth0; ifup eth0     关闭和启动网卡
chkconfig --level 345 dhcpd on             使开机自动运行DHCP

 

(二)关闭DHCP服务器

 

service  dhcpd    stop     停止DHCP服务

或者:

chkconfig    dhcpd    off     停止DHCP服务

 

 

阅读(1051) | 评论(0) | 转发(0) |
0

上一篇:三、设置DHCP服务器

下一篇:五、高级话题

给主人留下些什么吧!~~