局域网内域名方案求解 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
daijinming
V2EX    程序员

局域网内域名方案求解

  •  
  •   daijinming 2019-02-27 10:48:00 +08:00 18981 次点击
    这是一个创建于 2425 天前的主题,其中的信息可能已经有所发展或是发生改变。

    局域网内使用域名进行测试或生产环境下使用,可以采用修改 PC 机的 hosts 文件,那手机端,pad 端怎么办,数量多,又不知道怎么改 hosts 文件。不想使用局域网内网 IP+端口号(非 80 端口)的方案,不知道大家有什么好思路吗

    69 条回复    2022-01-18 14:44:50 +08:00
    leo108
        1
    leo108  
       2019-02-27 10:48:59 +08:00
    用真域名指向内网 IP 不就行了
    NetworkManager
        2
    NetworkManager  
       2019-02-27 10:49:46 +08:00
    内网 DNS
    julyclyde
        3
    julyclyde  
       2019-02-27 10:51:35 +08:00   6
    主机名.local
    mDNS 机制的域名

    “现代”操作系统都支持的
    hackxing
        4
    hackxing  
       2019-02-27 10:51:59 +08:00
    移动端连接 WiFi,设置代理,应该可以吧!(没弄过,瞎说的~)
    daijinming
        5
    daijinming  
    OP
       2019-02-27 10:52:19 +08:00
    @leo108 内网使用,域名还需要备案吗
    qiaoyurensheng
        6
    qiaoyurensheng  
       2019-02-27 10:52:26 +08:00 via Android
    域名解析服务中 A 记录直接指向内网 ip
    anguiao
        7
    anguiao  
       2019-02-27 10:53:38 +08:00
    内网使用你甚至不用申请域名,只要在内网设一个 DNS,想怎么解析就怎么解析。
    leo108
        8
    leo108  
       2019-02-27 10:53:46 +08:00
    @daijinming 不需要
    ThirdFlame
        9
    ThirdFlame  
       2019-02-27 10:53:50 +08:00
    @daijinming 不需要备案。 随便申请个域名,做 A 记录解析即可。
    但是就算用域名 ,在使用非 80 /443 端口时,仍然需要使用端口号的
    Laynooor
        10
    Laynooor  
       2019-02-27 10:54:34 +08:00 via Android
    路由器直接设置 DNS 解析
    baojiweicn2
        11
    baojiweicn2  
       2019-02-27 10:55:04 +08:00 via Android
    去改路由器的 hosts
    daijinming
        12
    daijinming  
    OP
       2019-02-27 10:55:31 +08:00
    @julyclyde 朋友这个方式超赞
    ysc3839
        13
    ysc3839  
       2019-02-27 10:55:36 +08:00 via Android
    内网有 DNS 服务器的话可以直接配置
    augustpluscn
        14
    augustpluscn  
       2019-02-27 10:56:52 +08:00
    很多路由都能直接设定(或者装插件),我用过下面两个

    k2p 刷的官改
    华硕 1900p 刷了梅林
    Laynooor
        15
    Laynooor  
       2019-02-27 10:57:19 +08:00
    tuding
        16
    tuding  
       2019-02-27 10:57:21 +08:00
    改路由器 hosts 是最简单的, 其次是在内网搭个 DNS 服务器
    ZombieMisaka
        17
    ZombieMisaka  
       2019-02-27 11:01:28 +08:00   13
    xip.io 例如 1.1.1.1.xip.io 解析到 1.1.1.1
    daijinming
        18
    daijinming  
    OP
       2019-02-27 11:04:08 +08:00
    @ZombieMisaka 这个方案之前不知道在哪本书中介绍过,之前想不起来了,感谢
    Atukey
        19
    Atukey  
       2019-02-27 11:06:47 +08:00
    @ZombieMisaka
    这个厉害了
    phxsuns
        20
    phxsuns  
       2019-02-27 11:09:27 +08:00
    随便买个真域名即可。其他操作和生产环境都一样了。
    真域名也是能指向内网 IP 的。
    Michaelssss
        21
    Michaelssss  
       2019-02-27 11:10:32 +08:00
    ...随便搭个 DNS 服务器。。
    mytry
        22
    mytry  
       2019-02-27 11:11:13 +08:00
    @ZombieMisaka 还有 7f000001.c0a80001.rbndr.us ,可以解析到 127.0.0.1- 192.168.0.1。
    ZombieMisaka
        23
    ZombieMisaka  
       2019-02-27 11:20:16 +08:00
    @daijinming #18 其实我还是建议买个真域名的,证书什么的搞起来也更方便
    bwangel
        24
    bwangel  
       2019-02-27 11:25:43 +08:00
    https://www.bwangel.me/2017/03/27/%E6%B5%81%E6%B0%B4%E8%B4%A6%E5%88%A9%E7%94%A8%E9%97%B2%E7%BD%AE%E7%AC%94%E8%AE%B0%E6%9C%AC%E6%90%AD%E5%BB%BA%E8%87%AA%E5%B7%B1%E7%9A%84%E5%BC%80%E5%8F%91%E6%9C%8D%E5%8A%A1%E5%99%A8/#%E9%85%8D%E7%BD%AEdns

    我之前做过类似的事情,利用一台闲置的的笔记本,Ubuntu + dnsmasq 搭建了一个 DNS 服务器,然后再设置路由器的 DHCP 下发这个 DNS 服务器就好。
    irainsoft
        25
    irainsoft  
       2019-02-27 11:26:17 +08:00   1
    局域网内建个 DNS 服务器或者解析直接设置为内网 IP,多简单的事情...
    nfroot
        26
    nfroot  
       2019-02-27 11:26:39 +08:00
    @ZombieMisaka
    @mytry

    那么问题出来了,既然域名部分已经有完整部分 IP,且这个域名的 A 记录是不会改变的。。。。。。
    那为什么不直接用 IP 呢?

    莫非是为了使用 ssl 证书?
    hjc4869
        27
    hjc4869  
       2019-02-27 11:31:43 +08:00 via iPhone
    建个 Active Directory
    Cbdy
        28
    Cbdy  
       2019-02-27 11:51:47 +08:00 via Android
    路由器支持的
    AngryPanda
        29
    AngryPanda  
       2019-02-27 11:58:12 +08:00 via Android
    内网 dns 服务器,路由器就可以;

    mDNS
    CodeWind
        30
    CodeWind  
       2019-02-27 12:04:32 +08:00 via Android
    dns-mapping
    dreamusername
        31
    dreamusername  
       2019-02-27 12:15:29 +08:00
    内网 DNS 服务器可以解决
    kaneg
        32
    kaneg  
       2019-02-27 12:45:36 +08:00 via iPhone
    买个便宜的真域名,比如.work 之类的,5 年才 60 多块
    guan123
        33
    guan123  
       2019-02-27 13:09:42 +08:00
    dnsmasq
    loading
        34
    loading  
       2019-02-27 13:14:29 +08:00 via Android
    求一个轻量级的 dns 服务软件,windows 用。
    loading
        35
    loading  
       2019-02-27 13:20:19 +08:00 via Android
    似乎找到了:Simple DNS Plus
    shede333
        36
    shede333  
       2019-02-27 14:18:40 +08:00
    动态域名解析,我也在用,可以看看这个教程: http://www.pubyun.com/wiki/%E5%B8%AE%E5%8A%A9:api
    ZombieMisaka
        37
    ZombieMisaka  
       2019-02-27 14:23:15 +08:00
    @nfroot #26 https,nginx 反代等等,只有 ip 和端口很麻烦
    dishuibaby
        38
    dishuibaby  
       2019-02-27 14:32:27 +08:00
    路由器绑定 host
    datou
        39
    datou  
       2019-02-27 14:34:10 +08:00
    路由器上跑 dnsmasq
    nfroot
        40
    nfroot  
       2019-02-27 14:49:12 +08:00
    @ZombieMisaka 你说的这句话我不明白,能具体一点么,谢谢,因为在我看来,用了你们俩推荐的域名,也只是相当于用 ip+别人的域名,那为啥不直接用 IP 呢,感觉没啥意义啊。。域名的话倒是有一个好处,可以上 ssl 证书。其他都一样吧。
    Astralis
        41
    Astralis  
       2019-02-27 14:58:03 +08:00
    https://github.com/AdguardTeam/AdGuardHome
    这个就挺好的,虽说主要用途是屏蔽广告域名,但是可以不使用这个功能,只用自定义规则列表,相当于一份 hosts,局域网里的机器 DNS 改成运行这个软件的服务器 IP 就可以了,这个软件支持 web 管理,很方便,解压即可运行,并且支持 DHCP 功能
    runntuu
        42
    runntuu  
       2019-02-27 15:03:37 +08:00
    内网没有 DNS 服务器吗?没有就搭一个 DNS 服务器,
    ZombieMisaka
        43
    ZombieMisaka  
       2019-02-27 15:11:03 +08:00
    @nfroot #40 如果你有一台对外的服务器,这台服务器上跑着 ABC 三个服务,你要怎么对外暴露这三个服务,只用 ip+端口就是 1.1.1.1:80,1.1.1.1:81,1.1.1.1:82,如果你有域名的话就可以分别用三个域名,共用 80 端口. 例如你可以在 nexus 上用 docker.1.1.1.1.xip.io 做 docker 的库,用 maven.1.1.1.1.xip.io 做 maven 的库.
    再例如有些服务比如 gitlab,本身自带了 nginx,如果你想用里面的 mattermost 等功能的时候,必须提供一个域名用于反代
    aver4vex
        44
    aver4vex  
       2019-02-27 15:13:47 +08:00
    dns
    nfroot
        45
    nfroot  
       2019-02-27 15:16:25 +08:00
    @ZombieMisaka 你这样说就明白了,因为看你的的回复是理解不出这一层意思的。。。。。而 mytry 推荐的则不能用,所以才一脸懵逼,谢谢了。
    nfroot
        46
    nfroot  
       2019-02-27 15:44:30 +08:00
    @julyclyde 这就郁闷了。。。我去年建了个域控,就是用的这个后缀,我晕了,不知道会不会有什么影响。。
    rootit
        47
    rootit  
       2019-02-27 15:46:51 +08:00
    路由器 dns 指向 dnsmasq 正解
    julyclyde
        48
    julyclyde  
       2019-02-27 15:56:15 +08:00   1
    @nfroot 还是建议参考一下 RFC 标准哦; local 是给 mDNS 预留的
    不过域控制器一旦建成,牵一发动全身啊,唉
    nfroot
        49
    nfroot  
       2019-02-27 16:13:11 +08:00
    @julyclyde 当时就是想了一下,好像这个后缀没被用到,也不太可能被用到,就算是用到了,估计也影响不了啥玩意(毕竟不可能用到同样域名的服务,已经足够偏了),结果没想到还是用在同一个广播域里的,这就有点蛋疼了。。。反正目前用着也没影响,目测没人恶作剧的话,应该是不会产生影响的。。。。目前 2016 的服务器也是有的,所以应该是没产生影响了。。。目前只是几个服务器用起来了域控,没在企业里推行,没事的。至于以后的人骂这个前辈傻逼,也是听不到了,反正没影响被骂的可能性应该很小。哈哈哈不想改了!用了域控就是要方便,麻烦的事情不想干了!
    flyingfz
        50
    flyingfz  
       2019-02-27 16:16:28 +08:00
    我给个 另类的方案

    部署一个 consul,consul 要做一些配置, 例如运行在 53 端口,具体要解析的域名等等 ,这些要去查看 consul 的文档。
    路由器上 ,在 dhcp 配置中,把 dns 服务器地址 配置成 部署 了 consul 的机器的 ip

    完事。

    之所以说另类, 因为 consul 的目的本身不是用做 dns 服务器, 而是用于微服务的服务发现,只是可以用 dns 来做服务发现。
    不仅解决了你的需求, 还为 将来做 微服务 做了准备。
    keventseng
        51
    keventseng  
       2019-02-27 16:49:16 +08:00
    改路由器的 hosts
    jadeity
        52
    jadeity  
       2019-02-27 17:06:53 +08:00
    自己内网用,路由器自己解析啊。
    jousca
        53
    jousca  
       2019-02-27 21:54:59 +08:00
    @loading windows server 自带的 DNS 服务器就很好用。
    zhaohanqing
        54
    zhaohanqing  
       2019-02-27 23:43:30 +08:00 via Android
    改路由器里的 Hosts 即可,很多路由器都会默认给自己设置一个内网域名,就是这样实现的
    mingl0280
        55
    mingl0280  
       2019-02-28 01:30:46 +08:00
    请自己加一台 DNS 服务器,然后配置一下 Forward Lookup Zone,域名劫持啥的都能搞,我在集成实验室里部署了一台这个玩意儿,用来做 AD 域解析,同时也把 ubuntu 和 debian 的更新源解析到内网了,这样内网的机器可以在不修改 sources.list 的情况下直接从内网源服务器更新……
    Arxz
        56
    Arxz  
       2019-02-28 07:42:04 +08:00
    路由器里 NAT 设置, 关键词: Hairpin NAT
    bdnet
        57
    bdnet  
       2019-02-28 08:16:53 +08:00
    综合起来还是 内建 DNS 靠谱

    另实现方式,买个域名,解析到内网 IP 也是可以的。但不建议这么做,域名和解析的 IP 地址会暴露(不安全
    RH
        58
    RH  
       2019-02-28 08:51:59 +08:00   1
    最近也在弄这个,自建的一些开源服务公司内部使用,之前都是自建 DNS,自定义服务内脏域名。
    但是有些服务需要走 https,否则比较折腾。所以 9 元买了个 top 域名签证书用,可以不用公网解析,继续使用内网析,然后证书可以免费使用 let ’ s encrypt 的 dns01 签发。
    wanwaneryide
        59
    wanwaneryide  
       2019-02-28 09:12:34 +08:00
    路由器里面首选配置本地的 dns 就行了,自动分配 ip 的机器都可以访问内网域名了
    sm0king
        60
    sm0king  
       2019-02-28 09:20:22 +08:00
    公司级别内网 DNS 楼上已经说的很清楚了。作为一个公司要管理 DNS 比较麻烦,而且不能随随便便,想怎么改解析怎么改解析。
    还可以用 fiddler 来做,fiddle 设置里可以设置 DNS,随时改,想怎么改怎么改。
    wolfie
        61
    wolfie  
       2019-02-28 10:05:28 +08:00
    直接修改对应网关的 host 不行吗。
    huskar
        62
    huskar  
       2019-02-28 10:37:09 +08:00
    自己搭一个 DNS 服务,然后把 dhcp 的 dns 服务器设置成自设的服务器即可。
    需要自定义什么域名就改 DNS 服务器所在机器的 hosts 文件,或者直接改 DNS 配置。


    @ZombieMisaka 这个方案有啥用啊……
    ZombieMisaka
        63
    ZombieMisaka  
       2019-02-28 10:43:42 +08:00
    @huskar #62 要是公司给你分的几台机器呢,你没权限动 dns 啊,你也没法保证别人的机器没自定义 dns,总是有这种场景的
    abcfyk
        64
    abcfyk  
       2019-02-28 10:50:39 +08:00
    @ZombieMisaka 比如公司分了 test1,test2,test3 三台机器,在 test1 上用 dnsmasq 之类的搭个 dns,在 test1,test2,test3 的 dns 分别将 test1 的内网 IP 作为首选 dns 不就完事了。 不一样的吗
    ZombieMisaka
        65
    ZombieMisaka  
       2019-02-28 11:09:25 +08:00
    @abcfyk #64 注意审题
    huskar
        66
    huskar  
       2019-02-28 11:50:01 +08:00 via Android
    @ZombieMisaka 如果是你说的这种公司场景,那想用公司的服务就得用公司的 dns 啊。员工当然可以自定义,没人拦着,但是干不了活有什么意义啊?我司有自己的内网 dns,我非得不用,要自定义一个,那我不用干活了,公司内网全都访问不了。

    dns 本就是客户端愿意用才用的服务。
    yc8332
        67
    yc8332  
       2019-02-28 16:04:48 +08:00
    基本上不都是路由器上有自定义的 host 吗?或者是内网搭 DNS 服务器
    snokin
        68
    snokin  
       2019-07-29 22:48:03 +08:00
    其实局域网内已经有各域名可以使用的……那就是.lan ,比如你放网站的机器名字叫 dev,那你可以通过 dev.lan 来访问,还可以增加二级域名如:a.dev.lan,b.dev.lan 等。
    pC0oc4EbCSsJUy4W
        69
    pC0oc4EbCSsJUy4W  
       2022-01-18 14:44:50 +08:00
    dnsmasq
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2770 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 07:06 PVG 15:06 LAX 00:06 JFK 03:06
    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