加载中...

数通 13-DHCP+DNS+PPPOE


DHCP+DNS+PPPOE

DHCP(Dynamic Host Protocol),动态主机配置协议,是一个应用层协议。当我们将客户主机ip地址设置为动态获取方式时,DHCP服务器就会根据DHCP协议给客户端分配IP,使得客户机能够利用这个IP上网。

DHCP报文类型

DHCP工作原理

DHCP的实现分为4步,分别是:
第一步:Client端在局域网内发起一个DHCP Discover广播包,目的是想发现能够给它提供IP的DHCP Server。源IP:0.0.0.0 目的IP: 255.255.255.255
第二步:可用的DHCP Server接收到Discover包之后,通过发送DHCP Offer包给予Client端应答,意在告诉Client端它可以提供IP地址。只有华为设备发送Offer包是使用单播的方式,基于二层的Mac地址进行报文发送,客户端的MAC地址是在发送Discove广播包时知道的
第三步:Client端接收到Offer包之后,发送DHCP Request包对请求配置确认。在一个网络环境中可能存在多个DHCP Server,发送Request包作用是告诉网络中的DHCP Server,我已经收到了来自DHCP Server(A)的IP地址,来自其他DHCP Server的IP就不需要了。   就像A和B同时向C表白,C接受了来自A的告白,拒绝了B
第四步:DHCP Server发送ACK数据包,确认信息。

DHCP租期更新

IP租期到达50%时,DHCP客户端会请求更新ip地址租约。

注意这里的DHCP Request和上面工作原理中的Request不是同一个,这是租期更新的Request,是单播

工作原理中的Request,是向网络环境中的多台DHCP服务器发送的广播报文,因为不知道目标IP

这里的Request,是客户端已经获取到了IP地址,向DHCP服务器发送的单播报文请求续约,是知道目标IP的

DHCP重绑定

如果IP租期到达50%时,DHCP客户端请求更新ip地址租约时服务器没有响应。当DHCP客户端在租约期限到达87.5%时,还没收到服务器的响应,会申请重绑定(就是释放掉当前IP地址,之前DHCP的工作流程重新来一遍)。

IP地址释放

  • 如果IP租约到期前都没有收到服务器响应,客户端停止使用此IP地址。
  • 如果DHCP客户端不再使用分配的IP地址,也可以主动向DHCP服务器发送DHCPRELEASE报文,释放该IP地址。
更加详细的DHCP工作原理请访问下面的链接
https://blog.csdn.net/weixin_34481217/article/details/123425141
=====================================================================================

网络地址转换技术NAT (Network Address Translation)主要用于实现位于内部 网络的主机访问外部网络的功能。当局域网内的主机需要访问外部网络时,通过NAT技术可以将其私网地址转换为公网地址,并且多个私网用户可以共用一个公网地址,这样既可保证网络互通,又节省了公网地址。

静态NAT

动态NAT

NAPT

前面的静态NAT和动态NAT在实际上是无法解决现实中的上网问题的,公网的ip地址是不够的。

网络地址端口转换——NAPT

网络地址端口转换NAPT(Network Address Port Translation)是人们比较熟悉的一种转换方式。NAPT普遍应用于 接入设备中,它可以将中小型的网络隐藏在一个合法的IP地址后面。NAPT与 动态地址NAT不同,它将内部连接映射到外部网络中的一个单独的IP地址上,同时在该地址上加上一个由NAT设备选定的TCP 端口号

NAPT是一种较流行的NAT的变体通过转换TCP或UDP协议 端口号以及地址来提供并发性。除了一对源和目的IP地址以外,这个表还包括一对源和目的协议 端口号,以及NAT盒使用的一个协议端口号。注意:在NAPT中不是一台PC对应一个协议端口,而是一台PC中的一个进程(会话)对应一个协议端口。一共有65535个端口,且同一协议端口在被占用时,不会被其他进程同时占用。只有这个端口绑定的进程被网关释放掉才会重新回到池子里

NAPT的主要优势在于,能够使用一个全球有效IP地址获得通用性。主要缺点在于其通信仅限于TCP或UDP。只要所有通信都采用TCP或UDP,NAPT就允许一台内部计算机访问多台外部计算机,并允许多台内部 主机访问同一台外部计算机,相互之间不会发生冲突。

NAPT与NAT的区别在于,NAPT不仅转换IP包中的IP地址,还对IP包中TCP和UDP的Port进行转换。这使得多台私有网主机利用1个NAT公共IP就可以同时和公共网进行通信。(NAPT多了对TCP和UDP的端口号的转换)

Easy IP

NAT服务器

=====================================================================================

PPPoE

1.定义

PPPoE(PPP over Ethernet)协议是一种把PPP帧封装到以太网帧中的链路层协议。PPPoE可以使以太网网络中的多台主机连接到远端的宽带接入服务器。

2.目的

运营商希望把一个站点上的多台主机连接到同一台远程接入设备,同时接入设备能够提供与拨号上网类似的访问控制和计费功能。在众多的接入技术中,把多个主机连接到接入设备的最经济的方法就是以太网,而PPP协议可以提供良好的访问控制和计费功能,于是产生了在以太网上传输PPP报文的技术,即PPPoE。

PPPoE利用以太网将大量主机组成网络,通过一个远端接入设备连入因特网,并运用PPP协议对接入的每个主机进行控制,具有适用范围广、安全性高、计费方便的特点。

3.PPPoE拨号的过程

3.1.Discovery阶段

1)PPPoE Client广播发送一个PADI(PPPoE Active Discovery Initial)报文,在此报文中包含PPPoE Client想要得到的服务类型信息。

2)所有的PPPoE Server收到PADI报文之后,将其中请求的服务与自己能够提供的服务进行比较,如果可以提供,则单播回复一个PADO(PPPoE Active Discovery Offer)报文。

3)根据网络的拓扑结构,PPPoE Client可能收到多个PPPoE Server发送的PADO报文,PPPoE Client选择最先收到的PADO报文对应的PPPoE Server做为自己的PPPoE Server,并单播发送一个PADR(PPPoE Active Discovery Request)报文。

4)PPPoE Server产生一个唯一的会话ID(Session ID),标识和PPPoE Client的这个会话,通过发送一个PADS(PPPoE Active Discovery Session-confirmation)报文把会话ID发送给PPPoE Client,会话建立成功后便进入PPPoE Session阶段。

完成之后通信双方都会知道PPPoE的Session_ID以及对方的以太网地址,它们共同确定了唯一的PPPoE Session。

3.2.Session阶段

PPPoE Session上的PPP协商和普通的PPP协商方式一致,分为LCP、认证、NCP三个阶段。

1)LCP阶段主要完成建立、配置和检测数据链路连接。

2)LCP协商成功后,开始进行认证,认证协议类型由LCP协商结果(CHAP或者PAP)决定。

3)认证成功后,PPP进入NCP阶段。NCP是一个协议族,用于配置不同的网络层协议,常用的是IP控制协议(IPCP),它主要负责协商用户的IP地址和DNS服务器地址。

PPPoE Session的PPP协商成功后,就可以承载PPP数据报文。

在PPPoE Session阶段所有的以太网数据包都是单播发送的。

3.3.Terminate阶段

PPP通信双方可以使用PPP协议自身来结束PPPoE会话,当无法使用PPP协议结束会话时可以使用PADT(PPPoE Active Discovery Terminate)报文。

进入PPPoE Session阶段后,PPPoE Client和PPPoE Server都可以通过发送PADT报文的方式来结束PPPoE连接。PADT数据包可以在会话建立以后的任意时刻单播发送。在发送或接收到PADT后,就不允许再使用该会话发送PPP流量了。


文章作者: okra2saber
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 okra2saber !
评论
  目录