我有一个域名,在互联网的 dns 上指向一个公网 IP,请问有什么简单的方法能让它在家指向局域网的某个 IP - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Jiajin
V2EX    问与答

我有一个域名,在互联网的 dns 上指向一个公网 IP,请问有什么简单的方法能让它在家指向局域网的某个 IP

  •  
  •   Jiajin 2023-06-28 19:14:56 +08:00 1704 次点击
    这是一个创建于 919 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这样在家能直接享受局域网的网速,多好

    第 1 条附言    2023-07-01 13:56:06 +08:00

    最终解决方案:

    1. 我先是尝试通过apple script定时检测网络是否是当前家里的Wi-Fi ssid,根据这个动态修改/etc/hosts该域名的解释。这样就能最简单实现标题里的问题了。
    2. 但是该场景不适合我,因为我的nas访问域名是群晖配置的反向代理,无论如何都会被指向同一个IP,除非访问的域名不一样,所以并不行。我后来是关闭群晖的反向代理,通过本机安装nginx,然后根据上面的逻辑,动态修改nginx配置文件。
    on run repeat delay 30 -- 延迟30秒 set ssidName to (do shell script "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I | awk '/ SSID:/ {print substr($0, index($0, $2))}'") if ssidName is equal to "YOUR_WIFI_SSID_NAME" then -- 如果命中家庭Wi-Fi do shell script "/bin/bash -c 'sed -i -E \"s/IP_A/IP_B/g\" /opt/homebrew/etc/nginx/servers/YOUR_NGINX.conf'" do shell script "/bin/bash -c '/opt/homebrew/opt/nginx/bin/nginx -s reload'" end if if ssidName is not equal to "YOUR_WIFI_SSID_NAME" then -- 没有命中家庭Wi-Fi do shell script "/bin/bash -c 'sed -i -E \"s/IP_B/IP_A/g\" /opt/homebrew/etc/nginx/servers/YOUR_NGINX.conf'" do shell script "/bin/bash -c '/opt/homebrew/opt/nginx/bin/nginx -s reload'" end if end repeat end run 
    9 条回复    2023-07-03 17:06:24 +08:00
    ClarkAbe
        1
    ClarkAbe  
       2023-06-28 19:16:18 +08:00 via Android
    路由器或者在本机 HOSTS, 设备太多嫌麻烦可以起个 DNS 服务然后重写
    msg7086
        2
    msg7086  
       2023-06-28 19:25:26 +08:00
    路由器 DNS 服务做 override domain 或者 host 。
    wingerwwang
        3
    wingerwwang  
       2023-06-28 19:40:44 +08:00 via iPhone
    如果你的域名指向的就是你家网络的公网 IP ,那应该不用设置就能自动走内网吧?
    pcxys
        4
    pcxys  
       2023-06-28 19:52:18 +08:00
    你如果在家,想使用域名访问局域网主机的 IP ,你可以试试直接将解析地址设置成局域网的 IP 。
    但是这样外网就无法进行有效访问了,或着你修改你本机的 hosts 文件,也可以实现,域名解析的时候,还正常设置就行。
    第一行的方法,是我无意中试出来的,有效。
    第二行修改 hosts 是否可以达到效果,我不确定,因为有的浏览器自己有自己的解析服务,是不是会先使用本机的 hosts 我不确定。
    SenLief
        5
    SenLief  
       2023-06-28 19:56:37 +08:00
    自建 dns 服务器
    直接修改路由器的 hosts
    Jirajine
        6
    Jirajine  
       2023-06-28 20:05:20 +08:00
    知道 DNS 污染吧?你可以在自家局域网里做同样的事情。
    gdfsjunjun
        7
    gdfsjunjun  
       2023-06-28 20:43:47 +08:00
    小米路由可以直接修改 Hosts ,这样所有设备都自动生效
    Jiajin
        8
    Jiajin  
    OP
       2023-07-01 14:00:45 +08:00
    @pcxys
    @wingerwwang
    @msg7086
    @SenLief
    @gdfsjunjun 我的需求描述有误,应该是 nas 服务,在家里和在外面用同一个域名访问。
    pcxys
        9
    pcxys  
       2023-07-03 17:06:24 +08:00
    @Jiajin 那就给路由器或着局域网电脑设置一个 DNS 解析,然后外网解析就用 DDNS 解析到域名就行了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1227 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 17:08 PVG 01:08 LAX 09:08 JFK 12:08
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86