V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
isAK47
V2EX  ›  宽带症候群

光猫桥接+ROS 拨号,怎么让局域网设备都能直接看 IPTV 直播?

  •  
  •   isAK47 · 165 天前 · 1374 次点击
    这是一个创建于 165 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现状:

    光猫已经让师傅改为桥接,光猫内没看到 IPTV 端口,似乎“网络+IPTV”单线复用了,局域网任何网线都可以用机顶盒看电视。机顶盒内能看到如下明文信息:业务账号、业务密码、主认证地址、网卡地址、STB ID

    目的:

    不使用机顶盒,使局域网内任何设备都可以看电视。

    附件:

    15 条回复    2024-07-31 23:11:37 +08:00
    povsister
        1
    povsister  
       165 天前
    各地方案都不太一样,不过基本都是先找 IPTV 的 VLAN ,然后 VLAN 绑一个端口,然后再看是怎么通到内网来,有些地方 IPTV 还有 b 平面认证。
    isAK47
        2
    isAK47  
    OP
       165 天前
    @povsister 我这个光猫没有看到 IPTV 的 VLAN ,有点奇怪了
    lilu0826
        3
    lilu0826  
       165 天前 via Android
    用 udpxy 组播转单播就可以
    lilu0826
        4
    lilu0826  
       165 天前 via Android
    可以抓下组播地址,或者网上找下
    thtznet
        5
    thtznet  
       165 天前
    联通不是走的组播,走的是 IP 认证,所有内网的设备接入只要出口 IP 过联通的认证都可以播放 IPTV ,机顶盒随便你移动到哪里,只要是这个光猫出去的就可以。
    isAK47
        6
    isAK47  
    OP
       164 天前 via Android
    @thtznet 对,确实是这样。那有没有办法脱离机顶盒播放呢,谢谢!
    TMily
        7
    TMily  
       164 天前
    各地联通可能不一样
    天津和北京联通直接在 WAN 口再配置个 DHCP Client 然后直接组播代理到内网就可以 不需要 VLAN 配置也没有其他的鉴权
    弄完之后直接在内网就可以用组播地址看,愿意转单播也随便
    我天津联通是直接弄了两条网线 第二条专职负载 IPTV 流量但更早期使用 OpenWRT 时 是一根网线就可以的 也不需要 VLAN
    TMily
        8
    TMily  
       164 天前
    直连光猫的 IPTV 盒子的鉴权似乎主要是为了点播和时移,我只看直播就无所谓了就没搞
    isAK47
        9
    isAK47  
    OP
       164 天前
    @TMily 我抓包测试了,全部是加密的,杭州联通,似乎难搞
    KATTEN
        10
    KATTEN  
       96 天前
    @isAK47 请问下有后续吗?我也是杭州联通,光猫没有单独的 IPTV 口,机顶盒只要插上然后输账号密码就能看了,有办法不要机顶盒吗?
    isAK47
        11
    isAK47  
    OP
       96 天前
    @KATTEN 没得到答案,依旧在用机顶盒
    KATTEN
        12
    KATTEN  
       96 天前 via iPhone
    @isAK47 买根红外延长线藏抽屉里吧😂
    isAK47
        13
    isAK47  
    OP
       96 天前
    @KATTEN 没看懂
    KATTEN
        14
    KATTEN  
       94 天前
    @isAK47 搞定了,可以抓到,在 frameset_builder.jsp 里
    KATTEN
        15
    KATTEN  
       93 天前
    @isAK47 在机顶盒开机之前就开抓包,然后进系统就可以停止抓。包里用 http 搜,有个
    POST /iptvepg/function/frameset_builder.jsp HTTP/1.1\r\n
    追踪 http 流以后直接 show data as GB2312 编码,把 jsSetConfig('Channel','ChannelID="开始的那 99 个台的数据全部拷到记事本里。

    用下面的 python 跑一下正则:

    import re

    # 示例数据
    data = """
    #这里面放上面的那串字符串
    """

    # 定义正则表达式模式,仅捕获 ChannelName 和 ChannelURL
    pattern = re.compile(r'ChannelName="([^"]+)",.*?ChannelURL="([^"]+)"')

    # 提取匹配项
    matches = pattern.findall(data)

    # 准备输出的字符串
    output = "\n".join([f"{name},{url}" for name, url in matches])

    # 打印结果
    print(output)


    最后的结果拿到 telelist 有个 M3U 格式转换里换成.m3u 的文件直接就能看了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2908 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 13:44 · PVG 21:44 · LAX 06:44 · JFK 09:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.