• 简介:

  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服务器
#时间:// 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 ;
range dynamic-bootp 192.168.111.100 192.168.111.200;
host ns {
hardware ethernet :1a:a0:2b::;    #此处为特殊的IP地址分配,可暂不设置。对于此处脚本的配置还需完善
fixed-address 192.168.0.101;}
}
  • 详细配置内容:
  1. ddns-update-style interim|ad-hoc|none        #_#参数用来设置DHCP服务器与DNS服务器的动态信息更新模式:interim为DNS互动更新模式,ad-hoc为特>殊DNS更新模式,none为不支持动态更新模式。
  2. next-server ip      #_#pxeclient远程安装系统,指定tftp server 地址
  3. filename        #_#开始启动文件的名称,应用于无盘安装,可以是tftp的相对或绝对路径
  4. ignore      #_#client-updates 为忽略客户端更新
  5. subnet-mask      #_#为客户端设定子网掩码
  6. option routers          #_#为客户端指定网关地址
  7. domain-name          #_#为客户端指明DNS名字
  8. domain-name-servers        #_#为客户端指明DNS服务器的IP地址
  9. host-name          #_#为客户端指定主机名称
  10. broadcast-address         #_#为客户端设定广播地址
  11. ntp-server           #_#为客户端设定网络时间服务器的IP地址
  12. time-offset         #_#为客户端设定格林威治时间的偏移时间,单位是秒

  注意如上配置,需要修改成对应服务器网段 IP,然后重启 DHCP 服务.

  • 客户机配置:

  客户端要从这个 DHCP 服务器获取 IP,需要做简单的设置,如果是 linux需要把/etc/sysconfig/network-scritps/ifcfg-eth0 里 BOOTPROTO 相改成dhcp 即可,windows 机器的话,需要修改本地连接,把它>设置成自动获取 IP即可。

  • 最后一点说明:

  程序采用的目录结构如下:(其中包括readme和.conf文件的内容)

[root@openion 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,,`
net_addr=`echo $tmp.`
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 ;
range dynamic-bootp $tmp.$num1 $tmp.$num2;
host ns {
hardware ethernet :1a:a0:2b::;
fixed-address 192.168.0.101;}
}" >/etc/dhcpd.conf
###########readme###########
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协>议工作. 主要用途:给内部网络或网络服务供应商自动分配 IP 地址. DHCP 有 个端口,其中 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 ;
range dynamic-bootp 192.168.0.100 192.168.0.200;
host ns {
hardware ethernet :1a:a0:2b::;
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

 以上内容还有需要完善的地方。以后将以此参考。

DHCP 服务器的更多相关文章

  1. 7、二种 为二个不同的子网配置DHCP服务器(中继代理服务器)

    环境如下:        (参考之前,保证二个子网可以互相ping通) 虚拟机vm1        192.168.170.3                    VMnet8 (NAT模式) 虚拟 ...

  2. DHCP服务器原理

    DHCP服务器   port:67 DHCP 这个服务可以自动的分配 IP 与相关的网络参数给客户端, 来提供客户端自动以服务器提供的参数来设定他们的网络   12.1 DHCP 运作的原理      ...

  3. DHCP服务器的开始方式

    方法一:采用DHCP服务器接口开启的方式 [Huawei]dhcp enable [Huawei]int g0/0/0[Huawei-GigabitEthernet0/0/0]ip add 192.1 ...

  4. 搭建DHCP服务器以及DHCP中继服务器

    一.DHCP服务器   1.首先配置DHCP服务器的IP地址(DHCP服务器网卡桥接在VMnet1)   .配置好IP后重启DHCP服务 3.安装DHCP服务器,在这里我用的是YUM安装的(关于YUM ...

  5. 使用Dhcpstarv解决DHCP服务器冲突问题

    场景: 内网环境需要开启多个DHCP服务器,分别给不同的设备进行PXE安装. 存在的问题: 多个DHCP的情况下,设备在启动时随机从一个DHCP服务器获取IP(哪个DHCP服务器先响应就从哪个获取)并 ...

  6. 烂泥:centos安装及配置DHCP服务器

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 有关DHCP服务器的配置一直打算学习,这几天终于抽出时间来专门学习这个知识点. DHCP:动态主机配置协议,在此就不多做介绍.不清楚的童鞋,可以去百度下 ...

  7. redhat enterprixe 5.0 下DHCP服务器rpm安装配置及其测试

    一.了解DHCP DHCP服务提供动态指定IP地址和配置参数的机制.有动态和静态两种方式. 二.rpm安装 因为配过Samba,所以感觉挺简单. 首先找到主程序和几个附属程序的rpm的安装包.应该都是 ...

  8. Windows Tftpd32 DHCP服务器 使用

    /********************************************************************* * Windows Tftpd32 DHCP服务器 使用 ...

  9. [转]详述DHCP服务器的三种IP分配方式

    DHCP就是动态主机配置协议(Dynamic Host Configuration Protocol),它的目的就是为了减轻TCP/IP网络的规划.管理和维护的负担,解决IP地址空间缺乏问题.这种网络 ...

随机推荐

  1. json解析之jackson ObjectMapper

    Json解析常用的有fastjson和jackson,性能上网上有不少的对比,说是fastjson比较好,今天先整理一下jackson的东西,后面再发一个fastjson的. jackson是spri ...

  2. 位图9宫格 BitmapSlice9.jsfl

    /** * Version 1.1, May 4: fixed issue with symbols in library folders. **/ /** * BitmapSlice9 JSFL b ...

  3. python错误收集

    Installing 'flask'You are using pip version 6.1.1, however version 7.1.2 is available.You should con ...

  4. leetcode@ [300] Longest Increasing Subsequence (记忆化搜索)

    https://leetcode.com/problems/longest-increasing-subsequence/ Given an unsorted array of integers, f ...

  5. 【poj2891】Strange Way to Express Integers

    题意: 给出n个模方程x=a(mod r) 求x的最小解 题解: 这就是个线性模方程组的模版题- - 但是有一些要注意的地方 extgcd算出来的解x可能负数  要让x=(x%mo+mo)%mo 而且 ...

  6. 【C语言】-循环结构-for语句

    for语句: for (表达式1;表达式2;表达式3) { 循环语句 } 表达式1 给循环变量赋初值 表达式2 为循环条件 表达式3 用来修改循环变量的值,称为循环步长. for语句的执行流程: 例: ...

  7. Objective-C Runtime 运行时之六:拾遗

    super 在Objective-C中,如果我们需要在类的方法中调用父类的方法时,通常都会用到super,如下所示: @interface MyViewController: UIViewContro ...

  8. Java与MySql数据类型对照表

    类型名称 显示长度 数据库类型 JAVA类型 VARCHAR L+N VARCHAR java.lang.String CHAR N CHAR java.lang.String BLOB L+N BL ...

  9. Windows常用命令使用总结

    Windows dos常用命令的熟练使用有助于提高工作效率. 1.windows+R:打开运行程序窗口 2.cmd:调用DOS命令窗口 3.mstsc:调用远程桌面命令窗口 4.mspaint:调用画 ...

  10. PowerDesigner 面向对象模型(OOM)

    PowerDesigner 面向对象模型(OOM)说明 nulljavasystemstringpowerbuilderclass   目录(?)[+]   一.     OOM 简介 Object- ...