引言
在一个计算机比较多的网络中,如果网络管理员要亲自为某个部门,甚至整个企业的上百台机器逐一手动分配IP地址,那么这个效率是非常低的,这时候就可以通过DHCP服务器来实现这个工作。 两台连接到互联网上的电脑相互之间通信,必须有各自的IP地址,由于IP地址资源有限,宽带接入运营商不能做到给每个报装宽带的用户都能分配一个固定的IP地址,所以要采用DHCP方式对上网的用户进行临时的地址分配。
一、概念
DHCP是一种基于客户/服务器模式的服务协议,位于应用层,使用UDP协议工作,是一个应用于局域网的网络协议,该协议允许服务器向客户端动态分配IP地址和配置信息。 DHCP的服务端口号为68,客户端口号为67
二、作用
如果有很多台电脑都需要配置一个网络环境,那么每台电脑都需要手动去完成上述配置。而DHCP服务器主要的作用,就是自动地将网络参数正确的分配给网络中的每台计算机,让客户端可以在开机时就自动分配好网络的参数值。
三、实现方式
1.为相同网段的电脑分配ID地址——DHCP 2.跨网段为另一个网段的电脑分配IP地址——DHCP中继
四、工作原理
- 用户请求阶段
此阶段用户通过发送255.255.255.255的DHCPdiscovery广播来寻找DHCP服务器以便请求地址。此过程中,安装TCP/IP的主机都能收到请求,只有DHCP服务器才会做出应答。 - 服务器提供阶段
此阶段服务器接收到客户端发送的DHCPdiscovery请求,局域网范围内收到DHCPdiscovery的DHCP服务器都会给发送DHCPdiscovery的客户端分配一个地址,此IP是再DHCP服务器中尚未分配出去的,发送的IP包含一些DHCPoffer中的其他信息。 - 用户选择阶段
此阶段客户端接收到DHCP服务器发来的地址,但是只会选择第一个向他提供的DHCP服务器提供的IP,广播DHCPrequest,把自己选择的DHCP服务器及其提供的IP信息告知局域网范围内所有的DHCP服务器 - 服务器确认阶段
此阶段当提供给客户端IP的DHCP服务器收到客户端发来的DHCPrequest信息后,会给客户端一个DHCPack响应,告知客户端可以正常使用其提供的IP,客户机将IP与网卡绑定,以便下次能够继续使用IP,其他DHCP服务器也将收回自己分配给客户端的IP
服务端接收到客户端的确认选择后,服务器会回送确认的相应数据包,并且告知客户端这个网络参数租约的期限,并且开始租约计时。
首先我们会有疑问:为什么要设置一个租期?
答:最大的好处是可以避免IP被某些客户端一直占用着,但是该客户端却是闲置的状态。
一般来说,客户机再租期期间使用的时间长达50%,会主动向服务器去续约,要求继续使用现在租用的地址。
- 续约成功:客户机向服务器发送续约请求时,此IP没有被其他客户机占用时,可以继续使用现在租用的IP地址
- 续约不成功:客户机向服务器发送续约请求时,此IP被其他客户机占用时,不可以继续使用现在租用的IP地址
五、配置
拓扑图 LSW1配置:
[L2-SW1]vlan bat 10 20
[L2-SW1]int e0/0/1
[L2-SW1-Ethernet0/0/1]port link-type access
[L2-SW1-Ethernet0/0/1]port default vlan 10
[L2-SW1-Ethernet0/0/1]int e0/0/2
[L2-SW1-Ethernet0/0/2]port link-type access
[L2-SW1-Ethernet0/0/2]port default vlan 20
[L2-SW1-Ethernet0/0/2]q
[L2-SW1]int g0/0/1
[L2-SW1-GigabitEthernet0/0/1]port link-type trunk
[L2-SW1-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[L2-SW1-GigabitEthernet0/0/1]q
LSW2配置:
[L2-SW2]vlan bat 10 20
[L2-SW2]int e0/0/1
[L2-SW2-Ethernet0/0/1]port link-type access
[L2-SW2-Ethernet0/0/1]port default vlan 10
[L2-SW2-Ethernet0/0/1]int e0/0/2
[L2-SW2-Ethernet0/0/2]port link-type access
[L2-SW2-Ethernet0/0/2]port default vlan 20
[L2-SW2-Ethernet0/0/2]q
[L2-SW2]int g0/0/1
[L2-SW2-GigabitEthernet0/0/1]port link-type trunk
[L2-SW2-GigabitEthernet0/0/1]port trunk allow-pass vlan all
LSW4配置:
[L3-SW1]int g0/0/1
[L3-SW1-GigabitEthernet0/0/1]port link-type trunk
[L3-SW1-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[L3-SW1-GigabitEthernet0/0/1]q
[L3-SW1]int g0/0/2
[L3-SW1-GigabitEthernet0/0/2]port link-type trunk
[L3-SW1-GigabitEthernet0/0/2]port trunk allow-pass vlan all
[L3-SW1-GigabitEthernet0/0/2]q
[L3-SW1]vlan bat 10 20 100
[L3-SW1]int vlan 10
[L3-SW1-Vlanif10]ip add 192.168.10.1 24
[L3-SW1-Vlanif10]int vlan 20
[L3-SW1-Vlanif20]ip add 192.168.20.1 24
[L3-SW1-Vlanif20]int g0/0/3
[L3-SW1-GigabitEthernet0/0/3]port link-type access
[L3-SW1-GigabitEthernet0/0/3]port default vlan 100
[L3-SW1-GigabitEthernet0/0/3]int vlan 100
[L3-SW1-Vlanif100]ip add 10.10.10.1 24
[L3-SW1-Vlanif100]q
[L3-SW1]dhcp enable
[L3-SW1]int Vlan 10
[L3-SW1-Vlanif10]dhcp select relay
[L3-SW1-Vlanif10]dhcp relay server-ip 10.10.10.2
[L3-SW1-Vlanif10]int vlan 20
[L3-SW1-Vlanif20]dhcp select relay
[L3-SW1-Vlanif20]dhcp relay server-ip 10.10.10.2
R1配置:
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 10.10.10.2 24
[R1-GigabitEthernet0/0/0]undo sh
[R1-GigabitEthernet0/0/0]q
[R1]dhcp enable
[R1]ip pool dhcp1
[R1-ip-pool-dhcp1]network 192.168.10.0 mask 24
[R1-ip-pool-dhcp1]gateway-list 192.168.10.1
[R1-ip-pool-dhcp1]dns-list 8.8.8.8 192.168.10.1
[R1-ip-pool-dhcp1]lease day 7
[R1-ip-pool-dhcp1]q
[R1]ip pool dhcp2
[R1-ip-pool-dhcp2]network 192.168.20.0 mask 24
[R1-ip-pool-dhcp2]gateway-list 192.168.20.1
[R1-ip-pool-dhcp2]dns-list 114.114.114.114 192.168.20.1
[R1-ip-pool-dhcp2]lease day 7
[R1-ip-pool-dhcp2]q
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]dhcp select global
[R1-GigabitEthernet0/0/0]q
[R1]ip route-static 192.168.10.0 24 10.10.10.1
[R1]ip route-static 192.168.20.0 24 10.10.10.1
配置完成后,查询IP有没有分配成功
可以看到IP地址分配成功
总结
有了DHCP中继,我们就可以实现DHCP的跨网运作,解决用户分配IP地址的问题。
|