家庭小型组网

之前整上了10G家庭网络,然后出来个场景:每次折腾网络的时候,媳妇会抱怨网络中断;于是诞生了家庭组网​需求。

之前整上了10G家庭网络,然后出来个场景:每次折腾网络的时候,媳妇会抱怨网络中断;于是诞生了家庭组网​需求。

需求起源

书接上回,之前买了BPI-R4(1G x4 + 10G x2)和一个S25G2206F(2.5G x4 + 10G x2),使用起来十分满意。但是爱折腾的毛病导致经常需要重启路由器导致网络中断,从而引来媳妇的抱怨:刷淘宝都不流畅了。

需求分析

因为我折腾网络导致了媳妇断网,其中我主要是折腾路由器,很少折腾光猫,所以可以将我和媳妇的网络分开。
最开始的实施方案是路由器拨号+光猫拨号,我的设备接在路由器上,媳妇的设备接在光猫上。这样运行了一段时间后,媳妇说想看我帮她下载的视频,于是让媳妇把设备连到我这边的无线网络上,然后输入SMB IP;勉强能看了,但是媳妇嫌麻烦,并且要是忘记把网络切换回去,依然会存在我折腾路由器导致媳妇的设备断网的情况。
于是尝试组网。
一开始的方案是“路由器和光猫上设置静态路由+双网卡设备设置路由除基本
于是转而采用路由器之间的路由协议组网。路由协议组网相比较光猫组网有个好处:支持动态前缀的IPv6。

网络实现

                                      
 ┌────────────────────────────────┐ 
 │             Modem              │ 
 │ ┌────┐  ┌────┐  ┌────┐  ┌────┐ │ 
 │ │2.5G│  │iTV │  │1.0G│  │1.0G│ │ 
 │ ├────┤  ├────┤  ├────┤  ├────┤ │ 
 └─┴─┼──┴──┴────┴──┴────┴──┴────┴─┘ 
     │                              
     │               vlan 3    ┌──┐ 
     │       ┌─────────────────┤AP│ 
     │       │       vlan 4    └──┘ 
 vlan│2      │                      
 ┌─┬─┼──┬──┬─┼──┬──┬────┬──┬────┬─┐ 
 │ ├────┤  ├────┤  ├────┤  ├────┤ │ 
 │ │2.5G│  │2.5G│  │2.5G│  │2.5G│ │ 
 │ ├────┤  ├────┤  ├────┤  ├────┤ │ 
 ├─┼┼┼┼┼┼──┼┼┼┼┼┼──┼┼┼┼┼┼──┼┼┼┼┼┼─┤ 
 ├─────────┼┼┼┼┼┼──┼┼┼┼┼┼─────────┤ 
 │         ├────┤  ├────┤         │ 
 │  Switch │10G │  │10G │ Switch  │ 
 │         ├────┤  ├────┤         │ 
 └─────────┴───┼┴──┴┼───┴─────────┘ 
       100 vlan│    │vlan 100       
         2 vlan│    │vlan 2         
         3 vlan│    │vlan 4         
 ┌─────────┬───┼┐  ┌┼───┬─────────┐ 
 │         ├────┤  ├────┤         │ 
 │ BPI-R4  │10G │  │10G │  BPI-R4 │ 
 │ Router  ├────┤  ├────┤  Router │ 
 └─────────┴────┘  └────┴─────────┘ 
                                    

初级版拓扑图如上

首先把交换机的VLAN如上设置,然后在AC上设置AP的SSID和绑定的VLAN。
BPI-R4这路由器,支持HNAT,目前家用网络设备最高2.5G,所以单臂路由都够了。

  1. 在路由器上设置802.1Q VLAN接口,
  2. 分别绑定上自定义个固定MAC地址,
  3. 并将两台路由器的eth2.3和eth2.4设备分别加入到各自的br-lan当中,
  4. eth2.2设置为WAN口PPPoE协议,
  5. eth2.100设置为172.16.0.0/24网段的静态IP,接口名随意
  6. 设置路由器的hostname方便路由协议识别,不设置也可以,就是对人类不友善,
  7. 设置两台路由器的局域网IP网段和ULA,需要不同,
  8. 设置两台路由器的新的防火墙域rp(routing protocol的意思,名字随意),允许和lan之间的转发,
  9. 设置两台路由器的DNS配置,
    1. 设置为不同的域名,我分别设置为pf.lan和sh.lan
    2. 设置DNS转发,对方的域名解析转发到对方的网关上去
    3. 设置关闭重绑定保护、允许外部解析、绑定到泛端口等
  10. 两台路由器安装FRR套件和需要的路由协议(此处是FRR-ISIS),并启用路由协议,
  11. 配置路由协议。

配置路由协议

两台路由器上的配置一样,按需修改

vtysh #进入 frr shell
configure terminal # 进入配置模式

router isis pp #配置isis路由协议,进程名为pp,
is-type level-1 #设置isis路由类型为level-1
net 49.0001.1921.6801.5001.00 #设置区域ID为49.0001,系统ID为1921.6801.5001(每台设备不同),协议标识00
topology ipv6-unicast #设置IPv6拓扑为IPv6单播
exit

interface br-lan #配置br-lan网口
ip router isis pp #设置网口的IPv4路由协议为isis,进程为pp
ipv6 router isis pp #同理IPv6
isis circuit-type level-1 #链路允许的level-1通告
exit

interface eth2.100 #配置eth2.100网口,下面同上
ip router isis pp
ipv6 router isis pp
isis circuit-type level-1
end

write #保存配置

两台路由配置好后,可以在vtysh下使用show isis route查看isis的路由状态,其他状态可查看FRR的手册。