DHCP服务器简介

DHCP服务器简介1、常识dhcp概念:全称DynamicHostConfigurationProtocoldhcp功能:动态分配IP地址dhcp常识:dhcp是基于udp的服务器监听在67号端口,客户端监听在68号端口上 UDP:67/udp68/udp计算机想要通信需要具备:TCP/IPIPADDRNETMASKGATEW

大家好,欢迎来到IT知识分享网。

1、常识

dhcp概念:全称 Dynamic Host Configuration Protocol

dhcp功能: 动态分配IP地址

dhcp常识:

dhcp是基于udp的服务器监听在67号端口,客户端监听在68号端口上  

UDP:

67/udp

68/udp


计算机想要通信需要具备:

TCP/IP

IPADDR

NETMASK

GATEWAY

DNS

2、DHCP工作原理

dhcp工作原理:

客户端发起广播udp的数据包给服务器

Client–> DHCPDISCOVER

服务器回应客户端的数据包

          DHCPOFFER <– Server

客户端回复确认包,当有多个dhcp服务器时需要回复确认使用哪个服务器分配过来的ip(广播包)

Client–> DHCPREQUEST

服务器回复确认包。

           DHCPACK <– Server

客户端续租ip(这里就不是广播包了)   

Client–> DHCPREQUEST

           DHCPACK <– Server

注释:我们的每台电脑(不管是linux,windows,ios)都会时时刻刻运行着dhcpclient客户端(用于请求ip地址)。这个客户端会在你启动设备时广播发送DHCPDISCOVER数据包,路由器上的dhcpserver(路由器也是一台电脑)服务端接受广播数据包,dhcpserver回送DHCPOFFER数据包(数据包包含给你分配的ip地址,注意这时你的网络中可能不止一台dhcpserver服务器。它们会同时响应你的ip请求报文的),这时dhcpclient接收到数据包然后再次广播发送DHCPREQUEST数据包(如果有多个dhcpserver给你提供ip,你需要选一个,一般来说那个dhcpserver的数据包先到就用那个),这时dhcpserver服务器收到DHCPREQUEST数据包后回复确认包DHCPACK并记录下分配给你的ip地址,这时你就可以上网了。之后每6小时会重新续租(这个ip你只有6个小时的使用权,时间到是需要续租的)。

3、dhcp安装

//查询是否安装

rpm -qi dhcp

//若未安装直接安装

yum install dhcp -y

//查看都生成了那些文件

rpm -ql dhcp

 

//主要的文件

/usr/sbin/dhcpd #服务

/usr/sbin/dhcrelay#中继服务,一般不用。中继服务和dhcpd服务两个只能有一个运行。(当dhcpserver端和decpcilent不在一个网段时一般来说是不能接收到客户端的请求数据包的。因为路由器不会转发广播报文。这时如果路由器上能运行这个dhcrelay服务就能够将这个请求从别的网络转发到dechserver所在的网络中。之后另外网络中的dhcpclient就能获取到ip地址。这里不介绍这个服务,请自行google查询使用方法。)

/etc/dhcpd.conf #配置文件

/var/lib/dhcpd/dhcpd.leases#租约文件,记录了分配出去的ip地址。一般会有一个dhcpd.leases~文件存在,这才是真正记录分配IP地址记录的文件。


当然客户机需要设置成dhcp获取ip地址(具体怎么设置1、直接setup命令设置。2、直接配置网卡(/etc/sysconfig/network-scripts/ifcfg-eth#))

vim   /etc/dhcpd.conf   #dhcp服务的配置文件如下。

DHCP服务器简介

注释:

最上边的两行(ddns-update-style interim ignore client-update)是动态改写dns的选项,目前不用了保持不变。

subnet  172.16.0.0 …这就是你所在的局域网网络(你的这台dhcp服务器的ip和你的客户机们必须都在这个网络中,否则不能启动dhcpd服务)。说白这个就是你要分配的地址池,所有的ip都出自这个网络。

option routers   就是dhcp给你指定的网关

option subnet-mask 就是你这个网络的子网掩码

option domain-name 就是你所在的域的名字。学名叫做搜索域。我还不知道干什么用的呢,这里没什么用不用搭理。

option domain-name-servers   就是给你指定的dns服务器(这个就会被NetworkManager程序写到你的/etc/resolv.conf中,我指的是linux。这就是为什么你的 这个文件经常重启的时候被清空。因为你所在网络中的dhcp服务器没给你指定dns服务器–你的路由器上配置的这条是空的。因此还是把你的dns服务器配置到ifcfg-eth#文件里边去吧,那就不会被更改了。免得你每次域名都没办法解析必须重写这个文件。)

range 172.16.100.10…这行就是你要把这个网段中那些ip分配出去。这里配置的就从10-20一共才11个ip

default-leases-time… #这个就是给你的租期6小时。一般来说每隔3小时就会续租了。

#这个可以给某台计算机指定一个ip,这台机器的ip将一直是这个。注意这个ip不能在上边动态分配出去的地址中(不能再那11个ip中)。如果有多个机器要固定ip就多写几个

host ns {            #ns随便起的名字,你可以随便起一个,不重复就行。

      harderware …..     #要固定ip地址的那台机器的mac地址

     fixd-address….     #给这台机器的ip

}

尝试下在你的局域网中自己启动个dhcp服务器,那么你的小伙伴就有可能从你那里请求ip地址了。如果你通过路由器管理界面获取到它的mac地址,你故意给他配置一个固定的ip(那这里仍然是有可能使用你提供的固定的ip,还是谁先到用谁的。)。并且把他的路由设置成错的。那他的数据包就出不了这个网络了,也就上不了外网了。我在虚拟机上玩过了,是有效果的。但手机上就没有效果,原因我想应该是这样的,手机在广播请求ip的时候,因为我的dechserver在虚拟机上所以肯定会比真正的路由器上的dechserver响应慢,这样就麻烦了,拿手机肯定不会用我给他的固定的那个而是直接用路由器上的那个dhcpserver给它提供的ip。所以就没效果了。不过你可以试一试在真机上启动一个dhcpserver。比如在windows上启动一个,或者你想办法关掉路由器上的dhcpserver那这肯定就会有效果了。因为手机的操作系统也是linux的。

测试的时候可以使用命令:dhclient -d 看看请求ip地址的过程是怎样的,看看是谁给提供的ip地址。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/11757.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信