@
bclerdx @
zhengrt @
supppig 最近又出现频繁重连的问题了,貌似跟 MTU 关系不大。
仔细查阅了相关资料,标准以太网除去二层帧头及帧尾校验后,数据部分长度最大为 1500 字节,也就是标准以太网数据帧最大长度为 1518 字节,封装 dot1q 后为 1522 ,qinq 的话是 1526 。通常二层交换机如果不开巨帧的话一定是支持 1500 数据帧长的,这也就是以太网链路 1500 MTU 的由来。
在标准以太网数据部分 MTU1500 字节的情况下,pppoe 要占去 8 个字节,所以这就是通常情况下 PPPOE 接口 MTU 最大值为 1492 的原因;在 PPPOE 会话起始阶段会有 lcp 通过双方 MRU 来协商一个 MTU 出来,这个值在 windows 上通常是 1480 以适应不同的网络环境,在 RouterOS 里默认就是 1492 。
按理说 MTU 配置不合适并不会影响链路稳定性,只是会在特定的数据包长度下频繁分片,进而影响 pppoe 链路传输效率。
现在来看应该是陕西广电那边的限制,只要 pppoe 线路没有流量在跑,bras 在响应一段时间 lcp request 后就不会再回应了,这个时间间隔抓包看了下是大约 90 秒,且与 pppoe client 端设置的 lcp time interval 不相关,应该就是 bras 上的一个计时器;但是只要线路不空闲,ppp lcp echo request/reply 就都表现正常。
我这个问题再现起来很容易,只要 pppoe 线路没有任何流量,1 分 30 秒-2 分钟必会断流重拨。
前一段时间看起来正常是因为我把这条线路开了个 freewifi ,一直有终端在用;至于为什么光猫和 windows 拨号之后没有问题,我只能解释为光猫和 windows 一直都会有互联网流量跑在 pppoe 上;而我用 RouterOS 拨号的时候正常情况下互联网流量全部是走联通接口出去的,广电线路没有任何流量,所以才会出现这个问题。