- 简介:
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作,主要用途:给内部网络或网络服务供应商自动分配 IP 地址。
DHCP可以部署在服务器、交换机或者服务器,可以控制一段IP地址范围,客户机登录服务器时就可以自动获得DHCP服务器分配的IP地址和子网掩码。其中 DHCP 所在服务器的需要安装 TCP/IP 协议,需要设置静态 IP 地址、子网掩码、默认网关。
- 监听端口:
DHCP 监听的端口,其中 UDP/67 和 UDP/68 为正常的DHCP服务端口,分别作为DHCP Server和DHCP Client的服务端口
- 系统安装及简单的配置:
##############dhcp_setup.sh##############!/bin/bash #作者:openion #说明:创建DHCP服务器 #时间:12/26/15 clear setup() { yum -y install dhcp dhcp-devel } conf() { cp /etc/dhcpd.conf /etc/dhcpd.conf.bak echo "简单的配置dhcp服务器..." sh .conf } start() { /etc/init.d/ntpd restart } dhcp() { echo "正在安装DHCP服务器..." setup &> /dev/null echo "正在配置DHCP服务器..." conf echo "正在重启DHCP服务器..." start } dhcp echo "更多配置参考readme文件"
- /etc/dhcpd.conf 配置文件的内容:
ddns-update-style interim; ignore client-updates; next-server 192.168.111.79; filename "pxelinux.0"; allow booting; allow bootp; subnet 192.168.111.0 netmask 255.255.255.0 { # --- default gateway option routers 192.168.111.1; option subnet-mask 255.255.255.0; # option nis-domain "domain.org"; # option domain-name "192.168.111.10"; # option domain-name-servers 192.168.111.11; # option ntp-servers 192.168.1111.1; # option netbios-name-servers 192.168.111.1; # --- Selects point-to-point node (default is hybrid). Don‘tchange this unless # -- you understand Netbios very well # option netbios-node-type 2; range dynamic-bootp 192.168.111.100 192.168.111.200; host ns { hardware ethernet 00:1a:a0:2b:38:81; #此处为特殊的IP地址分配,可暂不设置。对于此处脚本的配置还需完善 fixed-address 192.168.0.101;} }
- 详细配置内容:
- ddns-update-style interim|ad-hoc|none #_#参数用来设置DHCP服务器与DNS服务器的动态信息更新模式:interim为DNS互动更新模式,ad-hoc为特>殊DNS更新模式,none为不支持动态更新模式。
- next-server ip #_#pxeclient远程安装系统,指定tftp server 地址
- filename #_#开始启动文件的名称,应用于无盘安装,可以是tftp的相对或绝对路径
- ignore #_#client-updates 为忽略客户端更新
- subnet-mask #_#为客户端设定子网掩码
- option routers #_#为客户端指定网关地址
- domain-name #_#为客户端指明DNS名字
- domain-name-servers #_#为客户端指明DNS服务器的IP地址
- host-name #_#为客户端指定主机名称
- broadcast-address #_#为客户端设定广播地址
- ntp-server #_#为客户端设定网络时间服务器的IP地址
- time-offset #_#为客户端设定格林威治时间的偏移时间,单位是秒
注意如上配置,需要修改成对应服务器网段 IP,然后重启 DHCP 服务.
- 客户机配置:
客户端要从这个 DHCP 服务器获取 IP,需要做简单的设置,如果是 linux需要把/etc/sysconfig/network-scritps/ifcfg-eth0 里 BOOTPROTO 相改成dhcp 即可,windows 机器的话,需要修改本地连接,把它>设置成自动获取 IP即可。
- 最后一点说明:
程序采用的目录结构如下:(其中包括readme和.conf文件的内容)
[[email protected] DHCP服务器]# ls -a . .. .conf dhcp_setup.sh readme
######### .conf ########## ip_addr=`ifconfig | sed -n ‘2p‘ | awk ‘{print $2}‘ | cut -d: -f2` tmp=`echo $ip_addr | cut -d‘.‘ -f1,2,3` net_addr=`echo $tmp.0` route_addr=`route | grep default | awk ‘{print $2}‘` echo "请输入ip地址的范围:" read -p "输入开始位置:" num1 read -p "输入结束位置:" num2 echo "ddns-update-style interim; ignore client-updates; allow booting; allow bootp; subnet $net_addr netmask 255.255.255.0 { # --- default gateway option routers $route_addr; option subnet-mask 255.255.255.0; # option nis-domain "domain.org"; # option domain-name "192.168.0.10"; # option domain-name-servers 192.168.0.11; # option ntp-servers 192.168.1.1; # option netbios-name-servers 192.168.1.1; # --- Selects point-to-point node (default is hybrid). Don‘t change this unless # -- you understand Netbios very well # option netbios-node-type 2; range dynamic-bootp $tmp.$num1 $tmp.$num2; host ns { hardware ethernet 00:1a:a0:2b:38:81; fixed-address 192.168.0.101;} }" >/etc/dhcpd.conf
###########readme########### DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协>议工作. 主要用途:给内部网络或网络服务供应商自动分配 IP 地址. DHCP 有 3 个端口,其中 UDP67 和 UDP68 为正常的DHCP服务端口,分别作为DHCP Server和DHCP Client>的服务端口。 DHCP可以部署在服务器、交换机或者服务器,可以控制一段IP地址范围. 客户机登录服务器时就可以自动获得DHCP服务器分配的IP地址和子网掩码。 其中 DHCP 所在服务器的需要安装 TCP/IP 协议,需要设置静态 IP 地址、子网掩码、默认网关。 配置文件内容如下: ddns-update-style interim; ignore client-updates; next-server 192.168.0.79; filename "pxelinux.0"; allow booting; allow bootp; subnet 192.168.0.0 netmask 255.255.255.0 { # --- default gateway option routers 192.168.0.1; option subnet-mask 255.255.252.0; # option nis-domain "domain.org"; # option domain-name "192.168.0.10"; # option domain-name-servers 192.168.0.11; # option ntp-servers 192.168.1.1; # option netbios-name-servers 192.168.1.1; # --- Selects point-to-point node (default is hybrid). Don‘tchange this unless # -- you understand Netbios very well # option netbios-node-type 2; range dynamic-bootp 192.168.0.100 192.168.0.200; host ns { hardware ethernet 00:1a:a0:2b:38:81; fixed-address 192.168.0.101;} } 参数解析: ddns-update-style interim|ad-hoc|none #_#参数用来设置DHCP服务器与DNS服务器的动态信息更新模式:interim为DNS互动更新模式,ad-hoc为特>殊DNS更新模式,none为不支持动态更新模式。 next-server ip #_#pxeclient远程安装系统,指定tftp server 地址 filename #_#开始启动文件的名称,应用于无盘安装,可以是tftp的相对或绝对路径 ignore #_#client-updates 为忽略客户端更新 subnet-mask #_#为客户端设定子网掩码 option routers #_#为客户端指定网关地址 domain-name #_#为客户端指明DNS名字 domain-name-servers #_#为客户端指明DNS服务器的IP地址 host-name #_#为客户端指定主机名称 broadcast-address #_#为客户端设定广播地址 ntp-server #_#为客户端设定网络时间服务器的IP地址 time-offset #_#为客户端设定格林威治时间的偏移时间,单位是秒 注意如上配置,需要修改成对应服务器网段 IP,然后重启 DHCP 服务. 客户端要从这个 DHCP 服务器获取 IP,需要做简单的设置,如果是 linux需要把/etc/sysconfig/network-scritps/ifcfg-eth0 里 BOOTPROTO 相改成dhcp 即可,windows 机器的话,需要修改本地连接,把它设>置成自动获取 IP即可。 BOOTPROTO=dhcp
以上内容还有需要完善的地方。以后将以此参考。
时间: 2024-10-13 06:13:37