同一个域名如何实现在家里走内网在外面走公网连接群晖

2024-01-30 10:06:13 +08:00
 itskingname

背景

我的 NAS 有公网 IP ,通过群晖的 DDNS 绑定了域名:xxx.com:13180

使用手机流量或者在外面访问域名一切正常。但是回到家以后,当我连上了家里的 wifi ,无论是直接使用外网 IP 还是使用域名,均无法访问 NAS ,必须使用 192.168 内网 IP 或者换成流量才能访问 NAS 。

需求

使用这个域名,无论在外网还是内网均能访问群晖。

设备

我没有旁路由器,只有联通送的光猫+送的路由器,没有其他网络设备。

请问我应该怎么设置,才能实现这个需求?

16563 次点击
所在节点    NAS
129 条回复
silverwolf
2024-01-30 10:14:14 +08:00
adguard home 有个 DNS 重写 功能,把家里主路由的 dns 换成 adguard home
lff0305
2024-01-30 10:18:29 +08:00
内网回流问题,要解决需要路由器支持

简单解决,就在内网机器 host 文件加个配置,把 xxx.com 解析成内网 192ip 就行了
Jack927
2024-01-30 10:25:04 +08:00
如同#1 #2
我也这个需求:
解决方案是一个设备装 adguard home ,路由器的 dns 执行这个设备,ADHome 然后 dns 重写成本地 ip 。
这样家里所有人的设备就是在家走内网,在外走公网。
如果没有一个单独的设备,那么你用的电脑上本地设置个 host 也行
A01514035
2024-01-30 10:25:08 +08:00
我昨晚也想到了这个问题,是否可以通过一台云服务器使用 nginx 做 301 重定向来实现?
有一个解析到云服务器的域名,nginx 判断请求 IP 段,如果是自己家宽带的就 301 到内网的 IP 地址或者 301 到解析到内网 IP 的域名。 如果是其他情况就 301 到 DDNS 绑定的公网 IP 域名:端口。

当然前提也有点苛刻,需要有云服务器,需要自己家宽带的 IP 在某一个范围内。
没有实验过,只是靠脑子想的,不知道是否可行。
Jacksu
2024-01-30 10:30:19 +08:00
你没有其他网络设备,但是你有群晖是吧?群晖上搭建一个内网 DNS 服务器就行了,1 楼的就行,docker 安装。实在不想 docker 也可以群晖自带的 DNS 服务器配置一下就好,然后把家里路由器的 DNS 服务器设为群晖上的就好。
ikn0wzxc
2024-01-30 10:33:53 +08:00
路由器的问题?我用的 r2s ,内网也能通过域名访问
titanium98118
2024-01-30 10:36:47 +08:00
在内网 DNS 劫持一下?
1if5ty3
2024-01-30 10:37:02 +08:00
1 、路由器 端口映射有个端口回流功能,打开就好了
2 、在路由器加主机 host
AirBai2
2024-01-30 10:39:31 +08:00
家里局域网搭一个 dns 服务器,群晖上有现成的套件
jst0701
2024-01-30 10:45:49 +08:00
说下我的方案吧,有公网,但不想开那么多端口,我是在 nas 搭建了一个服务端,然后在 qx 添加了一个 ssid 的策略组,根据 wifi 名称判断分流策略,连上家里的 wifi 就直连,在外面就通过 ss 回家,在家和在外面都是直接用 ip 访问,我感觉现在挺好的,家里的摄像头我也不需要开外网了,随时随地直接用 ip 访问
yc8332
2024-01-30 10:46:22 +08:00
路由器上绑定 host 。。直接把你的域名解析成内网地址不就好了
ZRS
2024-01-30 10:47:57 +08:00
正确配置 hairpin nat
tsvico
2024-01-30 10:48:49 +08:00
外网域名正常解析,我的 openwrt 上有 dnsmasq ,这么配置的
```sh
vim /etc/dnsmasq.conf
# add
address=/xx.xx.cn/192.168.1.2
```
libook
2024-01-30 10:49:27 +08:00
你需要在家庭网络内让客户端直接连 NAS 而不是从路由绕一下是吧?

这样的话就是需要你域名在家庭网络内解析到你 NAS 的内网 IP 上,思路就是你内网有个 DNS 服务器,让这个 DNS 将域名解析到 NAS 的内网 IP ,然后客户端在家庭网络内使用这个 DNS 来解析域名。

你看看路由器支持不支持手动添加 DNS 记录,不支持的话就内网找台可以一直开机且稳定的设备装个可以自己配置解析记录的 DNS 服务,然后在路由器上设置 DHCP 的 DNS 地址为那台 DNS 设备的 IP 。
itskingname
2024-01-30 10:50:52 +08:00
@silverwolf 这样需要有地方运行 adguard home 吧。但是电脑并不是 24 小时开机。
itskingname
2024-01-30 10:51:08 +08:00
@lff0305 手机上不好改 hosts 文件
itskingname
2024-01-30 10:51:57 +08:00
@Jack927 如果我把电脑带到外面去,要访问 nas 还得把 hosts 改回来
itskingname
2024-01-30 10:53:02 +08:00
@Jacksu 本来就是因为连不上群晖才提的问题。但是你的解决方法是先要连上群晖。。。
itskingname
2024-01-30 10:55:32 +08:00
@libook 目前能够一直开机的就是群晖,没有其他能一直开机的设备。但我的需求本来就是在内网使用域名连接群晖。。。
littlewing
2024-01-30 11:01:44 +08:00
hairpin nat

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1012671

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX