一,IPv4定义了两大类广播地址
(1)全向广播:255.255.255.255,不能跨越广播域通信,也就是说不能跨越路由器通信
(2)定向广播(子网广播):主机位全部为1的网段地址,可以通过路由器,跨越广播域通信。例如172.16.10.0/24的网段和192.168.10.0/24的网段被路由器隔开,如果172.16.10.0/24的网段主机要给192.168.10.0/24的网段发广播希望192.168.10.0的网段所有主机都收到数据,那么172.16.10.0/24网段主机发送的目标IP地址应该是192.168.10.255,这就是定向广播。
二,FLSM
定长子网掩码,借子网络号的位数相同
11.0.0.0/8
借2位的子网如下:
11.0.0.0/10 不可使用
11.128.0.0/10 可以使用
11.64.0.0/10 可以使用
11.192.0.0/10 不用使用
三,VLSM
可变长子网掩码,借子网络号的位数可不相同也就是说对子网络继续进行划分
VLSM技术对高效分配IP地址(较少浪费)以及减少路由表大小都起到非常重要的作用。这在超网和网络聚合中非常有用。但是需要注意的是使用VLSM时,所采用的路由协议必须能够支持它,这些路由协议包括RIP2,OSPF,EIGRP,IS-IS和BGP。
四,IP编址
1,编址的原则
1.1分析需求,企业中需要多少个IP广播域
1.2分析企业中最大的广播域需要多少个节点
1.3根据第二步分析对主类地址段进行第一次借位子网化
1.4从小到大的顺序把划分的子网段分配给相应的广播域
1.5把最大的子网段保留下来用以下一次借位子网化使用
2,案例
2.1上述网络中做大的广播域主机数是17000,由于(2的14次方=16384)<17000<(2的15次方=32768),所以17000个主机的广播域的主机位至少是15位,依照这样的计算800个主机的广播域的主机位至少是10位,1023个主机的广播域的主机位至少是11位(注意这里不能是10位,因为全0和全1的主机的IP地址不可用),255个主机广播域的主机位是9位,64个主机的广播域的主机位是7位,还有就是路由器相连的广播域的主机位只需要两位
2.2我们首先对主机数最大的广播域进行子网化,也就是17000个主机的广播域的子网化,最小的子网15.0.0.0/17给这个网络使用(子网掩码255.255.128.0),最大的子网15.255.128/17保留给第二大的子网继续借位子网化使用,第二大的子网的主机有1023个,借11位,那么1023个主机的使用最小子网是15.255.128.0/21(子网掩码255.255.240.0),最大的子网是255.255.240.0/21保留给第三大的子网继续借位子网化使用,第三大的子网主机有800个,借10位,那么800个主机的使用最小子网是15.255.240.0/22(子网掩码是255.255.248.0),最大的子网是15.255.248.0/22保留给第四大的子网继续借位子网化使用,这样一次借位子网化下去就可以了。
2.3得到的网络图示
五,DHCP配置
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是IETF为实现IP的自动配置而设计的协议,它可以为客户机自动分配IP地址、子网掩码以及缺省网关、DNS服务器的IP地址等TCP/IP参数。了解DHCP工作过程可以帮助我们排除有关DHCP服务遇到的问题。DHCP 协议是基于UDP层(这也就是说在snort检测过程中,只能看UDP的包)之上的应用,dhcp使用udp携带报文,udp封装在ip数据包中发送。
(一)、DHCP客户机初始化:
1. 寻找DHCP Server。
当DHCP客户机第一次登录网络的时候(也就是客户机上没有任何IP地址数据时),它会通过UDP 67端口向网络上发出一个DHCPDISCOVER数据包(包中包含客户机的MAC地址和计算机名等信息)。因为客户机还不知道自己属于哪一个网络,所以封包的源地址为0.0.0.0,目标地址为255.255.255.255,然后再附上DHCP discover的信息,向网络进行广播。DHCP discover的等待时间预设为1秒,也就是当客户机将第一个DHCP discover封包送出去之后,在1秒之内没有得到回应的话,就会进行第二次DHCP discover广播。若一直没有得到回应,客户机会将这一广播包重新发送四次(以2,4,8,16秒为间隔,加上1-1000毫秒之间随机长度的时间)。如果都没有得到DHCP Server的回应,客户机会从169.254.0.0/16这个自动保留的私有IP地址中选用一个IP地址。并且每隔5分钟重新广播一次,如果收到某个服务器的响应,则继续IP租用过程。
2. 提供IP地址租用
当DHCP Server监听到客户机发出的DHCP discover广播后,它会从那些还没有租出去的地址中,选择最前面的空置IP,连同其它TCP/IP设定,通过UDP 68端口响应给客户机一个DHCP OFFER数据包(包中包含IP地址、子网掩码、地址租期等信息)。此时还是使用广播进行通讯,源IP地址为DHCP Server的IP地址,目标地址为255.255.255.255。同时,DHCP Server为此客户保留它提供的IP地址,从而不会为其他DHCP客户分配此IP地址。由于客户机在开始的时候还没有IP地址,所以在其DHCP discover封包内会带有其MAC地址信息,并且有一个XID编号来辨别该封包,DHCP Server响应的DHCP OFFER封包则会根据这些资料传递给要求租约的客户。
3. 接受IP租约
如果客户机收到网络上多台DHCP服务器的响应,只会挑选其中一个DHCP OFFER(一般是最先到达的那个),并且会向网络发送一个DHCP REQUEST广播数据包(包中包含客户端的MAC地址、接受的租约中的IP地址、提供此租约的DHCP服务器地址等),告诉所有DHCP Server它将接受哪一台服务器提供的IP地址,所有其他的DHCP服务器撤销它们的提供以便将IP地址提供给下一次IP租用请求。此时,由于还没有得到DHCP Server的最后确认,客户端仍然使用0.0.0.0为源IP地址,255.255.255.255为目标地址进行广播。事实上,并不是所有DHCP客户机都会无条件接受DHCP Server的OFFER,特别是如果这些主机上安装有其它TCP/IP相关的客户机软件。客户机也可以用DHCP REQUEST向服务器提出DHCP选择,这些选择会以不同的号码填写在DHCP Option Field里面。客户机可以保留自己的一些TCP/IP设定。
4. 租约确认
当DHCP Server接收到客户机的DHCP REQUEST之后,会广播返回给客户机一个DHCP ACK消息包,表明已经接受客户机的选择,并将这一IP地址的合法租用以及其他的配置信息都放入该广播包发给客户机。客户机在接收到DHCP ACK广播后,会向网络发送三个针对此IP地址的ARP解析请求以执行冲突检测,查询网络上有没有其它机器使用该IP地址;如果发现该IP地址已经被使用,客户机会发出一个DHCP DECLINE数据包给DHCP Server,拒绝此IP地址租约,并重新发送DHCP discover信息。此时,在DHCP服务器管理控制台中,会显示此IP地址为BAD_ADDRESS。如果网络上没有其它主机使用此IP地址,则客户机的TCP/IP使用租约中提供的IP地址完成初始化,从而可以和其他网络中的主机进行通讯。
(二)、DHCP客户机租期续约:
客户机会在租期过去50%的时候,直接向为其提供IP地址的DHCP Server发送DHCP REQUEST消息包。如果客户机接收到该服务器回应的DHCP ACK消息包,客户机就根据包中所提供的新的租期以及其它已经更新的TCP/IP参数,更新自己的配置,IP租用更新完成。如果没有收到该服务器的回复,则客户机继续使用现有的IP地址,因为当前租期还有50%。如果在租期过去50%的时候没有更新,则客户机将在租期过去87.5%的时候再次向为其提供IP地址的DHCP联系。如果还不成功,到租约的100%时候,客户机必须放弃这个IP地址,重新申请。如果此时无DHCP可用,客户机会使用169.254.0.0/16中随机的一个地址,并且每隔5分钟再进行尝试。
(三)配置DHCP
如下所示的拓扑是我们的实验拓扑
R1:
f1/0:172.16.1.1 255.255.255.0
server:
f1/0:172.16.1.2 255.255.255.0
f1/1:192.168.1.2 255.255.255.0 这个地址作为192.168.1.0网络的网关,这个是必须需要的。
配置server为DHCP服务器
//启用DHCP功能 server(config)#service dhcp //创建dhcp的地址池,这里给地址池起名CCNA server(config)#ip dhcp pool CCNA //指定要分配的地址段 server(dhcp-config)#network 192.168.1.0 255.255.255.0 //指定默认网关 server(dhcp-config)#default-router 192.168.1.2 //指定DNS server(dhcp-config)#dns-server 8.8.8.8 //指定ip地址的租期(如下是只要client不用就回收IP地址) server(dhcp-config)#lease 0 //指定哪些地址不需要被分配 server(config)#ip dhcp excluded-address 192.168.1.1 192.168.1.2
配置client端
client(config)#interface f1/0 client(config-if)#ip address dhcp client(config-if)#no shutdown client#show ip route Default gateway is 192.168.1.2 Host Gateway Last Use Total Uses Interface ICMP redirect cache is empty client#show ip interface f1/0 FastEthernet1/0 is up, line protocol is up Internet address is 192.168.1.5/24 Broadcast address is 255.255.255.255 Address determined by DHCP