拉取镜像

docker pull piaoyizy/openwrt-aarch64:latest
打开网卡混杂模式

sudo ip link set eth0 promisc on
创建网络

docker network create -d macvlan --subnet=10.10.10.0/24 --gateway=10.10.10.1 -o parent=eth0 macnet
IP改成自己的IP段

运行容器

docker run -d --name=OpenWrt --restart always --privileged --network macnet --ip 10.10.10.30 piaoyizy/openwrt-aarch64:latest
6、进入容器内部环境

docker exec -it openwrt bash

7、根据自己实际情况修改网络配置,修改完成后保存配置

vi /etc/config/network

8、退出容器内部环境,在宿主机环境执行重启容器命令

docker container restart openwrt

需要这样修改:

config interface 'lan' option type 'bridge' option ifname 'eth0' option proto 'static' option ipaddr '192.168.2.100' option netmask '255.255.255.0' option ip6assign '60' option gateway '192.168.2.1' option broadcast '192.168.2.255' option dns '192.168.2.1' option ipaddr 项目定义了 OpenWrt 的 IP 地址,在完成网段设置后,IP最后一段可根据自己的爱好修改(前提是符合规则且不和现有已分配 IP 冲突)。

6.重启网络 /etc/init.d/network restart 7.进入控制面板 在浏览器中输入第 5 步option ipaddr 项目中的 IP 进入 Luci 控制面板,若option ipaddr 的参数为 192.168.123.100,则可以在浏览器输入 http://192.168.123.100进入控制面板。⁠

用户名:root

密码:password

8.关闭 DHCP 服务 在 “网络 - 接口 - Lan - 修改” 界面中,勾选下方的 “忽略此接口(不在此接口提供 DHCP 服务)”,并“保存&应用”。

关闭 “DHCP 服务”

9.主路由 DHCP 设置 进入路由器后台中,将主路由的 DHCP 的默认网关和 DNS 服务器设置为第 5 步中option ipaddr 项目中的 IP。

主路由 DHCP 设置

10.重新连接路由器 完成以上操作后,断开设备(如手机,电脑)与路由器的连接,重新连接路由器,连接路由器的设备将获取到我们设置到的 IP。

其他修复 1.关闭 WLAN 硬件加速 设置旁路路由后,若出现访问国内网站网速慢,不稳定的情况(多见于 Pandavan 及其改版固件,如华硕老毛子固件),请在路由器的控制面板中关闭有关 WLAN 的硬件加速,比如选择“Offload TCP/UDP for LAN”(若未出现此现象请忽略):

关闭 WLAN 硬件加速

2.宿主机网络修复 OpenWrt 容器运行后,宿主机内可能无法正常连接外部网络,需要修改宿主机的 /etc/network/interfaces 文件以修复:

(须结合实际网络情况,不能照抄配置)

cp /etc/network/interfaces /etc/network/interfaces.bak # 备份文件 vim /etc/network/interfaces # 使用 vim 编辑文件 以“树莓派爱好者基地”64 位 Debian 为例,向文件末尾添加:

auto eth0 iface eth0 inet manual

auto macvlan iface macvlan inet static address 192.168.123.200 netmask 255.255.255.0 gateway 192.168.123.1 dns-nameservers 192.168.123.1 pre-up ip link add macvlan link eth0 type macvlan mode bridge post-down ip link del macvlan link eth0 type macvlan mode bridge 其中,所有的 192.168.123.x都需要按照树莓派所处网段更改,gateway和dns-nameservers填写路由器的 IP,若树莓派获得的 IP 为 192.168.2.154,路由器 IP 为192.168.2.1,则需要这样修改:

auto eth0 iface eth0 inet manual

auto macvlan iface macvlan inet static address 192.168.2.200 netmask 255.255.255.0 gateway 192.168.2.1 dns-nameservers 192.168.2.1 pre-up ip link add macvlan link eth0 type macvlan mode bridge post-down ip link del macvlan link eth0 type macvlan mode bridge 修改后重启树莓派,之后树莓派的局域网 IP 地址将会固定为/etc/network/interfaces文件中address参数中的地址。

3.手动指定网关 如果路由器固件不支持自定义 DHCP 服务的网关及 DNS 地址(常见于路由器