jie'ru拓扑如下:
在TCP/IP中,IP地址作为通信的核心,一个运行了TCP/IP的终端,如果没有地址,什么都做不了,终端少的情况下可以使用静态方式,如果终端多的话手动设置地址工作量大,而且容易出错,如果地址冲突了,会导致部分终端无法上网,为了减轻IT人员的负担,可以使用网络设备自带的地址分配协议DHCP,为下面的终端进行地址分配。
DHCP地址自动分配有三种方式:接口分配、中继分配、全局分配
1、基于接口分配
LSW1核心交换机
[Core]dhcp enable //开启地址分配
[Core]vlan batch 10 20 //创建vlan 10 20
[Core]interface Vlanif 10 //进入虚拟接口
[Core-Vlanif10]ip address 192.168.10.1 24 //设置网关掩码
[Core-Vlanif10]dhcp server dns-list 114.114.114.114 223.5.5.5 //设置DNS
[Core-Vlanif10]dhcp select interface //选择给予接口方式进行分配
[Core]interface Vlanif 20
[Core-Vlanif20]ip address 192.168.20.1 24
[Core-Vlanif20]dhcp server dns-list 114.114.114.114 223.5.
[Core-Vlanif20]dhcp select interface
这里dhcp就创建完了,那下面的PC机怎么获取到地址呢,核心交换机下面有一个接入交换机,加入交换机下面有多个网段,这里怎么设置,根据之前章节,交换机接口作用,对于二层可配置交换机下面有多个VLAN的话,交换机与交换机之间接口使用Trunk或Hybrid模式,这里使用trunk演示。
核心交换机对接接入交换机
[Core]interface GigabitEthernet 0/0/1 //进入核心交换机的接口
[Core-GigabitEthernet0/0/1]port link-type trunk //设置接口模式为trunk
[Core-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20 //设置允许通过的业务vlan
接入交换机对接核心交换机
[JR1]dhcp enable //开启DHCP自动分配
[JR1]vlan batch 10 20 //创建vlan
[JR1]interface GigabitEthernet 0/0/1 //进入接入交换机接口
[JR1-GigabitEthernet0/0/1]port link-type trunk //设置接口模式
[JR1-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20 //设置允许通过的业务VLAN
接入交换机与下面的终端如何对接使用什么接口呢,接入交换机与终端对接的接口一般常用的是access模式,并根据VLAN划分将终端的接口划分到对应的VLAN即可。
接入交换机对接终端
[JR1]interface Ethernet 0/0/1
[JR1-Ethernet0/0/1]port link-type access
[JR1-Ethernet0/0/1]port default vlan 10
[JR1]interface Ethernet 0/0/2
[JR1-Ethernet0/0/2]port link-type access
[JR1-Ethernet0/0/2]port default vlan 20
有人问了,如果接入交换机Eth0/0/1设置的对应的vlan,Eth0/0/2口没有设置会出现什么,根据交换机的默认功能,接口出厂默认都属于VLAN 1 如果VLAN 1 没有任何设置,则不会获取到任何地址。接入交换机设置完成后,我们看一下终端是否可以获取到地址。
这里有没有一个发现,PC1有DNS,PC2没有出现DNS,是怎么回事呢,因为配置命令行的时候,配置太快没有注意检查,导致有些没有配置完成,所以配置完成后一定要好好仔细检查。
这里我门可已看到少配置了一条命令,现在把他加上
重置一下网卡,现在可以正常获取到DNS地址了。
第二种方式全局配置:
[Core]ip pool vlan10 创建一个全局地址池
[Core-ip-pool-vlan10]network 192.168.10.0 mask 24 //创建网段及子网掩码
[Core-ip-pool-vlan10]gateway-list 192.168.10.1 //设置网关
[Core-ip-pool-vlan10]dns-list 114.114.114 223.5.5.5 //设置DNS
[Core]ip pool vlan20 创建一个全局地址池
[Core-ip-pool-vlan20]network 192.168.20.0 mask 24 //创建网段及子网掩码
[Core-ip-pool-vlan20]gateway-list 192.168.20.1 //设置网关
[Core-ip-pool-vlan20]dns-list 114.114.114 223.5.5.5 //设置DNS
这里全局地址就设置完成了
这里需要在对应的接口或者虚拟接口(vlanif)下启用全局分配
[Core]interface Vlanif 10 //进入对应的接口
[Core-Vlanif10]ip address 192.168.10.1 255.255.255.0 \\设置IP地址掩码
[Core-Vlanif10]dhcp select global //开启全局
[Core]interface Vlanif 20 //进入对应的接口
[Core-Vlanif20]ip address 192.168.20.1 255.255.255.0 \\设置IP地址掩码
[Core-Vlanif20]dhcp select global //开启全局
根据现有的网络需求进行配置即可,核心对接接入汇聚同理,选用合适的接口模式进行对接。
可以看到PC1与PC2都获取到了对应的地址,那终端是怎么获取到地址的呢
下面抓包看一下,可以看到里面有四条相关的信息
DHCP Discover:通常情况下电脑、手机、平板一些可以联网的终端,在自动获取方式,获取到网络后,会发送这条命令来寻找,网络内是否有DHCP服务器存在。
客户端默认情况下是没有地址的,二层三层都已广播形式,在一个广播域内寻找DHCP服务器,客户端默认只有MAC地址,没有IP想请求对应的信息,已option 55列出。
DHCP Offer:DHCP服务器收到客户端以后的响应包。
DHCP Request:客户端对应请求的这些信息没有问题。
DHCP ACK:服务器收到后会返回客户端,并将地址租用给客户端。