个人家庭网络布局分享

81 天前
 dhuzbb

个人家庭网络布局分享

整体网络架构图

整个家庭网络的架构如下:

整体的网络架构非常的扁平化和简单:

物理设备图如下:

网络架构说明

入户光猫改桥接

坐标上海嘉定。我是直接微信询问的宽带运维小哥,很爽快的就帮我在后台查询了超级密码,自己进入光猫后台修改桥接即可。

如果运维小哥不肯帮忙查询,也可以闲鱼搜索"地名+运营商+光猫"等关键字,花一点小钱即可解决。

光猫修改桥接的目的是为了搭配后面的主路由进行拨号上网和获取公网 IP 来使用的。

获取公网 IP

直接打运营商客服电话说需要开通公网 IP 即可,上海联通宽同时分配有公网 IPv4 和 IPv6 的地址。

当然各个地方运营商可能存在差别,据了解联通和电信都会给公网 IPV4 ,移动不会给公网 IPV4 地址,但是 IPV6 的地址应该会给的。

主路由负责拨号上网

主路由上正常的设置好拨号上网,这样主路由上获取的 IP 就是公网 IP ,这个 IP 是互联网上其它设备可以直接进行访问的。

很多人都存在一个误解,认为这个公网 IP 是固定的。实际上每次重启主路由,或者一段时间后,分配的这个公网 IP 都会变更的。IP 每次都发生变化很难记忆,所以后面需要搭配 DDNS 服务进行动态域名解析。

其次,运营商为了阻止个人用户在家里架设网站等服务,家庭宽带一般都会封禁了 80 、443 等重要的低位端口。

主路由设置好后,基本无需各种折腾,能正常的上网即可。虽然 iStoreOS 支持非常丰富的插件,能够实现各种功能,但是为了整个家庭网络的稳定性,建议尽可能少在主路由上面安装各种插件。

旁路由负责科学上网

使用旁路由模式一般都是为了科学上网服务的。

iStoreOS 的网络设置向导中就带有拨号上网、旁路由设置等入口。界面清爽简洁,对小白用户来说非常友好。

在旁路由上搭建好了科学上网的服务之后,需要科学上网的设备,只需要将网关和 DNS 修改为旁路由的 IP 地址,即可享受科学上网的服务。例如个人使用的手机、黑苹果、AppleTV 等设备都可以非常方便的修改网关和 DNS 指向旁路由的地址。

推荐一个 iStoreOS 的插件包: https://github.com/AUK9527/Are-u-ok

无线 AP

无线 AP 采用的是一台红米 AX6000+小米 AX6000 组的有线 mash 。

红米 AX6000 在无线信号覆盖、散热以及稳定性等方面都极其出色,理论上一台红米 AX6000 即可覆盖,无需 2 台路由器。缺点就是红米 AX6000 不带 2.5G 网口,小米 AX6000 带有一个 2.5G 网口。

如果不在意 2.5G 网口的话,个人还是非常推荐红米 AX6000 的。体积比小米 AX6000 小巧,300 元左右,性价比极高。设置好 Wi-Fi 之后,基本上就会忽略它的存在。

由于主路由是软路由,负责 DHCP 和路由相关的功能。所以不需要硬路由器的路由等功能,只需硬路由器的无线信号发射功能,所以将硬路由设置为有线中继模式即可。

核心交换机

由于有线设备较多,交换机我选择的是磊科 GS10 ( 8 个 2.5G + 2 个万兆 SFP+),618 入手不到 300 块,性价比极高。

该交换机外壳为金属外壳,体积非常小巧。8 个 2.5G 网口可以满足绝大多数家庭用户的需求,额外的 2 个万兆光口适合连接 NAS 和台式机等设备。

旁路由架构带来的好处

该架构带来的好处非常多:

后续

后面会基于上述的物理网络架构,继续分享《家庭内网服务》、《在外访问家庭内网服务的最佳姿势》等更多内容。

4574 次点击
所在节点    宽带症候群
46 条回复
StrongNoodles
81 天前
家里当初没有预置弱电线路,又不想大动,最后只搞了三个无线路由器搞了个有线 MESH ,大佬这个留以后装修参考了。另外,问一句,放 NAS 和网络设备的置物架看着挺不错的,大佬有空的话可以回复下厂家或购买链接参考下,感谢!
Kinnice
81 天前
差不多,区别点是
把所有设备网关/DNS 都切到了虚拟 IP 上
然后主路由和旁路网关 装了 Keepalived ,旁路为 Master
旁路网关绕过中国大陆 IP

效果是旁路由随便拔掉,对家庭网络没影响,国内服务不会断.
Kinnice
81 天前
@Kinnice 手动修改网关和绑定 dhcp 网关都感觉太麻烦,还是全走一个 VIP 网关 比较舒服.
Kinnice
81 天前
10.0.0.1 主路由
10.0.0.10 VIP 谁是 Master ,谁持有这个 IP ,dhcp 默认下发这个 网关和 dns
10.0.0.100 旁路由
fenghuang
81 天前
经过旁路由的设备要两次 nat 吧
x86
81 天前
省流:光猫->主路由->交换机->其它
0xD800
81 天前
现在新开的宽带都没有公网了,老的有
povsister
81 天前
给提个这种配置下的一个小问题,可以思考一下。

假设在 PVE 上有一个 web 服务,而且此 PVE 中,提供 web 服务的容器或虚拟机的默认网关是旁路由。
此时有需求从外网访问,通过公网 IP 的端口映射,直接访问 PVE 上的 web 服务,而且 web 服务要能看见访问者的真实 IP (而不是主路由的 IP )
请问,这种情况你的拓扑配置可以支持吗
Jiceburger
81 天前
为啥不把主路由当唯一网关然后把科学数据包/DNS 请求分到旁路由上去?这样就不用去按设备改网关了(当然所有设备都具备了魔法能力也许不是一个好事...)。我家负责拨号的主路由是 PVE 下的一个爱快,我发现这玩意简单粗暴而且特别好分流...
dhuzbb
81 天前
@StrongNoodles 我是淘宝购买的 80X35cm ,到手 92 。我的弱电箱在柜子中,最后安装好之后,尺寸刚刚好,一点不多不少。特别提醒一下,需要事先注意量好尺寸。购买地址: [淘宝] http://e.tb.cn/h.grAYnlhiNItchZT?tk=4eOi3i7zkod HU9046 「厨房置物架微波炉收纳架家用钢制货架地下室杂物储物架夹缝铁架子」
点击链接直接打开 或者 淘宝搜索直接打开
dhuzbb
81 天前
@Jiceburger 修改主路由的网关和 DNS 指向旁路由并不是一个好的选择。当你旁路由挂了之后,整个家庭网络都会瘫痪。上面的做法保证了无论如何家里网络都会有一条正常的线路。
dhuzbb
81 天前
@0xD800 ipv6 应该有的。
dhuzbb
81 天前
@povsister 应该无法看到访问者的真实 IP
povsister
81 天前
@dhuzbb
但看到访问者的真实 IP 是一个很常见的需求,假设你暴露的不是 web 服务而是 ssh 服务,那么为了防爆破肯定要 fail2ban ,那么如果无法看到真实 IP ,确实有诸多不便。。

这也是所有”同网段改网关走旁路由科学“方案的一个无法解决的痛点问题。
chenbin36255
81 天前
@dhuzbb #11 用 paopaogateway+paopaodns dns 实现分流
dhuzbb
81 天前
@povsister #14 后续会专门写一篇来介绍如何安全的对外暴露内网服务。不会存在你说的上述问题。
zhywang
81 天前
@Kinnice 你是我自从上网冲浪以来看到的第一个在家庭网络中用 keepalived 和 vip 的人。。。。
maybeonly
81 天前
@povsister
你知道的我很讨厌旁路由
但是确定的内网 ip 和端口的话只要匹配来自这个 ip:port 的数据包直接转发给主路由
还是做得出来的
不过如果能做这个,大概也就不会用旁路由了

搞好的主路由其实没那么脆弱
很多时候被弄坏了都是因为把调度整个搞坏了

只需要访问墙内的设备,方案有
1) 采用不同的 ssid/vlan
2) 在入口网关上根据 mac/ip 打 tag ,走不同的路由表
yeh
81 天前
楼主这个图挺好,简洁明了。

需要换设备的直接换设备就行。

我是搞了 adguard+modns+旁路由,改了局域网设备的默认 dns 为 adguard ,把 fakeip 拦截到旁路由。 旁路由挂了不影响主要的上网。
WhatTheBridgeSay
81 天前
楼主有没有发现你所谓的这种“旁路由”模式,即通过 DHCPv4 方式修改 IPV4 默认网关到单独的网关的方式会导致 IPV4 和 IPV6 的网关不一致。会有包括但不限于以下问题:
1. UPnP 需要在 NAT 设备上自动打洞的协议会失效,因为你的默认网关并不负责 NAT
2. 如果不在 DNS 层面 drop AAAA 就会导致你在所谓“旁路由”上部署的透明代理等 trick 通过 IPV6 逃逸
3. 除非像楼主一样愿意不厌其烦地给每一台局域网设备手动设置网关,否则也不存在所谓“旁路由”挂了而你使用此作为默认网关的设备不受影响

关于第三点目前 openwrt 有个很好的实践,可以通过在 DHCP 的“静态地址分配”里给客户端打“标签”,再在接口的 DHCP 服务器设置里使用 DHCP option 给不同 tag 分配不同的默认网关。

例如下列给打了 trans_gateway 标签的指定 192.168.1.2 作为默认网关和 DNS

tag:trans_gateway,3,192.168.1.2
tag:trans_gateway,6,192.168.1.2

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

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

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

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

© 2021 V2EX