使能DHCP Relay_option键的作用

使能DHCP Relay_option键的作用DHCP一家子(不包括DHCPv6)包括DHCPClient、DHCPServer、DHCPRelay以及DHCPSnooping,之后我会一个个详细学习之后发出来。今天讲述一下DHCPrelay,之前先学习的DHCPSever,还没来得及整理,之后会发出来,今天先说说DHCPRelay。DHCPRelay(DHCP中继),也叫作DHCPAgent,主要用于DHCPClient和DHCPServer不在一个网段时,DHCPClient又有自动地址分配的请…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

       DHCP一家子(不包括DHCPv6)包括DHCP Client、DHCP Server、DHCP Relay以及DHCP Snooping,之后我会一个个详细学习之后发出来。今天讲述一下DHCP relay,之前先学习的DHCP Sever,还没来得及整理,之后会发出来,今天先说说DHCP Relay。

      DHCP Relay(DHCP中继),也叫作DHCP Agent,主要用于DHCP Client和DHCP Server不在一个网段时,DHCP Client又有自动地址分配的请求。下面说一下工作过程:

      DHCP Client广播发送请求报文,如果同一存在DHCP Server,则Server给客户端提供地址分配。如果本网络不存在DHCP Server,那么就需要DHCP Realy充当代理,来代替DHCP Client寻找DHCP Server,同时也把Server发送给客户端的响应报文转发给客户端。

具体流程如下:假设本网络内没有DHCP Server    

 Dhcp relay会根据接收到的报文的op字段判断是请求报文还是响应报文:

1)如果收到请求报文的话(可能来自dhcp cllient也可能是dhcp relay),检查如果带有option82字段,则丢弃(来自client,单层relay)或者用自己的option82替换(来自dhcp relay,多层relay)。如果没有携带option82,则DHCP Relay需要添加这个选项,并修改giaddr字段为自己的ip地址,hops字段加1,如果DHCP Relay知道DHCP Server的地址那么就单播出去,否则就广播出去(看如何配置)。Dhcp server收到请求报文后,解析option82字段得到dhcp relay的信息,同时发送响应报文,响应报文带有给DHCP Client的配置信息以及option82字段。

2)如果收到的是响应报文(可能来自DHCP Relay也可能是DHCP Server),那么dhcp relay会剥离option82字段,然后一层层下发到HDCP Client

交互过程如此下图:

dhcp relay process

说明:

请求报文包括:Discover、Request、Inform、Decline、Release

响应报文包括:Offer、ACK、NAK

DHCP Client正常请求报文是广播报文,如果是DHCP Server直接发送给DHCP Server的那就需要看Client是否设置广播标志位。如果设置则是广播,未设置就是单播。DHCP server若发送给DHCP Relay则是单播。DHCP Relay 发送给DHCP Client要检查是否设置广播标志位(响应报文的这个位的设置和请求报文设置的是相同值),DHCP Relay到DHCP Relay是单播。

Option82:

Option82选项是dhcp报文options中对dhcp relay应用设置的选项。在RFC3046中讲述了option82的作用

格式为:

dhcp option82

Code:82(option的code号)

Len:N(为sub-options的长度。设置了option82后,至少设置一个sub-option)

Sub-options:

sub-options的格式为:

dhcp option82

现在有三种sub-opt:

Sub-opt:1(circuit id表示代理电路id)一般配合sub-opt2一起使用

Len:n(sub-option value的长度)

Sub-option value:

不同的模式有不同的规定值:

在标准模式下通常是接收报文的二层端口号(port)和vlan号

另外还有华为固网模式的格式为:

AccessNodeIdentifier eth frame/slot/subslot/port/:vlan

AccessNodeIdentifier:接入点标识

eth :以太网的类型

Frame:框号

Slot:槽号

Subslot:子槽号

Port:端口号

Vlan:vlan id

Sub-opt:2(remote id表示代理远程id)

Len:n(sub-option value的长度)

Sub-option value:

接收报文的设备mac地址

Sub-opt:5(link selection 表示链路选择)

Len:n(sub-option value的长度)

Sub-option value:

一般不设置

参考RFC 3046,这篇讲述的是DHCP Option82

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/181577.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 网络爬虫必备知识之concurrent.futures库

    1.concurrent.futures库简介python标准库为我们提供了threading和mutiprocessing模块实现异步多线程/多进程功能。从python3.2版本开始,标准库又为

    2021年12月29日
  • 平分石头

    平分石头平分石头题目描述:有一n个石头,它们的重量分别是W1,…,Wn.写一个程序,把它们分成两堆,使得两堆石头的重量差最小。输入格式:输入n(1≤n≤20)表示石头的个数。第二行n个石头的重量W1,…,Wn(1≤Wi≤100000)输出格式:输入最小的差(绝对值)样例输入:5581327…

  • laravel 预加载特定的列

    laravel 预加载特定的列

  • 烽火hg6543c1光猫超级密码_电信光猫hs8145c5超级密码

    烽火hg6543c1光猫超级密码_电信光猫hs8145c5超级密码坐标杭州,宽带移机。师傅给我换了个战未来的,支持万兆的光猫…以前我是依据型号网上搜索搞到超级管理员用户就行桥接的,给我换了这个新光猫后,自己死活折腾不出来…以前大家都习惯用超级管理员进入光猫,改桥接模式利用光猫的安全漏洞花式获取超级管理员密码,什么查看网络报文、telnet啊等等手段博主要告诉大家的是,这些歪门邪道未来都是不可取的,光猫更新总归是要修复这些漏洞的。而且光猫超级管理员这玩意,电信的客服、维修师傅都不用,他们都不知道有这玩意,我们折腾有啥意义呢。大家要知道:电信是允许大家改用桥接模式的。直接打1

  • python 链接mongo数据库说明

    python 链接mongo数据库说明python 链接mongo数据库说明

  • mysql usegeneratedkeys_Mybatis Generator insert useGeneratedKeys keyProperty[通俗易懂]

    mysql usegeneratedkeys_Mybatis Generator insert useGeneratedKeys keyProperty[通俗易懂]Mybatis自动生成代码,需要用到mybatisGenerator,详见http://mybatis.github.io/generator/configreference/generatedKey.htmlinsert语句如果要返回自动生成的key值,一般会在insert里加入useGeneratedKeys属性,例如insertintosubtasks(SID,TID,RID,S…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号