openwrt旁路由网络拓扑示意图.png

安装openwrt

  • 找到网卡

    1
    ifconfig
  • 打开网卡混杂模式

    eno1是所选网卡,因为我们需要让旁路由作为网关使用,就需要打开网卡的混杂模式,让它能接收到所有经过它的数据,而不论其目的地址是否是它

    1
    2
    3
    4
    5
    6
    ip link set eno1 promisc on
    ```
    - 创建docker局域网络
    > 说明:`macvlan`是我们创建的网络名 ,`gateway`设置为主路由ip,也就是网关地址
    ```shell
    docker network create -d macvlan --subnet 192.168.0.0/24 --gateway=192.168.0.1 -o parent=eno1 macnet
  • 查看docker局域网络

    1
    docker network ls

    这是我们刚创建的网络macvlan

  • pull openwrt x86架构的镜像

    1
    docker pull hou6807628/openwrt:x86_generic
  • 创建镜像启动

    --restart always 设置为docker自动重启

    1
    docker run  --restart always --name openwrt -d --network macnet --privileged hou6807628/openwrt:x86_generic /sbin/init
  • 进入容器

    1
    docker exec -it openwrt bash
  • 打开/etc/config/network

  • 修改IP地址

    设置一个旁路由工作的ip,这个ip会作为整个局域网的网关使用

  • 保存退出并重启网络

    1
    /etc/init.d/network restart
  • 退出容器

    1
    exit

访问openwrt

默认账号密码:root / password

配置openwrt

我们使用旁路由的目的是利用其更好的硬件设备提高网络质量,并且将它将作为我们整个网络的网关的话,可以使用到openwrt中各种优秀的插件

  • 网络配置

    【网络】 -> 【接口】




配置主路由

将主路由的网关设置为旁路由的ip
我使用的主路由是TL-WDR5660型号的路由器,配置很简单,参考我的配置,针对自己路由器找到对应的配置项配置就行了

尾巴

在这我们可以监控整个网络使用情况,当然作为旁路由它的主要目标可不是为了看系统数据报表,而是为了一揽子的实用插件

这个镜像为我们提供了以下插件:


我们先大概了解几个

  • ShadowSocksR Plus+

    这个软件有多么强大懂的都懂,当它被放置到网关的时候是不是就意味着整个局域网设备都具备了科学上网的能力了?并且支持 SS/SSR/V2RAY/TROJAN/NAIVEPROXY/SOCKS5/TUN 等协议,以及自动订阅并切换节点,非常省心

  • 广告屏蔽大师 Plus+

    广告屏蔽大师 Plus + 可以全面过滤各种横幅、弹窗、视频广告,同时阻止跟踪、隐私窃取及各种恶意网站

  • ServerChan

    是一款从服务器推送报警信息和日志到微信的工具。 开源地址:https://github.com/tty228/luci-app-serverchan

  • Apple AirPlay

    Apple AirPlay 2 是一个强大易用的无损音频服务器( iOS/MacOSX 原生支持)