V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
RedisMasterNode
V2EX  ›  程序员

思科 WiFi 1/40 亿概率的 bug 让我碰到了, 100% 触发无法连网,你猜到底是怎么写出来的代码?

  •  3
     
  •   RedisMasterNode · 2023-04-03 10:49:12 +08:00 · 4203 次点击
    这是一个创建于 610 天前的主题,其中的信息可能已经有所发展或是发生改变。

    需要升级 Controller 解决。

    Bug 单: https://quickview.cloudapps.cisco.com/quickview/bug/CSCvz16800

    TL;DR: MAC 地址中间两段为 88:8e 的 100% 触发无法连网,例如:xx:xx:88:8e:xx:xx,没算错的话概率应该是 (16 ^ 4) / (16 ^ 12)

    这代码要怎么写才能搞出来这种玩意....真倒霉

    14 条回复    2023-04-03 15:02:46 +08:00
    ipoh
        1
    ipoh  
       2023-04-03 10:58:50 +08:00   ❤️ 1
    我感觉你算错了
    1/16^4
    CRVV
        2
    CRVV  
       2023-04-03 11:07:31 +08:00   ❤️ 2
    显然概率算错了,应该是 1/(16^4)
    另外,mac 地址的前 24 位代表厂商,比如 F8DB88 是 Dell 的
    所以对用户来说,这个概率实际上只有 0 和 1/256 两种情况,对特定品牌的用户来说应该很常见的

    思科好像经常干这种事情,在代码里写死 magic number 拿来测试
    比如 https://www.theregister.com/2018/05/18/network_roundup_17_may_2018/
    RedisMasterNode
        3
    RedisMasterNode  
    OP
       2023-04-03 11:13:45 +08:00
    @CRVV 啊哈 ok ,那就是错了,但是也还是个小概率的事情,碰上实在是倒霉难绷...QAQ
    DinoStray
        4
    DinoStray  
       2023-04-03 11:26:49 +08:00
    我感觉应该是 2^96/(2^128) ,
    2^128 是 ipv6 总地址数,
    2^96 是中间两段为 88:8e 的地址总数
    高中数学一直不及格的学渣. 人到中年开始对数学感兴趣. 如果不对期望指正
    RedisMasterNode
        5
    RedisMasterNode  
    OP
       2023-04-03 11:32:22 +08:00
    @DinoStray hhh 没想到大家对这个概率这么感兴趣,我不太熟悉这些知识,算错了让站里的大佬指点,主要是觉得这些写死的 magic number 导致的问题也太蠢了...没理由写死的呀
    DinoStray
        6
    DinoStray  
       2023-04-03 11:32:40 +08:00
    哦, 看错了, 原来是 mac 地址, 看成 ipv6 了
    DinoStray
        7
    DinoStray  
       2023-04-03 11:43:51 +08:00
    mac 地址的话, 我觉得概率应该是 2^32/2^48=1/2^16
    90Pd802Vdyhm5I3H
        8
    90Pd802Vdyhm5I3H  
       2023-04-03 12:52:30 +08:00
    摸头
    flush9f
        9
    flush9f  
       2023-04-03 14:23:24 +08:00
    好奇怎么判断是 MAC 地址相关的 bug ,这种假如我遇到就只会觉得是 client 的问题
    cat9life
        10
    cat9life  
       2023-04-03 14:34:53 +08:00
    发达了 为啥不买彩票
    Huelse
        11
    Huelse  
       2023-04-03 14:41:29 +08:00
    这种时候我们都会说“垃圾 xx”
    bluefountain
        12
    bluefountain  
       2023-04-03 14:51:51 +08:00
    我在 iOS 的 VPN 中发现了一个类似的,密码最后一位不能是空格的 Bug ,提交了半年苹果还没处理。哈哈。
    RedisMasterNode
        13
    RedisMasterNode  
    OP
       2023-04-03 15:01:32 +08:00
    @flush9f 当然是排查了很久没排查出来,最后拿了日志去找思科提单得到回复的呀,再找我验证了一下 mac 地址是不是符合条件,随机一个新的 mac 地址是否能正常用
    RedisMasterNode
        14
    RedisMasterNode  
    OP
       2023-04-03 15:02:46 +08:00
    @Caribbeancom 偷偷摸摸降价哈哈
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1426 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 17:31 · PVG 01:31 · LAX 09:31 · JFK 12:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.