在 Docker 中安装 OpenWrt(macvlan 旁路由模式)详细教程
OpenWrt 是一款强大的嵌入式 Linux 路由器系统。通过 Docker,可以在 PC、服务器等环境下快速体验和测试 OpenWrt,尤其适合旁路由科学上网场景。以下为详细步骤:
一、创建 macvlan 网络
假设物理网卡为 eth0,可用如下命令创建 macvlan 网络(请根据实际网卡名调整):
1 2 3 4 5
| docker network create -d macvlan \ --subnet=192.168.1.0/24 \ --gateway=192.168.1.1 \ -o parent=eth0 \ macnet
|
二、设置网卡为混杂模式
1
| sudo ip link set eth0 promisc on
|
三、拉取并启动 OpenWrt Docker 镜像
1 2 3 4 5
| docker pull sulinggg/openwrt:x86_64
docker run -d --name openwrt --restart unless-stopped \ --network macnet \ --privileged sulinggg/openwrt:x86_64
|
镜像可选 sulinggg/openwrt:x86_64 或其他适合的 OpenWrt 镜像。
四、进入容器编辑 OpenWrt 网络配置
1 2
| docker exec -it openwrt /bin/bash vi /etc/config/network
|
- 按需修改 LAN 口 IP(如 192.168.1.2),保存后重启网络:
- 需要修改 IP DNS 和网关等配置
1
| /etc/init.d/network restart
|
五、浏览器访问 OpenWrt
六、关闭桥接接口(防止卡住)
- 进入“网络”-“接口”-“物理设置”,关闭“桥接接口”选项。
- 若页面卡住超过 1 分钟,可在容器中再次重启 OpenWrt:

1
| docker exec -it openwrt /etc/init.d/network restart
|
七、科学上网设备网关指向 OpenWrt
- 在需要科学上网的设备上,将网关设置为 OpenWrt 的 IP 地址即可。
以上内容仅供参考,请结合实际情况具体分析