打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
为何路由器需要DHCP服务?
能否从专业的角度解释DHCP的必要性?
大多数交换机是没有DHCP的,但同样也能通过mac地址在多台设备之间传输数据。那么为什么路由器需要DHCP?
 
 


题主的真正想表达的是,为何交换机通过MAC地址可以交换(Switching)数据,而路由器却需要IP地址才能路由(Routing)数据,为何路由器不能使用MAC地址交换数据呢?
 
交换机端口有物理层吗?
有,表示为PHY。
 
交换机端口有链路层吗?
有,表示为MAC LLC。
 
交换机端口有MAC地址吗?
有,只要有MAC层,就会有MAC地址。
 
交换机交换用户数据的时候,使用交换机自身的MAC地址,还是用户数据携带的MAC地址?
 
当然是用户的MAC地址。
 
谁又是用户呢?
当然是插在交换机端口上的主机了。交换机自身的MAC地址,在交换用户数据报文的时候,压根没有使用,形同虚设。
 
既然不使用,为什么要交换机端口要有自己的MC地址呢?

如果是非网管的交换机,交换机端口拥有MAC地址是浪费。但是如果是网管交换机,即交换机本身也是一台电脑,也拥有自己的TCP/IP协议栈,那么就有必要有自己的MAC地址了。否则交换机如何判断哪些报文是发给自己的(需要向上提交给TCP/IP处理),还是过路的流量,即目的MAC不是自己的,但是交换机需要代用户转发。
 
记住喽,交换机不是使用自己端口的MAC地址来交换数据,而是使用数据自身携带的用户MAC地址来完成交换。由于交换机有学习、短暂记忆用户MAC地址与端口号的对应关系,对于交换机来说,这是其主要功能。
 
交换机端口收到的用户报文目的MAC≠自己的MAC,为何交换机要接收?

交换机你是干嘛的,你不就是为人民服务的,摆什么臭架子!
 
交换机委屈地说,老师您误会我了,俺其实有两种工作模式,分别为:
 
Host Mode
主机模式,如果交换机的端口配置成该模式,那么这个端口就是一个路由端口,即三层端口。俺就不是二层交换机了,而是三层交换机了,你说俺是路由器也可以。

三层接口只会接收目的MAC=自己的MAC,否则全部丢弃。三层端口是需要一个IP地址才可以正常工作的。当然可以手工配置,也可以使用DHCP Client功能,从DHCP Server的地址池里动态申请一个IP使用。终于写到题主的关键词了。
 
Hybrid Mode
混合模式,交换机不检查报文的目的MAC地址,只要是合法的、没有CRC校验错误的报文统统接收,这样就可以为人民服务了。根据MAC地址表查询一下,这个报文是Alice的还是Bob的。查好之后直接从对应的端口扔出去交换就完成了。所以交换机压根不需要自身的MAC地址、也无需通过DHCP获取一个IP地址就可以轻松地完成二层交换。
 
本来以为这篇文章要写DHCP Client、Relay、Server三者之前的爱恨情仇,其实并不是。无论交换机、路由器、防火墙、AP都可以部分拥有、或者同时拥有三个角色的功能。
 
  • 如果DHCP Client与DHCP Server处于一个广播域(同一个网段/同一个VLAN), 那么就不需要DHCP Relay。

  • 否则,就需要DHCP Relay这个角色,将两个广播域的广播报文双向Relay,实现DHCP Client与DHCP Server之间的通信。


DHCP Client与DHCP Server为什么要通信?
就是为DHCP Client所在的主机TCP/IP动态分配一个IP地址,仅此而已!
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
连交换机的攻击、防御都不懂,还做什么网络工程师
网络运维试题(答案及注解)
20090922 network
路由器和交换机的区别
ip试题与答案
计算机网络面试常考知识点整理
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服