之前在微信群和论坛,都有网友提到这个问题,今天远程值班,源于抖音的一条推送,感慨万分,决定回顾一下老剧《渴望》,巡检一遍休息一下,顺便回忆一下思科DHCP地址预留机制,一定要做一次“早鸟”
需求1:笔记本0和1获取固定的IP地址,在思科产品上,这叫基于MAC地址的DHCP预留机制,一个MAC分配一个固定的IP地址;其它PC动态获取地址,这是正常的DHCP地址分配。
SW0(config)#inter vlan 1
SW0(config-if)#ip add 10.1.1.254 255.255.255.0
SW0(config-if)#no shut
SW0(config)#ip dhcp excluded-address 10.1.1.1 10.1.1.10
SW0(config)#ip dhcp excluded-address 10.1.1.254
#只是个人习惯,排除地址池两端的地址,用于静态和备用
SW0(config)#ip dhcp pool normal
SW0(dhcp-config)#network 10.1.1.0 255.255.255.0
SW0(dhcp-config)#default-router 10.1.1.254
SW0(dhcp-config)#dns-server 8.8.8.8
#常规DHCP地址池的配置方法,思科默认租期一天
SW0(config)#ip dhcp pool static
SW0(dhcp-config)#address 1.1.1.8 hardware-address 0040.0B94.AAD0
SW0(dhcp-config)#address 1.1.1.88 hardware-address 0000.0CAC.A2E2
SW0(dhcp-config)#default-router 1.1.1.254
SW0(dhcp-config)#dns-server 8.8.8.8
#一个hardware-address(MAC)对应一个固定的的address(IP)
注意基于不同的产品和IOS,还有另外一种配置方法:
SW0(config)#ip dhcp pool xiaoniu
SW0(config)#host 1.1.1.8 255.255.255.0
SW0(config)#client-identifier 0100.000C.ACA2.E2
SW0(config)#default-router 1.1.1.1
SW0(config)#dns-server 8.8.8.8
这种配置要注意两点:
1:地址池host,不能用255.255.255.255
2:client-identifier指MAC地址:如果client是Windows系统必须要在MAC地址加上01;如果是Linux系统,可以不写。
需求2:PC0是获取固定的IP地址,而只要是连接到FA0/2接口下的终端一定获取10.1.1.2,FA0/3接口下的终端一定获取10.1.1.3(这叫基于端口的DHCP地址预留,一个端口下对应一个固定的IP地址)。
SW0(config)#ip dhcp excluded-address 10.1.1.1 10.1.1.3
SW0(config)#ip dhcp use subscriber-id client-id
SW0(config)#ip dhcp pool xiaoniu
SW0(dhcp-config)#net 10.1.1.0 255.255.255.0
SW0(dhcp-config)#address 10.1.1.2 client-id Fa0/2 ascii
SW0(dhcp-config)#address 10.1.1.3 client-id Fa0/3 ascii
#通过端口号的ascii 来识别,并分配地址
SW0(dhcp-config)#address 10.1.1.1 hardware-address 000A.41B9.7C57
SW0(dhcp-config)#exit
SW0(config)#inter vlan 1
SW0(config-if)#ip add 10.1.1.254 255.255.255.0
SW0(config-if)#no shutdown