V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
li19910102
V2EX  ›  问与答

请问处于二级路由器下的电脑如何通过一级路由器唤醒?请教网络工程大神!

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

    首先说一下家里的设备,一级路由器华硕 AC86U,二级路由器 TP-LINK-H610R,电脑一台。

    其次描述一下家里的网络结构图,光猫桥接,主路由器 86U 拨号上网,这两个设备在客厅内; H610R 和电脑在另外一个卧室内,两个房间之间用千兆网线相连;具体接法是:H610R 的 WAN 口接 AC86U 其中一个 LAN 口,电脑接 H610R 的 LAN 口; H610R 只有一个 WAN 口和一个 LAN 口,并且设置自动获取 IP,就是说目前网络 IP 是 AC86U 的网段是 192.168.50.; H610R 的网段是 192.168.1.,两个 IP 不在同一个网段内,无法用 AC86U 直接通过 LAN 唤醒电脑。

    最后在不连接 H610R 时,直接电脑连 AC86U,是可以唤醒的。我的问题是如何实现跨网段让 AC86U 可以唤醒接在 H610R 下的电脑呢?

    补充:之所以接 H610R 是想让这个房间的 WiFi 速度更快一些,因为卧室和客厅隔很远。

    31 条回复    2021-08-22 15:23:12 +08:00
    villivateur
        1
    villivateur   62 天前 via Android
    为啥要设两级路由呢?把二级路由直接改成中继模式不就好了吗
    jacyl4
        2
    jacyl4   62 天前
    添加静态路由,打通两个网段
    omi4399
        3
    omi4399   62 天前
    H610R 改 AP 模式啊,或者 AC86U 开 DMZ 主机指向 H610R
    9420JackT
        4
    9420JackT   62 天前 via iPhone
    弄个千兆交换机在卧室,电脑通过交换机连客厅 ac86u,
    li19910102
        5
    li19910102   62 天前
    @villivateur 你好,感谢回复,您说的这个是把 H610R 桥接在一级路由器下吧?我试过这个方案,这样的话,H610R 只有一个 LAN 口接 AC86U,没有另外的 LAN 口接电脑了。
    li19910102
        6
    li19910102   62 天前
    @9420JackT 考虑过这个方案,真的不想再额外添加设备了,设备越多,看着越乱
    li19910102
        7
    li19910102   62 天前
    @villivateur 另外还有一个问题是,无线中继过来的话,网络有很大的损耗,AC86U 和 H610R 之间隔的很远,还有好几堵墙。
    kokutou
        8
    kokutou   62 天前 via Android
    H610R 卖了,买个红米 ax6,lan 口就够了。
    9420JackT
        9
    9420JackT   62 天前 via iPhone
    @li19910102 智能插座,再设置电脑来电自动开机,也不是很占地方,向日葵的开机棒的话,你 lan 口不足
    li19910102
        10
    li19910102   62 天前
    @kokutou 这相当于多买一个路由器么,我之所以买 H610R,是为了还另外一个房间里使用 H610E 扩展器的。想尽可能的减小隔墙的影响。
    li19910102
        11
    li19910102   62 天前
    @jacyl4 请教大神,能说说具体该怎么设置么?
    li19910102
        13
    li19910102   62 天前
    @initd 这么说,我只需要设置静态路由就可以实现了?
    ik
        14
    ik   62 天前 via iPhone
    wol ? 没记错的话这个是基于 mac 地址的唤醒,不是网络打通就可以的吧, 得在一个二层网络才行, 二级路由做 ap 可解
    jsq2627
        15
    jsq2627   62 天前
    wake on lan 必须在同一个 2 层子网才能工作。设置静态路由是不行的
    所以唯一解法就是桥接。H610R 看起来不支持把 lan 和 wan 口桥接,那么基本无解。买新设备吧
    jsq2627
        16
    jsq2627   62 天前
    买个向日葵的开机棒或者开机插座,也是相当好用的
    SIGEV13
        17
    SIGEV13   62 天前
    网络唤醒需要同处一个交换机 /组下,如果二级路由后面有 jump server 或者路由器本身可以发送唤醒包,可以通过它发数据包唤醒 。
    initd
        18
    initd   62 天前
    忘了基于 mac 地址,

    可以买一个非网管交换机(这样比较好,不给上级路由增加负载压力)
    或者常规无线路由器关闭 DHCP 服务,从 WAN 口接到 LAN 口,当成交换机用(但这样是把下级带机量压力转嫁到上级)

    无线路由器确实是当路由模式,最好用。
    sujin190
        19
    sujin190   62 天前
    既然如此干脆把 H610R 扔了就是了,京东上 6 口千兆交换机也才几十块钱,买个新的就是了啊,着中国还小巧,颜值看着也不低
    ysc3839
        20
    ysc3839   62 天前 via Android
    正常来说桥接不需要也不应该接 LAN 口,正确的做法就是接 WAN 口,然后设置成桥接。接 LAN 口桥接是针对那些软件不支持桥接的路由器的变通方案。一些会检测 WAN 口是否有网的路由器,你接 LAN 口的话可能还是无法联网。

    至于网络唤醒,建议试试在 H610R 上设置静态 ARP 绑定和一个 UDP 的端口映射,端口号任意都行,然后往映射的端口发送数据。
    我认为 @jsq2627 的说法是错的,首先二层就没有子网的概念,其次基于 Magic Packet 的 Wake on LAN 的工作方式很简单,网卡收到以太网帧之后会从头开始往后比较是否包含特定的子串,所以不管数据被如何封装,增加了多少头部,只要包含明文的特定的数据就能唤醒。
    需要设置 ARP 绑定是因为等待唤醒状态下的网卡是个哑巴,它只会被动接受以太网帧,不会发送任何数据,自然也无法回应 ARP 请求,所以需要设置 ARP 绑定。
    li19910102
        21
    li19910102   62 天前
    @jacyl4 试过做静态路由,实测还是不可以
    li19910102
        22
    li19910102   62 天前 via iPhone
    你好,感谢回复,我目前就是路由器接 H610R 的 WAN 口,电脑接 H610R 的 LAN 口,也在 H610R 上做了 arp 绑定,设置了端口转发,经测试依然还是不行啊
    jsq2627
        23
    jsq2627   62 天前
    @ysc3839 啊,“二层子网”的说法的确不对,subnet 属于 ip 层的概念。


    “构造一个能够被路由的 UDP magic packet”有什么现成的工具吗?
    littlecap
        24
    littlecap   62 天前 via iPhone
    印象中这个需要 udp 广播,我也没搞明白。家里是光猫做一级旅游,之前电脑接在二级路由京东路由器下怎么都无法唤醒,后来二级路由换了个刷老毛子的新三,歪打正着广域网唤醒居然就成功了,感觉老毛子本身支持 udp 广播,不知道理解对不对。另外,有个法国佬写的 iphone 应用 wake me up 可以 siri 调用开机,同时电脑开 ssh 就可以用 iphone 的快捷指令 siri 关电脑配合使用挺方便的。
    fru1t
        25
    fru1t   62 天前
    LAN 口对 LAN 口就是了。。你要觉得获取 IP 有困难,两边的 DHCP 设置,一个是 50.3 - 50.100 ,一个设置 50.101 - 50.200
    这不就完了。
    li19910102
        26
    li19910102   62 天前
    @fru1t 您的意思是 H610R 的 LAN 口接 AC86U 的 LAN 口吗?这是桥接吧?那电脑就没有 LAN 口可以接了
    li19910102
        27
    li19910102   62 天前
    @littlecap 是不是说 H610R 不支持 udp 转发呢?
    weeiy
        28
    weeiy   62 天前
    为什么不直接弄个开机卡?
    二三十块还省事。
    Lemeng
        29
    Lemeng   62 天前
    开电脑吗?向日葵远程开机,不限网络,主板支持就能开,还不用折腾
    Elissa
        30
    Elissa   61 天前
    二级路由关掉 dhcp,自身 ip 设成不冲突的,都插 LAN 口,当成交换机来用就在同一个子网里了
    ysc3839
        31
    ysc3839   61 天前 via Android   ❤️ 1
    @li19910102 #22 那我只能建议你用集线器或者其他流量镜像的设备抓包看看了。
    @jsq2627 #23 现成的工具就是大部分 WOL 工具,为了省事一般没谁会直接发以太网帧,而是用 UDP,因为大部分系统发送以太网帧都依赖 libpcap 之类的库。
    @littlecap #24 不需要 UDP 广播,UDP 广播是省事的做法,因为等待唤醒的电脑不能回应 ARP 请求,发送 UDP 广播时,发送端的操作系统会使用以太网的广播功能发送出去,然后交换机会把这个帧发送到所有网络接口上,等待唤醒的电脑自然能收到。
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2164 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 05:13 · PVG 13:13 · LAX 22:13 · JFK 01:13
    ♥ Do have faith in what you're doing.