书上说ppp协议不需要两个设备之间的mac地址,为什么我在家里跳过路由器拨号抓包发现还是包含了源mac和目的mac?是因为这里都是pppoe吗?也就是把ppp帧再次封装在以太网帧中?是这样吗?还有个问题,如果只是二层转发的话不会涉及帧的改变,比如我电脑发出来的是ppp帧,那么中间二层转发始终是ppp帧,然后到了路由器,把这个帧剥离开来看IP地址,然后再重新封装,这个时候帧的类型才有可能发生改变是这样吗?请知道的告诉下,谢谢了
你抓到的包确实是PPPOE。正如xyz347说的:ppp也是一个链路层协议。为了在eth上使用PPP,所以在eth和ppp中间加了一层PPPOE。
你可以看到你的抓包,完整过程应该包含:PPPOE过程,然后再在pppoe过程上再进行PPP过程。
pppoe过程有两个阶段:发现阶段(PADI,PADO,PADR,PADS几个报文),会话阶段(主要是pppoe承载ppp协议)
ppp协议过程一般有三个阶段(LCP协议阶段,协议链路层信息;CHAP/PAP阶段,认证;NCP阶段,协商IP地址)。
ppp协议可以参考RFC 1661。主要讲解了PPP的三个阶段。
比如我电脑发出来的是ppp帧,-------这种情况一般是不会发生的,因为一般网卡都是eth的,发出的报文不可能是pppz帧报文,
除非你的网卡是特制的PPP链路。