V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
exiaohao
V2EX  ›  宽带症候群

小型家用网络建设记

  •  
  •   exiaohao · 2022-06-04 20:21:47 +08:00 · 6932 次点击
    这是一个创建于 927 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前段时间某学弟找我,说要结婚搬新家,想置办一套新的网络设施,大概就是要 WiFi6 + 群晖,其他一概不知,因为学弟单位上公网比较难,有时候要私人电脑回家处理一下自家厂里的事,所以还有回家的需求。正好做完作业给大家瞧瞧看看有什么再优化优化的。

    本垃圾佬又开始上海鲜市场淘交换机了,考虑到要放在弱电箱里,还是先稳定可靠,2.5G 、10G 什么的花把式现在也不是很急需,另外能入眼的万兆可能是 S5720-EI 或者 S6720 起步,这些都不可能塞进弱电箱了,那就先整一个华为 S5720-12TP-LI-AC 吧~ 整体拓扑图如下: terry-home

    实现目标

    家用基础设施全面虚拟化(路由器、DNS )等,存储在 OptiPlex 7090 上装了 nvme + 机械的配置同时满足系统和下载缓存的需求。同时因为电信提供的公网 IP 和大流量 5G 卡,支持远程 VPN 回家。因为学弟单位限制,单位电脑无法上公网也不能做工作以外的事情,所以他日常带 iPad 或者自己的 Macbook Pro 去上班,所以有一个方便的 VPN 连回家还是非常方便他回家做一些业划务水的事。

    接入网

    电信 1000M v4/v6 双栈公网; 移动 300M v6 公网

    交换机、无线网络和虚拟化

    华为 S5720-12TP-LI-AC 交换机

    ESXi 虚拟化 Dell OptiPlex 7000 系列 SFF 主机

    另加学弟现有的一台老机(一台装了 3080 的 老机器)

    Aruba AP-505 胖瘦一体,开 Instant 模式

    群晖 DS920+

    以上所有设备接到华为交换机,交换机开三层 VLANIF 、DHCP 和 VRF (主要给移动机顶盒单独走移动用) 虚拟化主机运行,然后新建以下服务给这次的网络:

    DNS:干净的 电信+国际-广告 解析环境

    ocserv:AnyConnect 接入

    云桌面:由 vmware Horizon 驱动

    软路由:RouterOS CHR 6.9 - 电信 和 VyOS 1.3.1 - 移动

    VLAN 规划

    10 接入网:单电信 192.168.10.0/24 交换机 VLANIF 启用 DHCP

    11 接入网:国际友好 192.168.11.0/24 交换机 VLANIF 启用 DHCP

    20 服务段,DNS 、ocserv 等 192.168.20.0/24 含国际路由

    21 设备管理 192.168.21.0/24 交换机 VLANIF 启用 DHCP 包含家里的物联网设备和 Aruba Instant

    100 路由器-交换机三层互联

    101 电信宽带

    102 移动宽带

    升级留坑

    关于万兆 到桌面什么的并不是很急需,倒是 DS920 和虚拟化平台可以通过 10G 互联以后直接 iSCSI 挂载到虚拟机上用,这个需要注意的就是设备得离得足够近,不管是光缆、DAC 还是 AOC ,能接上线且不影响家里的摆设还是很重要的。另外 Dell OptiPlex 7000 系列的半高挡板装一块单口 /双口拆机 X520 还是很有性价比的。 关于性能 因为 Dell OptiPlex 的可靠性和性能都可以做得很好,而且非常静音且节能,同时 SFF 主机和 Micro 主机尺寸都非常小巧,未来有更多需要可以叠叠乐,因为学弟最终安排了一个柜子来置放设备,所以未来收一台 S6720S-16X-LI 来做全万兆互联也是可以完成的任务了

    45 条回复    2022-06-07 21:23:49 +08:00
    jfdnet
        1
    jfdnet  
       2022-06-04 20:26:47 +08:00   ❤️ 1
    不知道是什么大业务需要搞到这么复杂。
    pppwaw
        2
    pppwaw  
       2022-06-04 20:47:32 +08:00
    感觉 optiplex 可以加个 oob ,以防服务器暴毙导致只能物理维修,或者对路由器这些重启

    其他的做的不错
    MaxTan
        3
    MaxTan  
       2022-06-04 20:53:47 +08:00
    “其他一概不知” 后续维护你也帮学弟做吗
    haha2333haha
        4
    haha2333haha  
       2022-06-04 20:58:55 +08:00 via iPhone
    这不得三天两头跑你学弟家维护
    或者说学弟竟是我自己
    cpstar
        5
    cpstar  
       2022-06-04 21:50:45 +08:00   ❤️ 1
    @haha2333haha 4# 以前修电脑都是借口接近学姐学妹才是目标
    exiaohao
        6
    exiaohao  
    OP
       2022-06-04 21:55:47 +08:00
    关于维护
    学弟基础的 Linux 运维还是会的所以不用找我(甚至 买 Aruba 都是他自己的主意
    exiaohao
        7
    exiaohao  
    OP
       2022-06-04 21:56:35 +08:00
    @pppwaw 需要再买一台 OOB + 4G 模块了,机器倒是可以想办法开 Intel ME
    cloudsigma2022
        8
    cloudsigma2022  
       2022-06-04 22:40:56 +08:00 via iPhone
    这是要挖矿吗,搞的这么复杂!其实就是一台交换机,一台服务器,实现多网融合,虚拟化。现在比较好奇的是,出去的路由是如何规划的,哪些流量从移动出,哪些走电信出?如果是拨号上网,光猫不用画?另外,vpn 那块,可以用 wireguard ,内核级的,速度快。
    haha2333haha
        9
    haha2333haha  
       2022-06-04 23:14:44 +08:00 via iPhone
    @cpstar 那不得分开几天修
    oovveeaarr
        10
    oovveeaarr  
       2022-06-05 00:31:14 +08:00
    3 个建议吧
    1.路由不要虚拟化
    2.避免软交换
    3.网段划分就免了,就那几个设备做好策略路由,内网直接域内互联,不要走软路由。
    oovveeaarr
        11
    oovveeaarr  
       2022-06-05 00:31:51 +08:00
    以上三个建议不分先后,但是都是性能严重制约的地方,现在这种设计,10GE 压力很大。
    x86
        12
    x86  
       2022-06-05 00:47:09 +08:00   ❤️ 1
    这屁大需求整个拓扑图把我看懵了,庆幸的是还好你没画个 ups 上去
    mlhadoop
        13
    mlhadoop  
       2022-06-05 01:35:47 +08:00   ❤️ 1
    求一个解决方案: 出去不想带电脑,想用户外通过 ipad 连接家里的 mac ,有什么简单点的方案吗? 家里没有公网 ip
    yaoyao1128
        14
    yaoyao1128  
       2022-06-05 06:38:06 +08:00 via iPhone
    个人建议:如果没有什么陌生设备,一个网段就够了。如果有陌生设备,加一个专门的网段就行。如果需要分离境内外访问设备防止检测之类的目的的话,再加第三个。
    如果设备特别多,就直接 192.168.0.0/16 。
    这些东西其实……挺少的……(指物理设备)
    sansam
        15
    sansam  
       2022-06-05 07:06:55 +08:00 via Android
    好奇家用 vmware Horizon 怎么实现的?
    oldhan
        16
    oldhan  
       2022-06-05 12:22:48 +08:00
    确定学弟自己维护得起来嘛?还是说维护的活你就是发自内心地想干?
    exiaohao
        17
    exiaohao  
    OP
       2022-06-05 13:46:52 +08:00
    @oovveeaarr
    1. 路由现在虚拟化 有需求完全可以拿出来,先上了再说
    2. 交换、三层都在交换机上,我发这个方案出来的原因就是看到很多方案都是傻傻分不清楚还整一堆 NAT
    3. 同「 2 」网段间互联和路由都在靠交换机做,甚至 5720 都可以支持 vpn-instance 和 ospf 了,性能和延迟比软路由好太多
    4. 10GE 要起核心也在交换机,这里的设计,只有 NAT 和出口边缘才会走到“软路由”
    exiaohao
        18
    exiaohao  
    OP
       2022-06-05 13:47:19 +08:00
    @x86 他买了,我没画
    exiaohao
        19
    exiaohao  
    OP
       2022-06-05 13:49:25 +08:00
    @cloudsigma2022 外部 VPN 接入靠 AnyConnect
    他家还有厂里的金蝶啥的,所以他爸妈财务也会用到
    wg 是不错,但问题是 appstore 下客户端、配置比 anyconnect 还是要复杂一点的
    我也不想回头帮他整天做维护
    exiaohao
        20
    exiaohao  
    OP
       2022-06-05 13:51:17 +08:00
    @sansam 只要机器多资源够总能搭起来,另外桌面对图形性能要求高的话,可以直通一张显卡,vGPU 那种事情就不建议在家干了
    cloudsigma2022
        21
    cloudsigma2022  
       2022-06-05 14:35:30 +08:00
    @exiaohao 外区的 appleid ,配置好后,用自带的 iCloud 文件备份配置文件。
    oovveeaarr
        22
    oovveeaarr  
       2022-06-05 15:39:19 +08:00
    @exiaohao #17 如果我没理解错,其实还是一样的问题的,流量还是要过一遍宿主机,再去交换机一趟。
    这种方案下,如果没有做 nic 直通而是上了 bridge ,网络性能会更差。
    oovveeaarr
        23
    oovveeaarr  
       2022-06-05 15:44:04 +08:00
    其实我还是觉得这是个很简单的需求,这样子的复杂化设计没有看到对比简单设计有什么优势,反而会有一系列衍生问题,也提高了维护成本。
    不过这都是我个人的看法,权当讨论了
    ericbize
        24
    ericbize  
       2022-06-05 15:48:27 +08:00
    如果是我的话,大概率 会一台 ros 搞完 (不过 ros ,openwrt 维护难度略高)

    有没有想过,要是你的虚拟机一卦,全家断网。
    exiaohao
        25
    exiaohao  
    OP
       2022-06-05 16:09:15 +08:00
    @oovveeaarr 内网之间的流量不会过宿主,内网网关都在交换机上。只有出去公网流量过,另外考虑性能的话,KVM + vSRX 可以解决,把 DPDK 开起来秒家用需求是没问题的

    @ericbize 那 OpenWRT 软路由都能用,ESX + CHR 为什么不能?
    sansam
        26
    sansam  
       2022-06-05 16:35:47 +08:00
    @exiaohao 想问一下软件授权如何解决? 比如 vmware Horizon,vSRX 等
    oovveeaarr
        27
    oovveeaarr  
       2022-06-05 16:39:05 +08:00
    @exiaohao #25 哦哦,原来是这个意思。那在 1G 的情况下这个方案问题不大的,如果再高就要考虑主机内的网络架构了。
    不过这套东西还是太过于复杂了( L3 交换机 /ROS/vyOS ),适用面太过于局限了。在没有明确收益的情况下,如果不简化下,可能对于绝大部分 V2er 来说,参考价值不大。

    DPDK 现在有路由系统支持了?我看 RouterOS 、Openwrt 、vyOS 好像都没有官方支持的样子。
    exiaohao
        28
    exiaohao  
    OP
       2022-06-05 17:14:23 +08:00
    @oovveeaarr 我在这提出这个方案的原因就是其实这里只有一台出口的 NAT 路由器( CHR ),所有内网互通基本都是在华为那台交换机上走默认路由表 / vpn-instance 做的,想搞点小花活也可以通过 VLAN 100 的互联地址来绕过 CHR ,后期要升级的话把 5720 端了换更高配就可以。
    其实 vyos 在这里面我没画出来,因为涉及到 iBGP + eBGP 把海外路由直接灌进 CHR ,这真有点超纲。

    主要想提的是设计网络把内网边界规划清楚,不要上一个路由器什么就 NAT 一次,看到很多人都喜欢这么干,所以写了这个方案出来,建议大家内网全三层,到了 Internet 边缘才 NAT ;
    另外如果要规划多个子网,也不要把网关、DHCP 起在路由器上,尽量让三层交换机来实现这些事情

    DPDK 可以看 Juniper vSRX 可能是最容易接触到且可用的了
    nervebing
        29
    nervebing  
       2022-06-05 18:53:35 +08:00
    说这么复杂的也是离谱,明明是比较基础的网络架构
    oovveeaarr
        30
    oovveeaarr  
       2022-06-05 19:21:27 +08:00   ❤️ 1
    @exiaohao #28 实际上家庭用户基本不会用上 L3 交换机,甚至连管理型交换机都很少,就算有也是 L2 级别的,所以这套网路架构其实并不适用目前 V2er 的大多数环境。

    具体到实践中来说,划分网段目前对家用的意义可能仅限于隔离网路了。但是真的有很多简单高效的方法,比如说直接做端口隔离,亦或者是直接做防火墙规则(多网段)都可以达到,和上多一个设备效果一样,甚至更好。
    其次对于一个全功能路由来说,服务集中并没有问题,反而提高易用性的同时,便于管理。
    比如说:目前 Openwrt 等路由在 DHCP 的同时,附赠了主机名内部 dns ,如果引入额外的设备,增加了配置成本外,也是收益不明确的。

    至于多层 NAT 和软路由的职责,确实应该尽量避免(尤其是软交换),但是还是那句话,实践中引入的设备大多数都是二手设备复用。在考虑配置成本的情况下,多层 NAT 是可以接受的。
    比如说为 IOT 设备准备一个单独的 SSID ,从而利用到的老旧路由器。亦或者是访客 WiFi ,这类对性能要求不高,又没有什么互联需求的设备,直接怼上一个无线路由是最简单方便的(毕竟是 AP ,路由只是附赠的)。

    至于后面在家庭引入 BGP/OSPF/RIP 等操作,如果是自己拿来玩是没问题的,从实用角度出发有非常多更好的选择( geosite/ip/as 等),而且不会引入多余的复杂度。

    其实最后说起来,我是认为家庭网络总体目标应该是保证其简洁、轻量、易替代性,对于路由则是应该保持一体性。毕竟玩脱了影响到家里人上网的时候,排查时间越短越好,恢复时间越快越好。
    idolphin
        31
    idolphin  
       2022-06-05 19:40:58 +08:00 via iPhone
    在我眼里,小型家用网络约等于光猫加一台无线路由。
    camus
        32
    camus  
       2022-06-05 20:19:23 +08:00
    @oovveeaarr #30
    +1
    家庭网络,可能有一些特殊,但并不刁钻的需求,没有看到需要使用企业级设施和网络规划的必要性

    不要为了使用企业级设施而去使用企业级设施
    465456
        33
    465456  
       2022-06-05 21:27:08 +08:00
    好奇问下,出了问题,学弟会不会自己处理?
    ychost
        34
    ychost  
       2022-06-05 22:33:03 +08:00   ❤️ 2
    @mlhadoop 最简单就是买一个阿里云轻量应用服务器(搞活动大概 100 不到一年,5M 宽带),然后用 FRP 映射到本地就行了,我就是这样搞的,家里树莓派映射出去的(无公网 IP ,全靠 frp )
    ychost
        35
    ychost  
       2022-06-05 22:36:03 +08:00
    感觉楼主整太复杂了,到时候估计隔段时间就会去维护,而且越复杂稳定性越低,中间一个环境有问题可能就上不了网了,家用的非发烧友 尽可能的光猫+路由器就解决了,至于连接公司内网、科学上网等等建议都走电脑 /手机的 VPN
    mlhadoop
        36
    mlhadoop  
       2022-06-05 22:54:58 +08:00
    感谢,ipad 远程连接到 mac 上,有什么软件推荐吗? 还是自带的屏幕共享也就 ok 了?
    @ychost
    ychost
        37
    ychost  
       2022-06-05 23:05:45 +08:00
    @mlhadoop 我只用过 toDesk ,不过还有个 parsec 这个延迟特别低,不知道现在支持 ios 了不,之前不支持
    six6pear
        38
    six6pear  
       2022-06-06 09:52:29 +08:00
    虚拟化最后的后果就是 All in boom
    xhcnb
        39
    xhcnb  
       2022-06-06 10:24:34 +08:00
    同样认为太复杂, 用户不会维护的话, 后续是一个无尽的麻烦
    折腾来折腾去, 现在觉得家庭网络旁路由才是终极模式, 拓扑简单, 没有单点瓶颈, 维护升级都很方便
    xiaoun001
        40
    xiaoun001  
       2022-06-06 11:36:16 +08:00
    @exiaohao 将近 20 年老网工,这个拓扑跟我家里的差不多,体现出一代网工对技术的不懈追求。
    我的体会是,精心设计的复杂架构,用起来很爽,只是后期维护痛苦。
    1 、请教一下楼主这个拓扑图用什么工具画的,真的挺漂亮的。
    2 、关于楼主提到 EBGP ,IBGP 国外路由引入,确实需要费神的。
    我的环境 IPV4 环境,分两步解决这个问题。1 、默认路由全部走国外出口,国内路由汇聚后静态路由走国内。2 、本地 DNS 。GFW 墙上的域名隧道走 4 个 8 解析,其他正常走国内 DNS 解析。这样解析出来的都是最优结果,不存在饶道的问题。
    Judoon
        41
    Judoon  
       2022-06-06 11:53:09 +08:00
    咨询一下,弱电箱的交换机到 Dell 7090 的连接,物理上是一根网线吗?电信和移动的拨号都是桥接到虚拟路由器上拨号的吧?
    fastcache
        42
    fastcache  
       2022-06-07 08:14:07 +08:00 via iPhone
    厉害👍同问神马软件画的? anyconnect 是全局还是 sslvpn, ocserv 能下发路由吗?
    exiaohao
        43
    exiaohao  
    OP
       2022-06-07 10:35:51 +08:00
    @fastcache 可以自己配置选用你说的不同的方式,另外是不是要管理 DNS 也可以选

    @Judoon 一根,暂时是网线,后面会换光缆;都是桥接。这里的重点其实是内网全靠交换机,只有到公网才会去小主机

    @camus 并不是为了企业级而去企业级,这些设备价格都很合理,但是提供的可靠性不是淘宝 1000 块钱买个小主机,上个 TP-LINK 交换机能给的,我有很多深圳做小主机、1U 设备的提供商人家直言不讳说可能就 2-3 年的寿命,要可靠相同配置成本就 2000+,而且那些做软路由的小机出问题的情况非常的多。我在一些很急的情况下甚至用 OptiPlex 去当服务器用,虽然达不到服务器那样但是真的很可靠啊根本不用担心它会出奇奇怪怪的问题,交换机也是一样。
    当然这都是在把固件升级到合适版本的情况下说
    另外「为什么这么规划」并不是要大家都这样,想提的是看到很多接一台设备 nat 一次的行为真的让人无法接受,而且这样造成的性能瓶颈很可能都发现不出来。现在很多家用玩家的设备都很不错了,如果有条件完全可以做到交换机上三层然后把内网公网的流量合理分开转发的
    exiaohao
        44
    exiaohao  
    OP
       2022-06-07 10:39:06 +08:00
    @ychost 很不幸的是 esx 我家从 5.0 用到 6.7 ,软路由从 RouterOS 5.x 到现在的 CCR 。基本年故障时间不超过半小时
    因为母鸡和交换机是从 HP MicroServer + H3C S5100 一路升级到 Dell R430 + Juniper EX3400 ,基础设施足够可靠就基本不会有什么问题
    liyvhg
        45
    liyvhg  
       2022-06-07 21:23:49 +08:00
    OP 重新定义了"小型家用网络"🙊
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5612 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 06:36 · PVG 14:36 · LAX 22:36 · JFK 01:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.