DHCP 动态主机配置协议是应用层协议;作用是分配IP地址,子网掩码,网关地址和DNS(可设置IP地址租期等)
DHCP服务器可以是路由器,三交换机,Windows server2016(后续编写),linux服务器(后续编写)
1.三层交换机上搭DHCP服务器
1.1 在三层交换机开启DHCP功能
<Huawei>sy
[Huawei]dhcp enable
1.2 创建地址池
[Huawei]ip policy-based-route
[Huawei]ip pool bume A
Info:it's successful to create an ip address pool
[Huawei-ip-pool-bumena]network 192.168.1.0 mask 255.255.255.0
[Huawei-ip-pool-bumena]gateway-list 192.168.1.254
[Huawei-ip-pool-bumena]dns-list 114.114.114.114
[Huawei-ip-pool-bumena]dis this
#
Ip pool bumena
Gateway-list 192.168.1.254
Network 192.168.1.0 mask 255.255.255.255.0
dns-list 114.114.114.114
#
Return
1.3 在网关接口启用DHCP
[Huawei-ip-pool-bumena]int Vlan 10
[Huawei-Vlanif10]dhcp select global
解释:
Ip pool 2F 创建一个地址池,名字叫2F
Gateway-list 192.168.20.1 配置网关
Network 192.168.20.0 mask 255.255.255.255.0 分配地址段
Excluded-ip-address 192.168.20.43 192.168.20.253 排除一些地址,不会再给主机分配
Static-bindip-address 192.168.20.40 mac-address eod5-5ed7-06e0 静态绑定
给绑定的主机分配固定的ip,比如某个服务器,就让他固定用192.168.20.40每个设备的网卡都有个标识mac地址
Lease day 0 hour 8 minute 0 租约 (8分钟后ip地址回收)
Dns-list 58.20.127.170 114.114.114.114 可以配置两台dns服务器
2.华为路由器上DHCP配置(两种方式实现:一种全局DHCP分配地址;另一种是接口DHCP分配地址)
2.1使用接口DHCP分配地址:(只能给接口所连接的设备分发IP地址)
初始化操作:
2.11.进入系统视图(配置模式)<Huawei>sys
2.1.2对路由器整体开启DHCP功能[Huawei]dhcp enable
2.1.3进入对应的接口(假设只用0号接口)---引申路由器子接口后续学习
[Huawei]int
[Huawei]interface g0/0/0
[Huawei-GigabitEthernet0/0/0]
2.1.4 配置IP和网关
[Huawei-GigabitEthernet0/0/0]ip address 192.168.10.254 24
2.1.5 显示当前信息
[Huawei-GigabitEthernet0/0/0]dis this
2.1.6在对应的接口下开启接口的DHCP功能:
[Huawei-GigabitEthernet0/0/0]dhcp select interface
2.1.7配置DNS服务器:[Huawei-GigabitEthernet0/0/0]
2.1.8 保存配置
[Huawei]q
<Huawei>save
END至此功能已实现 ;下面是提高扩展
如果公司里有些IP地址要被保留,不参与自动分配,需要把IP地址排除
[Huawei-GigabitEthernet0/0/0]dhcp server(服务) excluded-ip-address(不包含的IP段) 192.168.10.4 192.168.10.253
2.2全局DHCP池(可以给所有VLAN设备分发IP地址)
<Huawei>
<Huawei>sys
[Huawei]sysname CorpR2
[CorpR2]int g0/0/0
[CorpR2-GigabitEthernet0/0/0]ip add 192.168.20.1 24
[CorpR2-GigabitEthernet0/0/0]q
[CorpR2]dhcp enable
[CorpR2]ip pool 20pool
[CorpR2-ip-pool-20pool]gateway-list 192.168.20.1
[CorpR2-ip-pool-20pool]network 192.168.20.0 mask 255.255.255.0
[CorpR2-ip-pool-20pool]dns-list 114.114.114.114 192.168.20.1
[CorpR2-ip-pool-20pool]domain-name csvw.info
[CorpR2-ip-pool-20pool]excluded-ip-address 192.168.20.3 192.168.20.253
[CorpR2]int g0/0/0
[CorpR2-GigabitEthernet0/0/0]dhcp select global
[CorpR2-GigabitEthernet0/0/0]q
[CorpR2]q
<CorpR2>save
END至此功能已实现; 下面是提高扩展
静态绑定:它的功能给服务器固定IP地址,要知道该mac地址
[CorpR2]ip pool 20pool
[CorpR2-ip-pool-20pool]gateway-list 192.168.20.1
[CorpR2-ip-pool-20pool]network 192.168.20.0 mask 255.255.255.0
[CorpR2-ip-pool-20pool]dns-list 114.114.114.114 192.168.20.1
[CorpR2-ip-pool-20pool]static-bind ip-address 192.168.20.254 mac-address 5489-98A5-53D1
3. Windows server2016DHCP配置-----后续编写
4.linux服务器DHCP配置-----后续编写
DHCP服务器工作原理四步骤:
1.DHCP Discover (发现与寻找)
1.1DHCP在传输层里使用的是UDP协议(传输层里引申出端口号;客户端使用68端口,服务端使用67端口)
1.2在网络层引申IP地址(数据包最基本的要有源和目的IP地址)
尴尬处在新设备本来就是要索取IP地址;没有自己的IP地址而且新设备本来就是要寻找DHCP服务器地址,目的IP地址更不知道。? 还好IP地址里有两个特殊的地址。以ipv4为列,如果不知道自己的IP地址那就填写0.0.0.0;如果不知道目标IP地址那就填写255.255.255.255(填写这个地址就会进行广播)
1.3在数据链路层引申MAC地址(数据包也要有源和目的MAC地址)
新设备有自己源MAC地址,但目标MAC地址不知道(填写MAC广播地址ff:ff:ff:ff:ff:ff)
2.DHCP Offer(提供上网所需配置信息IP地址,子网掩码,网关地址和DNS地址)这里引申DHCP Request(选择并请求)为什么呢?防止局域网里有两台DHCP服务器同时提供Offer服务新设备只能选择一个。
3. DHCP Request(选择并请求)
疑惑?在上一步新设备都已经收到DHCP服务器提供的配置信息了,直接单播发送给这个DHCP服务器就行了嘛?---好处在于有这步,局域网可配多个DHCP服务器。
因此在网络层还是用广播可以告诉所有设备已经选择了哪个服务器。同理数据链路层的MAC地址也是和Discover阶段是一样的。
4. DHCP ACK (确认)
如果DHCP服务器收到了新设备发来的DHCP Request就要发送DHCP ACK来确认新设备可以使用这个IP地址了
之后所有数据信息基本和DHCP Offer是一样的,新设备就可以上网了。