V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
allenpu666
V2EX  ›  NAS

如何配置路由器以实现局域网内使用域名访问能自动重定向到某个 ip 和端口

  •  
  •   allenpu666 · 3 小时 31 分钟前 · 779 次点击

    家庭使用 nas 做服务器,基于 lucky 进行反代和 http 转 https ,已经实现了外网访问

    其中 sample.com 已经通过 lucky 的 DDNS 实现了公网 IP 地址绑定并自动更新

    反代如下:

    a.sample.top:12345 -> 192.168.3.60:16801
    b.sample.top:12345 -> 192.168.3.60:16802
    c.sample.top:12345 -> 192.168.3.60:16803
    d.sample.top:12345 -> 192.168.3.128:80
    e.sample.top:12345 -> 192.168.3.88:3000
    …………
    

    现在在局域网内某电脑/手机上访问 c.sample.top:12345,是可以访问的。

    不过速度会受到公网上传的限制,

    例如家里宽带是 1000/50Mbps,那么在局域网内访问 c.sample.top:12345 时,速度就是 50Mbps,而达不到内网的千兆/2.5G 速度


    请问,如何配置路由器(或者软路由),使得局域网内访问这个域名(子域名)的时候,自动跳转到内网服务,而非经过路由器出去又回来了

    26 条回复    2024-11-21 15:18:58 +08:00
    Vraw5
        1
    Vraw5  
       3 小时 21 分钟前
    建立内网 DNS
    auro233
        2
    auro233  
       3 小时 18 分钟前
    可以尝试把内网服务的端口和外网服务的端口设置为一致再试试,如果局域网内访问 c.sample.top:12345 走的是外网,说明可能在内网你没开这个端口的服务?(简单猜测~)
    opengps
        3
    opengps  
       3 小时 0 分钟前
    域名是用来代替 ip 的,但不能代替端口
    wnpllrzodiac
        4
    wnpllrzodiac  
       2 小时 57 分钟前 via Android
    内网 dns 怎么做?普通路由器可以添加域名解析记录吗?
    cc999
        5
    cc999  
       2 小时 55 分钟前
    如果路由器直接获取的地址是公网 应该没有这个问题
    可以尝试在主路由劫持下域名 到反代的内网机器
    suuuch
        6
    suuuch  
       2 小时 46 分钟前
    只有一台机器的话,手动加 host 指向 IP ,IP 上带 nginx 之类的转发到端口。
    多台就是内网 DNS 转发到 IP ,IP 上带 nginx 端口转发。或者 #5 的路由域名劫持。
    TossPig
        7
    TossPig  
       2 小时 43 分钟前
    嗯?怎么会有这种限制,你公网 IP 就在路由器上的啊,ISP 限制不到你的
    F798
        8
    F798  
       2 小时 43 分钟前 via iPhone
    我用的路由器自动就可以。不会受宽带上传速度限制
    EvineDeng
        9
    EvineDeng  
       2 小时 42 分钟前
    建立内网 DNS 服务器,每个内网 IP 使用不同的子域名,AdguardHome 就可以,可以参考我 https://evine.win/p/%E6%88%91%E7%9A%84%E5%AE%B6%E5%BA%AD%E7%BD%91%E7%BB%9C%E8%AE%BE%E8%AE%A1%E6%80%9D%E8%B7%AF%E5%BC%80%E5%90%AFdebian%E7%9A%84%E6%97%81%E8%B7%AF%E7%94%B1%E4%B9%8B%E8%B7%AF%E4%B8%89/ 的 重写 部分。

    要求内外网使用的端口一致。
    duanxianze
        10
    duanxianze  
       2 小时 37 分钟前
    不应该啊,我在家用域名访问一样直接通过路由器,不走公网,不会被限制,感觉 op 还是哪里没配置对
    TossPig
        11
    TossPig  
       2 小时 35 分钟前
    忍不住回来再嘴一句,前面几个认真说怎么搞 dns 和 host 的是 AI 吗?
    MSIAM
        12
    MSIAM  
       2 小时 33 分钟前
    使用端口转发应该就可以了。
    zhucegeqiu
        13
    zhucegeqiu  
       2 小时 29 分钟前
    路由器上设置 nat loopback
    PiCpo
        14
    PiCpo  
       2 小时 28 分钟前
    你居然没有 NAT 回流问题,我们一般家宽有公网 v4 的一般没法在局域网内访问公网的 ip ,但是 v6 可以
    kkk9
        15
    kkk9  
       2 小时 27 分钟前
    @TossPig #11 是你没懂,内网回流问题
    InDom
        16
    InDom  
       2 小时 26 分钟前
    内网起一个 nginx 服务, 绑定 12345 到 a.sample.top (说白了构造一个和外网服务器一模一样的配置)

    然后路由器 或者 软路由上 强制 *.sample.top 指向你内网的这个服务上,
    bobryjosin
        17
    bobryjosin  
       2 小时 26 分钟前
    防火墙写一条 DNAT ,目的地址公网地址端口映射回 NAS 就行了,内网端口和公网端口一致,虽然消耗路由的 CPU 跑不满 2.5G ,但是不太可能限速 50 ,另一种方法就是上面的 dns 重写。
    TossPig
        18
    TossPig  
       2 小时 21 分钟前
    @kkk9 #15 那是另外一个问题,op 已经在内网能访问`*.sample.top:12345`了这是大前提!
    `不过速度会受到公网上传的限制` 这是 OP 给的错误资讯,前面几个扫贴就说 dns 或者 host ,我合理怀疑 AI 有问题?
    内网流量到路由器,再折回内网,你告诉我带宽怎么被 ISP 的签约带宽限制?
    kkk9
        19
    kkk9  
       2 小时 13 分钟前
    @TossPig #18 内网能访问`*.sample.top:12345`大前提的关键是 op 用 lucky 做了反代,那么不管内网外网的流量都会经过 lucky 转发,op 可能有用词不当,但是大家都能理解,这时候要考虑你自己的理解能力了。
    TossPig
        20
    TossPig  
       2 小时 9 分钟前
    @kkk9 #19 哦,我默认 lucky 装出口路由器上了,也许你是对的
    FaiChou
        21
    FaiChou  
       2 小时 6 分钟前
    我也有这个问题。
    在内网下访问家里 nas ,比如 jellyfin, moviepilot, qb, alist 等服务很快,同时做了 cf tunnel 将一些服务暴露出去,这样在外面也能直接用域名访问。

    但是如果在家里用域名来访问这些服务就会很慢。

    现在的办法就是搞了两套,一套是内网的 ip ,一套是域名访问。
    ohhokay
        22
    ohhokay  
       2 小时 0 分钟前
    你说的是这个功能吗
    ohhokay
        23
    ohhokay  
       1 小时 58 分钟前
    badgv
        24
    badgv  
       43 分钟前 via Android
    1:在内网使用公网域名,不可能收到运营商的带宽限制,因为你数据包都没有走出路由器,除非你域名是 cf proxy 的解析
    2:可以用全内网 dns 劫持+全内网 hosts 实现,dns 软件都能实现,把你指定二级域名绑定成指定内网 ip 就行了
    esee
        25
    esee  
       32 分钟前
    先把端口统一,内网 dhcp 的时候设置分配的 dns 为路由器,路由器上添加内网的域名解析
    pan404
        26
    pan404  
       24 分钟前
    不就是 dns 劫持
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5271 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 07:43 · PVG 15:43 · LAX 23:43 · JFK 02:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.