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

有没有方法让局域网内的 client 向指定的 DHCP Server 发起请求

  •  
  •   phlips5437 · 2022-02-26 15:23:18 +08:00 · 3569 次点击
    这是一个创建于 993 天前的主题,其中的信息可能已经有所发展或是发生改变。
    大家好,我的目的想通过这种方式,让 IPTV 机顶盒指定向光猫进行 DHCP 申请,而其他局域网内的终端向另外一台 ROS 进行申请

    目前的情况如下:
    1 、DHCP Server 2 台,1 台是光猫网关(拨号、DHCP 分发),另 1 台 ROS/Open Wrt ( DNS 、DHCP 、DDNS 等其他服务)
    2 、IPTV 因各种限制,需要由光猫进行鉴权获得专有地址进行联网。为何不做光猫桥接原因如下:
    a)光猫是 10G WAN 口,出口带宽 1000M ,家里其他设备还未跟上
    b)技术太菜,在 ROS/OpenWrt 桥接下成功过 IPTV 联网,但效果不理想,每次开机联网时间太长,约 5 分钟左右

    因此,我希望能实现 IPTV 机顶盒向光猫进行 DHCP 申请;其余客户端向另外一台 DHCP 申请这种方式来实现。
    22 条回复    2022-03-03 13:42:15 +08:00
    rrfeng
        1
    rrfeng  
       2022-02-26 15:40:51 +08:00 via Android
    DHCP 是广播,你可以控制 DHCP server 不给某个设备回应。

    但是没懂你这个问题跟 DHCP 有啥关系…
    pesowen
        2
    pesowen  
       2022-02-26 19:21:00 +08:00 via iPhone
    可以绑定 mac 地址的
    disk
        3
    disk  
       2022-02-26 20:14:59 +08:00
    你让路由 NAT ,IPTV 接光猫上不行吗?
    Tink
        4
    Tink  
       2022-02-26 20:26:02 +08:00 via Android
    机顶盒接到光猫上,不就从光猫拿 ip 了?
    belldasd
        5
    belldasd  
       2022-02-26 20:50:41 +08:00
    光猫桥接,ROS 做主路由,接 iptv 机顶盒。随便弄个 openwrt 路由接 ROS ,专门给 iptv 机顶盒做 B 面的 dhcp options 125 认证用。上海电信 iptv 稳定使用了几个月。
    Kowloon
        6
    Kowloon  
       2022-02-27 06:00:10 +08:00 via iPhone
    同一子网内俩 DHCP Server 不太科学,建议 STB 直连光猫。
    geekvcn
        7
    geekvcn  
       2022-02-27 09:47:03 +08:00
    就一台设备直接固定 IP 网关不就得了
    pH
        8
    pH  
       2022-02-27 11:11:35 +08:00
    @belldasd “随便弄个 openwrt 路由接 ROS ,专门给 iptv 机顶盒做 B 面的 dhcp options 125 认证用”。老铁方便解释下这个细节么? OP 是二级 NAT 接在一级 NAT 上面么? 这种情况下 IPTV 是走公网还是专网看电视?
    jiangyang123
        9
    jiangyang123  
       2022-02-27 11:27:31 +08:00
    如果只有一根网线连接的话,研究下 单线复用( vlan)
    jousca
        10
    jousca  
       2022-02-27 12:40:03 +08:00
    这个只能通过 VLAN 交换机实现,IPTV 走一个 VLAN ,互联网走另外的 VLAN ,这样广播包范围就可以可以实现你说的要求控制。
    belldasd
        11
    belldasd  
       2022-02-27 13:19:55 +08:00
    @pH iptv 走专网。op 只作为同一网络里的第二个 dhcp server 使用。
    belldasd
        12
    belldasd  
       2022-02-27 13:22:30 +08:00
    @Kowloon “同一子网内俩 DHCP Server 不太科学” 很正常的应用
    belldasd
        13
    belldasd  
       2022-02-27 13:39:59 +08:00   ❤️ 1
    @pH 光猫桥接,ROS 路由 wan 和 lan 之间创建 vlan85 桥接。我用闲置的 WR703N 刷 op ,接 ROS 路由器,op 设置固定 ip ,开启 DHCP SERVER ,网关设成 ros 的,修改 dnsmasq.conf 文件把
    dhcp-option-force=125,00:00:00:00:14:02:06:48:47:57:2d:43:54:0a:02:20:00:0b:02:00:55:0d:02:00:2e
    dhcp-option=15
    dhcp-option=28
    dhcp-option=60

    加进去,重启 dnsmasq 服务。
    接下来你可以关闭 ros DHCP SERVER ,op 作为全网 DHCP 服务器,机顶盒就能用了。

    另外也可以不关闭 ros DHCP SERVER ,op 设置静态 DHCP 服务器专门给 iptv 机顶盒用。
    911061873
        14
    911061873  
       2022-02-28 14:46:46 +08:00
    我有个思路 但是本人没用 IPTV 没有验证过,理论可行
    光猫的 IPTV 接口和网络接口都接 OP 上,默认路由是外网口。
    抓一下 IPTV 的 IP ,也就五六个网段,在路由里添加静态路由,下一跳指向光猫的接口。
    linuxyz
        15
    linuxyz  
       2022-03-01 12:30:41 +08:00
    听起来你只有一个 LAN, ROS 是做旁路由, 但是光猫和 ROS 分配的 IP 地址范围不一样。

    如果直连光猫的设备少可以,给这些设备指定 IP+GW, 比如:IPTV 可以指定 IP 地址,用光猫做 GW
    禁用光猫的 DHCP , 让 ROS 做 DHCP Server 。
    如果需要连 ROS 的设备少,可以反向操作。


    其实更方便的方法是,光猫和 ROS 都分配同样的网段,但是地址范围不同。
    比如
    光猫 LAN: 192.168.1.0/24, range: 100-200
    ROS LAN: 192.168.1.0/24, range: 200-250
    这样家里的设备都可以互相访问,同时可以通过手动指定 GW 来实现不同的外网访问功能。
    phlips5437
        16
    phlips5437  
    OP
       2022-03-02 21:14:38 +08:00
    @rrfeng 电信光猫分发 dhcp 的时候会带一条 dhcp option 125 ,value 是带着厂商信息,iptv 获取后才能顺利鉴权完成认证
    phlips5437
        17
    phlips5437  
    OP
       2022-03-02 21:14:58 +08:00
    @pesowen 请问绑定 mac 地址是在光猫侧这边做吗?
    phlips5437
        18
    phlips5437  
    OP
       2022-03-02 21:15:22 +08:00
    @disk 这样就多了一层 NAT 。。。。。不舒服哎
    phlips5437
        19
    phlips5437  
    OP
       2022-03-02 21:16:04 +08:00
    @belldasd 我之前也实现过,但不知为何每次开 iptv 认证的时间都很久,不知道你那边的情况如何?
    phlips5437
        20
    phlips5437  
    OP
       2022-03-02 21:16:47 +08:00
    @geekvcn iptv 设备没法手动设置局域网信息,只得靠 dhcp 来获取
    pesowen
        21
    pesowen  
       2022-03-02 23:41:29 +08:00
    @phlips5437 假如我没理解错的话,你的需求可以简化为:1 ) ROS 不分配 IP 地址给机顶盒; 2 )光猫只分配 IP 地址给机顶盒。

    1 )可以在 ROS 端的 DHCP 配置中设置

    host block_host_1 {
    hardware ethernet ho:st:ma:ca:dd:rs;
    deny booting;
    }

    https://forums.freebsd.org/threads/how-to-block-a-mac-using-dhcpd-conf.71987/

    2 )可以在光猫的 DHCP 配置中设置 whitelist ,即仅分配 IP 地址给指定的 mac

    class "clients" {
    # mac is 48 bit, or 6 Byte, so that is 6 here.
    match if substring (hardware,1,6) = 00:0c:29:d9:07:a2;
    }
    pool {
    range 192.168.1.100 192.168.1.250;
    allow members of "clients";
    }

    https://gist.github.com/pyKun/5411176

    我没有尝试过,仅仅给出思路,希望有所帮助~
    phlips5437
        22
    phlips5437  
    OP
       2022-03-03 13:42:15 +08:00
    @pesowen 你好,是的,的确如你所说,我会按照你的思路研究一下,非常感谢~~~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2837 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:52 · PVG 21:52 · LAX 05:52 · JFK 08:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.