Docker 安装 openwrt 软路由

一直想玩软路由来着,由于暂时没有硬件可以刷 openwrt,所以想着 docker 搭建一个来玩玩。

安装

1 运行 ifconfig 命令查看网卡信息,例如 网络接口逻辑名称是 enp3s0

开启此网卡混杂模式。

混杂模式就是接收所有经过网卡的数据包,包括不是发给本机的包。默认情况下网卡只把发给本机的包(包括广播包)传递给上层程序,其它的包一律丢弃。简单的讲,混杂模式就是指网卡能接受所有通过它的数据流,不管是什么格式,什么地址的。当网卡处于这种”混杂”方式时,该网卡具备”广播地址”,它对所有遇到的每一个数据帧都 产生一个硬件中断以便提醒操作系统处理流经该物理媒体上的每一个报文包。

ip link set enp3s0 promisc on

2 配置MACVLAN

docker network create -d macvlan --subnet=192.168.0.0/24 --gateway=192.168.0.1 -o parent=enp3s0 macnet

注: 192.168.0.0/24192.168.0.1 自行调整。

3 查看docker网络

docker network ls

可以看见 macnet 网络。

4 创建网络配置文件

mkdir -p /home/docker/openwrt
vim /home/docker/openwrt/network

network 配置文件如下:

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option packet_steering '1'

config interface 'lan'
        option type 'bridge'
        option ifname 'eth0'
        option proto 'static'
        option netmask '255.255.255.0'
        option ip6assign '60'
        option ipaddr '192.168.0.3'
        option gateway '192.168.0.1'
        option dns '192.168.0.1'

config interface 'vpn0'
        option ifname 'tun0'
        option proto 'none'

修改 ipaddr,gateway,dns 为需要的地址。

5 拉取镜像并初始化

docker run --restart always --name openwrt -d --network macnet --privileged --ip 192.168.0.3  -v /home/docker/openwrt/network:/etc/config/network nonnichen/nonniwrt /sbin/init

注: 替换 192.168.0.3 为 openwrt 的 IP。

如果提示 WARNING: IPv4 forwarding is disabled. Networking will not work,需要进行开启 ipv4 转发。

vim /etc/sysctl.conf 
#添加 net.ipv4.ip_forward = 1
sysctl -p /etc/sysctl.conf

浏览器登录已经配置的 IP 并完成配置,账号密码 root/password。

效果

AD: 【腾讯云服务器大降价】 2核4G 222元/3年 1核2G 38元/年
网站:阿蛮君博客
标题:Docker 安装 openwrt 软路由
链接:https://www.amjun.com/543.html
本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行核实删除。
转载本站文章需要遵守:商业转载请联系站长,非商业转载请注明出处!!
THE END
分享
二维码
打赏
海报
Docker 安装 openwrt 软路由
一直想玩软路由来着,由于暂时没有硬件可以刷 openwrt,所以想着 docker 搭建一个来玩玩。 安装 1 运行 ifconfig 命令查看网卡信息,例如 网络接口逻辑名称是 ……
<<上一篇
下一篇>>