1.网络中的终端通过发送DHCP广播的方式来获取IP地址信息。由于VLAN隔离广播,当终端与DHCP服务器不在同一广播域时,就需要用到DHCP中继。

2.DHCP服务的原理概述:

DHCP服务器想要给终端设备分配IP信息,需要获取两个重要的信息,终端所在的网段(即掩码)、对应设备的MAC地址。

DHCP依靠前者来判断应当给对应设备分配那个地址池中的地址,然后依靠后者来维护IP和MAC之间的映射好以此来保证不会出现IP地址冲突。

3.配置了ip helper-address命令的路由器工作过程:

1)DHCP客户端发送请求,由于没有ip地址,所以自己的源IP地址为0.0.0.0,而且也不知道目的DHCP服务器的地址,所以为广播255.255.255.255,即源IP为0.0.0.0;

目的IP地址为255.255.255.255;源MAC地址为自己MAC地址;目的MAC地址为FF:FF:FF:FF:FF:FF;

2)当路由器接收到该信息,则对其进行替换,用自己的接口地址(接收到数据报的接口,也就是终端所在网段网关)来取代源地址0.0.0.0,并且用ip help-address 命令中指定的地址来取代目的地址255.255.255.255,

即源IP为(网关地址);目的IP地址为(ip helper-address指定地址);源MAC地址为终端MAC地址;目的MAC地址为(ip helper-address指定地址对应MAC地址);

3)如此,当DHCP服务器接收到路由器转发来的信息后,同样可以获得相应的信息来确定网段和MAC地址与IP地址的映射,故而可以让终端获得相应的信息。

4.ip helper-address功能不仅仅可以用于DHCP转发,其实通过全局命令 ip forward-protocol它可以转发任意UDP广播!当开启了这个命令,默认开启了8个缺省UDP转发端口。

它们分别是是:TFTP(69)、DNS(53)、时间(37)、NETBIOS服务 (137)、N ETBIOS数据报服务(138)、BOOTP服务器(67)、BOOTP客户机(68)和终端访问控制器访问控制系统TACACS(49)。

最后,如果你只用来转发DHCP,那默认开启不必要的端口很可能造成路由器过载,所以,请先使用全局命令来关掉所有的UDP转发,然后再单独开启DHCP转发

  Router(config)#no ip forward-protocol udp 
  Router(config)#ip forward-protocol udp  bootps 
  Router(config)#ip forward-protocol udp  bootpc

5.如果路由器上配置了多个ip helper-address 那么路由器会将终端的DHCP广播同时转发到指定的多个DHCP服务器。

此时若两台DHCP服务器配置的是主主模式, 两个DHCP服务器都可以(并且应该)向客户端提供DCHP Offers。那么第一个响应的DHCP服务器会获胜。

8.Cisco DHCP中继详解的更多相关文章

  1. cisco常用命令详解

    cisco常用命令详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.常用命令用法展示 1.命令行模式的来回切换 yinzhengjie>enable #从用户模式切换到 ...

  2. 【入门】广电行业DNS、DHCP解决方案详解(三)——DNS部署架构及案

    [入门]广电行业DNS.DHCP解决方案详解(三)——DNS部署架构及案 DNS系统部署架构 宽带业务DNS架构 互动业务DNS架构 案例介绍 案例一 案例二 本篇我们将先介绍DNS系统部署架构体系, ...

  3. 【转】DHCP协议详解

    协议分析 - DHCP协议解码详解 DHCP协议简介 DHCP,全称是 Dynamic Host Configuration Protocol﹐中文名为动态主机配置协议,它的前身是 BOOTP,它工作 ...

  4. DHCP服务详解

    DHCP概念和原理 dhcp服务作用 为大量客户机自动分配地址,提供集中管理 减轻管理和维护成本,提高网络配置效率 可分配的地址信息主要包括: 网卡的IP地址.子网掩码 对应的网络地址 默认网关地址 ...

  5. EtherChannel Cisco 端口聚合详解

    冗余连接及其实现 无论什么设备都无法保障运行的绝对稳定性,即使再优秀的产品也无法保证24×7不间断的工作.除去设备或模块损坏.传输线路中断等硬件故障原因以外,还可能由于网络流量过载.任务负荷过大而导致 ...

  6. 【入门】广电行业DNS、DHCP解决方案详解(一)——历史及现状篇

    广电发展历史 单项网络 双向网络 智能网络 广电网络现状 广电网络典型特征 接入技术混杂 承载业务多样化 业务终端错综复杂 其他 网络现状模型 总结 广电发展历史 广电就是广播电视,广电发展可以分为三 ...

  7. 三层交换+DHCP实验详解

  8. CISCO DHCP全攻略详解

    原文链接地址:https://bbs.51cto.com/thread-800321-1.html 最近看到大家经常由于DHCP的问题犯愁, 为了让大家更明白的了解DHCP并且会配置,特此发这个贴 相 ...

  9. 【TCP/IP详解 卷一:协议】第六章:DHCP 和自动配置

    简介 为了使用 TCP/IP 协议族,每台主机or路由器都需要一定的配置信息: IP地址 子网掩码 广播地址 路由或转发表 DNS 协议配置方法: 手动 通过使用网络服务来获得 使用一些算法来自动确定 ...

随机推荐

  1. 一次mongo查询不存在字段引发的事故

    话说今天的一个小小的查询失误给了我比较深刻的教训,也让我对mongo有了更深刻的理解,下面我们来说说这个事情的原委: 我们经常使用阿里云子账号在DMS上查询线上数据库数据,今天也是平常的一次操作 集合 ...

  2. 性能超四倍的高性能.NET二进制序列化库

    二进制序列化在.NET中有很多使用场景,如我们使用分布式缓存时,通常将缓存对象序列化为二进制数据进行缓存,在ASP.NET中,很多中间件(如认证等)也都是用了二进制序列化. 在.NET中我们通常使用S ...

  3. uber_go_guide解析(三)(规范)

    前言 一主要讲的是容易忽略的错误,可能在build时都不会体现出来但是在使用时出现问题 二主要讲的是一些可以提高代码效率的用法 本篇则讲解一些规范,不是强制的但是根据规范会提高代码的可读性, 减少BU ...

  4. Laya Ts 简易对象池

    ts版本的简易对象池 ,目前主要支持3D的物体,也可以将其改成其他类型 要使用首先调用InitPool 方法 `/* 使用说明: 使用必须先调用 InitPool 方法将对象池初始化 然后 Deque ...

  5. 【C++】《Effective C++》第七章

    第七章 模板与泛型编程 条款41:了解隐式接口和编译期多态 面向对象设计中的类(class)考虑的是显式接口(explict interface)和运行时多态,而模板编程中的模板(template)考 ...

  6. /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh: line 19: mysql: command not found

    [root@test ~]# tail -f /tmp/zabbix_agentd.log /var/lib/zabbix/percona/scripts/get_mysql_stats_wrappe ...

  7. 【Java】Java关键字、含义

    Java关键字 来自 Java 核心技术卷I 基础知识(原书第10 版)/( 美)凯S 霍斯特曼(Cay S . Horstmann )著: 周立新等译一北京:机械工业出版社, 2016 . 8 Ja ...

  8. CTFshow萌新赛-web签到

    打开靶机 查看页面信息 可以看到有一个system函数 在Linux中可以使用":"隔离不同的语句 payload如下 https://5105c8b6-83aa-4993-91b ...

  9. os.walk() 遍历目录下的文件夹和文件

    os.walk(top, topdown=True, onerror=None, followlinks=False) top:顶级目录 os.walk()返回一个三元tupple(dirpath, ...

  10. Netty学习:EventLoop事件机制

    目录 EventLoop是什么 EventLoop适用的场景 Netty中的EventLoop Netty中的大量inEventLoop判断 Netty是如何建立连接并监听端口的-NIOSocketC ...