服务器使用docker运行openwrt

该博客介绍了如何在服务器上使用Docker运行OpenWrt,并配置开放混杂模式和MACVLAN网络。首先,通过iplink命令开启ens33和ens34接口的混杂模式。接着,创建两个MACVLAN网络,分别对应不同的子网和网关。然后,导入OpenWrt镜像并启动容器,将容器连接到这两个网络。最后,进入容器内修改网络配置,包括lan和wan接口的静态和动态IP设置,并重启网络服务。
摘要由CSDN通过智能技术生成

编译openwrt配置

需要选择tar.gz

打开混杂模式

ip link set ens33 promisc on
ip link set ens34 promisc on

配置macvlan网络

这里的网段和网关需要根据openwrt的配置

docker network create -d macvlan --subnet=172.16.60.0/24 --gateway=172.16.60.1 -o parent=ens33 -o macvlan_mode=bridge openwrt-LAN

根据物理网络进行配置

docker network create -d macvlan --subnet=192.168.0.0/24 --gateway=192.168.0.254 -o parent=ens34 -o macvlan_mode=bridge openwrt-WAN

加载容器镜像

docker import openwrt-x86-64-generic-rootfs.tar.gz lean_openwrt

启动容器

链接第二个网卡

docker run -it -d --restart always --network openwrt-LAN --privileged --name openwrt lean_openwrt /sbin/init
docker network connect openwrt-WAN openwrt

进入容器修改网卡配置

docker exec -it openwrt /bin/bash
vi /etc/config/network
config interface 'lan'
    option type 'bridge'
    option ifname 'eth0'  
    option proto 'static'
    option ipaddr '172.16.60.1'
    option netmask '255.255.255.0'
    option ip6assign '64'

config interface 'wan'
        option ifname 'eth1'  
        option proto 'dhcp'
        option ip6assign '64'
/etc/init.d/network restart

参考文章

https://openwrt.club/93.html

要在Docker运行OpenWrt,你可以按照以下步骤进行操作: 1. 创建一个虚拟网络,可以使用以下命令创建一个名为macnet的虚拟网络: ``` docker network create -d macvlan --subnet=192.168.123.0/24 --gateway=192.168.123.1 -o parent=eth0 macnet ``` 注意:根据你家里的IP地址,你可能需要调整子网信息。 2. 准备OpenWrt镜像,并生成并启动相应配置好的容器使用以下命令: ``` docker run --restart always -d --network macnet --privileged 相应镜像名 --name opwrt ``` 其中,--network后面是上面创建的网络名称,--privileged后面是你安装的OpenWrt镜像名称,--name后面是你自定义的容器名称(这里以opwrt为例)。 3. 如果你想将容器的80端口映射到宿主机的85端口,可以使用以下命令: ``` docker run -d -p 85:80 相应镜像名 ``` 这样,通过浏览器访问宿主机的IP地址加上端口85,就可以访问OpenWrt的web页面了。 4. 如果你需要进入容器内部,可以使用以下命令: ``` docker exec -it \[实例ID前四位\] /bin/sh ``` 这将进入容器的shell环境,你可以在其中执行命令和操作容器。 希望这些步骤能帮助你成功在Docker运行OpenWrt。 #### 引用[.reference_title] - *1* *2* [在docker使用opwrt](https://blog.csdn.net/sinat_41804364/article/details/106921147)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Linux下使用Docker运行OpenWrt系统](https://blog.csdn.net/weixin_46394311/article/details/117735291)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值