一、开启网卡混杂模式
先查看本地网卡情况
ip addr
ifconfig
选择LAN口网卡,开启混杂模式
ip link set <网卡名> promisc on
二、创建macvlan网络
macvlan相当于创建一块有MAC地址的网卡给docker使用
docker network create -d macvlan --subnet=[子网范围] --ip-range=[容器范围] --gateway=[网关] -o parent=[网卡] [macvlan名称]
docker network create -d macvlan --subnet=192.168.1.0/24 --ip-range=192.168.1.128/25 --gateway=192.168.1.1 -o parent=end0 docker_mac_vlan
三、使用下载好的镜像启动
根据自己的系统下载对应的docker镜像,然后使用下面的命令启动。
docker run --restart always --name openwrt -d --network [macvlan名称] --privileged [openwrt镜像名称] /sbin/init
docker run --restart always --name istoreos -d --network docker_mac_vlan --privileged kowming/istoreos-openwrt-n1-aarch64 /sbin/init
四、容器启动后使用docker进入容器
docker exec -it [容器名] /bin/sh
五、修改容器内部IP(LAN地址)
修改网络配置
vi /etc/config/network
填写正确的IP地址
config interface 'lan'
option device 'br-lan'
option proto 'static'
option ipaddr '192.168.1.[可用]'
option gateway '192.168.1.1' --主路由网关
option dns '192.168.1.1'
option netmask '255.255.255.0'
option ip6assign '60'
之后可以重启网络服务
/etc/init.d/network restart
六、配置旁路由
浏览器直接输入刚才配置的镜像IP,默认密码password登录管理端配置即可