第一次做面试官

当了两年的求职者,终于身份转变,我也成为了面试官。

成为面试官之后第一个直观感受就是当年的自己太嫩了,现在求职者比当时的我优秀太多了,他们面试的时候侃侃而谈,游刃有余,想想当时的自己真的弱呀!我只是考查技术问题,通常会问一些看起来比较简单,但是非常考验基本功的小案例,这类小案例却极少有人能回答上来,胡说八道反而很多!

A服务器的IP为192.168.80.129/24,网关为192.168.80.1/24

B服务器的IP为192.168.80.3/27,网关为192.168.80.1/24

A和B服务器放在同一个vlan下,用B去ping A主机,能通吗?

我们来分析B与A通信过程。

  1. B拿着自己的掩码对自己的IP做“与运算”,得到网络网络位为192.168.80.0;然后用自己的掩码对A主机的IP地址做“与运算”,得出的网络位为192.168.80.128;B判定A与自己不在同一个网段;
  2. B广播询问网关的mac地址,得到网关回复的mac地址后开始封装报文,目标IP是A的地址,目标MAC是网关的MAC。
  3. 网关收到之后,先看缓存,缓存中没有就广播去寻找A的MAC,然后将数据包交给A。
  4. A收到数据包之后解封装,发现目标MAC和目标IP的确是自己,然后进行回复,发现B与A是一个网段的:192.168.80.0,于是直接arp广播询问A的MAC地址。
  5. B收到A广播ARP广播报文之后,就直接回复了,注意,B第一次给A通信时要通过网关,而现在B有了A的MAC地址,因为A的arp广播当中携带有A的MAC,所以B直接就回复了。
  6. A收到B的MAC地址之后,直接封装进报文。

这个问题其实很简单,但是很多考了CCIE或HCIE的同学却很少能回答上来,我觉得这至少证明了一件事,学习的人很多,但思考的人很少,抓不住问题的本质。

上面我们是说的是B主机ping A主机是可以通的,那么反过来呢?当然也是可以通的,我们来看过程。

  1. A判定B和自己是一个网段的,所以直接就arp广播了
  2. B收到A的广播,并不会进行与运算,而是直接通过arp广播当中携带的A的MAC地址,直接回复了。

好,我们再升级一下问题,假如说两台主机都不设置网关,只有IP地址,还能相互通信吗?

A主机ping B主机没问题,因为不需要网关的参与。

而B主机ping A主机的话,就不行了,因为B判断不在一个网段,要交给网关,然而没有网关。

原文地址:https://www.cnblogs.com/yizhangheka/p/12418961.html