当前位置: 首页 > news >正文

Docker部署OpenWrt实现旁路由上网的详细步骤以及排雷点

一、起因

        前两年玩AIO和黑群的时候,折腾Docker部署OpenWrt做旁路由,从来没有成功过,后来通过用虚拟机安装实现了旁路由的功能,所以也就没在细查问题。包括家里的白群上,也是用虚拟机安装了OpenWrt而不是用Docker。

        前两天心血来潮,玩了下飞牛nas的系统,测试Docker的时候,突然想起了几年前绕过去的这个坑,决定再尝试尝试,一番折腾之后成功了,于是写下来做个备忘。

二、过程

1、准备固件,docker版本的一般是xxx.tar.gz文件,假设叫wrt.tar.gz吧。

2、开启设备网卡混杂模式,ssh里输入命令:

ip link set eth0 promisc on

这里是第一个坑,eth0一般是linux下第一个网卡的名字,我用vm装的飞牛,敲了这个命令,结果提示eth0不存在!见鬼了的,明明是可以上网的?ifconfig查看了下,飞牛里这块网卡的名字是ens33。。。行吧,于是命令变成

ip link set ens33 promisc on

OK,搞定。接下来设置网络

3、创建一个名为openwrt的macvlan

docker network create -d macvlan --subnet=192.168.0.0/24 --gateway=192.168.0.254 -o parent=ens33 openwrt

这一步,是整个安装过程中最大的坑,回想下,当年没有搞定,就是这里出了问题,网上搜教程搜攻略,大多数是复制粘贴的一句:

docker network create -d macvlan –subnet=10.0.0.0/24 –gateway=10.0.0.1 -o parent=eth0 openwrt

先不说这一句命令错误百出,里边的子网、网关值也鲜有解释说明,照抄的话,基本上抄一个死一个。首先subnet的值,必须是现实中网络环境所处网段,大多数家庭用户通过路由器自动获取ip上网的话,ipv4地址一般都是192.168.0.x,网关是192.168.0.1,那么这里的subnet值就要写成“192.168.0.0/24”,gateway值为“192.168.0.1”。我这里网段是192.168.0.0,但是网关是254。其次,parent=eth0这里,也要按照实际情况修改,比如我这里的网卡就不是eth0而是ens33

4、加载镜像,创建并启动容器

docker import wrt.tar.gz myopenwrtdocker run --restart=always --name=openwrt -d --network=openwrt --privileged myopenwrt /sbin/init

5、进入openwrt容器的bash

docker exec -it openwrt sh

6、修改OpenWrt的管理ip地址

nano /etc/config/network

找到interface为“lan”的代码段,找到option ipaddr ,修改后边引号里的ip地址为你需要的值,例如'192.168.0.188',然后保存退出。

7、重启OpenWrt网络

 /etc/init.d/network restart

8、浏览器里输入刚才设置的ip地址,用默认用户名密码登录后根据自己的情况进行设置,然后将其他上网设备的网关改为OpenWrt的ip地址,OK,完成。

三、结束

本次部署一次成功,也解决了之前的问题,把回想起来的两个坑做个说明备忘,也希望能帮到有缘人。


文章转载自:

http://4CutGmmt.jydhL.cn
http://R7VsoRCo.jydhL.cn
http://03SO0cXq.jydhL.cn
http://Igt9O2Cm.jydhL.cn
http://884C3tSz.jydhL.cn
http://8Uhm83X8.jydhL.cn
http://wxVbPShZ.jydhL.cn
http://1jyhY74F.jydhL.cn
http://09exWwup.jydhL.cn
http://n52SwQAy.jydhL.cn
http://6bsdQO5E.jydhL.cn
http://ZFjjppMj.jydhL.cn
http://OsICFB0Z.jydhL.cn
http://nD4BuTAR.jydhL.cn
http://jTAzrkrY.jydhL.cn
http://Z0d3ehq5.jydhL.cn
http://pCDLtaWD.jydhL.cn
http://EOKeWP5C.jydhL.cn
http://FZLKf2g9.jydhL.cn
http://vH2TFkya.jydhL.cn
http://pxeU73KL.jydhL.cn
http://3jEo1g3f.jydhL.cn
http://I5S7m1k2.jydhL.cn
http://sCutamtJ.jydhL.cn
http://eCxxoV3B.jydhL.cn
http://E4wSI7hg.jydhL.cn
http://0wZgF4fW.jydhL.cn
http://CAH54jqh.jydhL.cn
http://KaUIkZnK.jydhL.cn
http://5KlIRHWR.jydhL.cn
http://www.dtcms.com/a/377248.html

相关文章:

  • 第6篇、Kafka 高级实战:生产者路由与消费者管理
  • GNOME桌面环境完整快捷键指南:提升Linux工作效率
  • 【竞赛系列】机器学习实操项目06——客户信用评估模型进阶流程(特征重要性分析与稳定性监控)
  • 网络编程从入门到面试:核心知识点与实战指南
  • 数电实验计划
  • A/B测试全解析:原理、流程与实战案例
  • 接口测试自学指南
  • Adobe Acrobat SDK 开发:JavaScript 插件与跨平台集成
  • Tekton - 自定义镜像配置git仓库克隆
  • Java中的常用数学工具类和方法
  • Linux 多网卡绑定bond
  • 私有化部署Ragflow的预训练模型
  • 大模型和传统机器学习的核心区别是什么?
  • 3.1.Maven-课程介绍
  • 为什么现在企业注重数据可视化?一文讲清可视化数据图表怎么做
  • 【Vue3】04-编写vue实现一个简单效果
  • 网剧《陆小凤》再现武侠经典
  • 水题记录1.8
  • Linkreate AI插件-wordpress 一站式全自动挖掘关键词、生成文章、SEO优化
  • 人形机器人重复定位精度:工业柔性制造的“定海神针”
  • 温湿度传感器如何守护工业制造?
  • 生产制造过程精益化
  • 创业公司深度分析 Veritus Agent :AI 驱动的金融催收变革者
  • 储能电池组的制造流程:从电芯到系统组装
  • 告别“盲操作”!Uskin阵列式三轴力触觉传感器:触觉型灵巧手提升科研精度,触觉型夹爪保障产线效率,多场景痛点一次解决
  • Vite 环境变量与运行时配置最佳实践:从 .env 到 一份包 跑多环境,以及开发环境代理、请求配置等
  • 【大前端】前端生成二维码
  • 重学前端014 --- 响应式网页设计 CSS动画
  • YOLO 模型从 PyTorch 转换为 ONNX 并优化
  • Vue:条件渲染 (Conditional Rendering)