【网络基础系列二】BOOTP、DHCP协议

BOOTP

含义:BOOT Protocol,引导协议

作用:引导无盘计算机或者第一次启动的计算机获取以下网络配置信息:

  • 主机的IP地址、子网掩码
  • 路由器(网关)的IP地址
  • DNS服务器IP地址

C/S协议:

  • Client:UDP 68端口
  • Server:UDP 67端口

静态配置协议:

  含义:BOOTP Server上预设了BOOTP Client的物理地址与IP地址的绑定。

   注意:“静态”的含义并非是指获取方式的静态性,而是指BOOTP Client的物理地址和IP地址的绑定关系是初始化的时候就人为地配置在BOOTP Server中,后期不再改变。

 BOOTP操作

1、BOOTP使用UDP,BOOTP服务器启动后一直处于被动响应状态,等待接受客户请求;

2、客户端从68端口发送UDP请求,服务器一直处于监听状态,当监听到有请求传过来时将请求从67端口接收;

3、服务器响应请求:服务器仍然从67端口发送相应报文给客户,客户也从发送端口68处接收该回应报文。

  红色边框内是BOOTP封装,外层灰色是UDP封装,SP为源地址,而DA为目的地址。

  上图中,BOOTP封装的SP是端口号68,目的地址是端口号67;而UDP封装的源地址是全0,因为使用BOOTP协议的主要目的就是为了获取本机的IP地址等信息,关键在于客户并不知道本机地址,因而使用全0表示,目的地址使用全1,表明该客户也不清楚BOOTP服务器在哪里,因而选用广播方式进行转发,全1表示的是广播地址。

  下图中,BOOTP封装的SP是端口号67,目的地址是端口号68,与请求报文对应的源地址和目的地址恰好相反;而UDP封装的源地址是就是该服务器所在的IP地址,目的地址可以使用目标客户的地址也可以使用全1进行广播,所谓条条大路通罗马,最终实现的效果是一样的。

DHCP

含义:Dynamic Host Configuration Protocol,动态主机配置协议,RFC 2131

作用:

  1. BOOTP的扩充和增强,与BOOTP向后兼容
  2. 在有限期间内提供临时的静态的或动态配置
  •   静态数据库:人工配置好的物理地址和IP地址的绑定,存放在静态的数据库中
  •   IP地址池:其余可用的待分配的IP地址存放在IP地址池中
时间: 2024-08-15 05:38:43

【网络基础系列二】BOOTP、DHCP协议的相关文章

Android网络编程系列 一 TCP/IP协议族

在学习和使用Android网路编程时,我们接触的仅仅是上层协议和接口如Apache的httpclient或者Android自带的httpURlconnection等等.对于这些接口的底层实现我们也有必要进一步的了解,这就要我们了解网络通信层了,提到网络通信层不得不说起ISO-OSI的七层协议经典架构,如图所示: 上图的左边部分就是osi架构模型了, ISO/OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是国际标

网络基础(二)

网络基础(二) 配置网络高级命令nmcli(NetworkManager command line tool) nmcli命令修改是直接修改配置文件 命令语法:nmcli [OPTIONS] OBJECT { COMMAND | help } 一般常用选项是connection(con)和device(dev)可以tab (比较方便) [root@localhost ~]# nmcli agent connection device general help networking radio 显

C++重点知识点(基础系列二)

C++重点知识点基类 C++重点知识点(基础系列二),布布扣,bubuko.com

运维网络基础(二)

1.1 DHCP协议 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是由IETF(Internet工作任务小组)设计开发的,专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议 1.1.1 使用DHCP的好处 减少管理员的工作量 避免输入错误的可能 避免IP冲突 提高了IP地址的利用率 方便客户端的配置 1.1.2 DHCP的分配方式 自动分配 :分配到一个IP地址后永久使用 手动分配 :由DHCP服务器管理员专门指定IP地址

异常处理与网络基础中的tcp,udp协议

# 异常处理: # 什么是异常?异常和错误的区别 # Error 语法错误 比较明显的错误 在编译代码阶段就能检测出来 # Iteration 异常 在执行代码的过程中引发的异常 # 异常发生之后的效果 # 一旦在程序中发生异常,程序就不再继续执行了 # try: # # name # [][3] # except NameError: # print("请设置好变量!!") # except IndexError: #分支异常处理 # print('请认真!!') # # excep

夯实基础系列二:网络知识总结

前言 无论是 C/S 开发还是 B/S 开发,无论是前端开发还是后台开发,网络总是无法避免的,数据如何传输,如何保证正确性和可靠性,如何提高传输效率,如何解决会话管理问题,如何在网络拥堵环境下采取措施.这些都是需要了解的. 今天总结下与网络相关的知识,不是那么详细,但是包含了我认为重要的所有点.如果想深入了解的可以参考<图解HTTP[上野 宣]>.<图解TCP/IP(第5版)[竹下隆史]>以及计算机网络相关教材. 概要 网络知识我做了 8 个方面的总结,包括DNS协议,HTTP协议

Java web基础总结二之—— http协议

Java web基础总结之二--http协议 由于java web是基于B/S的,所以http协议是java web 最基础,也非常重要的知识.HTTP协议用于定义客户端与web服务器之间进行通信的格式.从web服务器中获得某个web资源或者web 服务器接受客户端的请求都需要遵守一定的通讯格式,就是http协议. 一.HTTP协议是什么? HTTP协议是学习java web的基石,同时也是管理和维护一些复杂的WEB站点的必备的基础,如果你想要深入的理解java web的服务器的实现,就更需要掌

网络编程(二)——TCP协议、socket

TCP协议与socket套接字 一.TCP协议 1.可靠传输,TCP数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包不必再分割. 2.(1)三次握手建链接(2)四次挥手断开链接(3)tcp协议的状态(4)syn洪水攻击与半连接池 3.(1)三次握手建立链接.四次挥手断开链接(各种状态) (2)syn洪水攻击与半连接池 syn洪水攻击:就是让服务器资源耗尽,无法提供正常的服务,间接地拒绝 半连接池:暂时存放请求,用

Android网络编程系列 一 TCP/IP协议族之链路层

这篇借鉴的文章主要是用于后续文章知识点的扩散,在此特作备份和扩散学习交流. 数据链路层有三个目的: 为IP模块发送和 接收IP数据报. 为ARP模块发送ARP请求和接收ARP应答. 为RARP发送RARP请 求和接收RARP应答 ip大家都听说过.至于ARP和RARP,ARP叫做地址解析协议,是用IP地址换MAC地址的一种协议,而RARP则叫做逆地址解析协议,在tcp/ip协议的后面章节会介绍它们(在局域网里面用ARP协议可以很容易的搞瘫痪网络哦) 数据链路层的协议还是很多的,有我们最常用的以太