找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 1118|回复: 14

【求助】单网口armbian+KVM虚拟机安装openwrt单线复用主路由

[复制链接]
悬赏20恩山币未解决
本帖最后由 395071712 于 2023-3-15 17:41 编辑

【设备】
光猫、小米ac2100(已刷openwrt)、单网口Armbian盒子

【拓扑结构】

光猫设置桥接

ac2100当做VLAN交换机使用  接口只有一个lan口,协议是静态地址,绑定设备br-lan.1  关闭DHCP。

网桥br-lan绑定的wan  lan1 lan2 lan3



Armbian盒子里面用KVM安装的openwrt

网卡采用桥接物理网口eth0

其中WAN口pppoe拨号绑定eth0.2  LAN口静态地址绑定eth0.1

【效果】
在这种情况下,接在ac2100的lan口上的设备能够正常上网,并且网关是KVM里的OP,也能正常获取IPv6。但是Armbian宿主机完全断网。

当把KVM里的op的lan口改为绑定eth0,并且ac2100的连接Armbian盒子的lan口的VLAN ID 1改为untagged

此时所有连接的设备能正常上网,但是只有KVM的op的lan口和Armbian宿主机有IPv6,其他设备没有分配IPv6地址

【目标】
所有连接的设备能正常上网,并且都能获取IPv6地址

【说明】
ac2100和KVM的op已确定都支持IPv6,光猫也已经打开IPv6

【楼主分析】
        当KVM里的op的lan口绑定eth0.1时,此时从lan口出来的数据是带有tag标签的,当它通过Armbian里的网桥流向Armbian宿主机的虚拟eth网口时,由于数据有tag标签,所以无法流入,导致Armbian宿主机断网,而这些有tag标签的数据通过网桥流出盒子时,经过ac2100时,这些数据被去标签并流入接到ac2100的设备,所以除Armbian宿主机外,接到ac2100的设备都能正常工作。
        当KVM里的OP的lan口绑定eth0时,此时从lan口出来的数据没有标签,所以当它通过Armbian里的网桥流向Armbian宿主机的虚拟eth网口时,数据可以正常流入,所以Armbian盒子正常,并且可以获取IPv6。当数据通过Armbian的网桥流出盒子时,通过ac2100交换机,数据也正常到连接ac2100的设备,但是连接ac2100的设备都没有被下发IPv6地址。

经过上面情况的分析我怀疑是ac2100的openwrt设置的有问题,因为当KVM的OP的lan口绑定eth0时,Armbian宿主机的网络不经过ac2100,它就可以正常获取IPv6地址。但是有一点我是理解不了,为什么当KVM的OP的lan口绑定eth0.1时,连接ac2100的设备就能获取IPv6??难道问题不是ac2100?


附件: 您需要 登录 才可以下载或查看,没有账号?立即注册
我的恩山、我的无线 The best wifi forum is right here.
换个思路,可以试试 docker,安装 docker 后先创建双栈 macvlan 再部署 openwrt

本地没有 ipv6 所以搭的测试环境只有 ipv4,跑了快三个月很稳定,理论上这个方法 ipv6 也可以

点评

想不明白问题出在哪  详情 回复 发表于 2023-3-15 17:28
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

谢谢楼主分享,只能openwrt行吗,老毛子行吗

点评

能划分VLAN的系统应该都可以  详情 回复 发表于 2023-3-15 17:28
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
axzy 发表于 2023-3-15 17:02
谢谢楼主分享,只能openwrt行吗,老毛子行吗

能划分VLAN的系统应该都可以
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
本帖最后由 395071712 于 2023-3-15 17:33 编辑
edywh 发表于 2023-3-15 16:16
换个思路,可以试试 docker,安装 docker 后先创建双栈 macvlan 再部署 openwrt

本地没有 ipv6 所以搭的测 ...

docker的网络我感觉我更不懂怎么配置了。双栈MacVLAN是不是就类似于创建了一个包含两条VLAN的交换机?

点评

字面上 macvlan 看起来很像是分配了独立 mac 地址的 vlan,实际效果也是给 container 分配单独的 mac 和 ip 地址,便于 lan 内的其他设备可以与之互访 和 KVM 实现的效果相似,虽然有共通点但毕竟原理不同,通常  详情 回复 发表于 2023-3-15 21:44
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

啥盒子跑的ARIBIAN
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
iamyangyi 发表于 2023-3-15 17:36
啥盒子跑的ARIBIAN

HK1 BOX

点评

HK1 为啥不直接刷OP  详情 回复 发表于 2023-3-15 20:37
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

拓扑没错,设置也没错,只有盒子上不了网是因为你用的是盒子的eth0
eth0肯定不行,它相当于trunk了,你得在盒子上新建一个eth0.1,用它来上网
eth0就只是物理上连接,上网你得走它的逻辑口,也就是eth0.1

点评

大佬 我对代码不是很懂。研究了半天也没能按你说的设置成功,能给个代码示例吗?跪求  详情 回复 发表于 2023-3-16 16:08
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报


HK1 为啥不直接刷OP

点评

因为OP的内核不完整 好多东西用不了  详情 回复 发表于 2023-3-16 16:09
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

395071712 发表于 2023-3-15 17:28
docker的网络我感觉我更不懂怎么配置了。双栈MacVLAN是不是就类似于创建了一个包含两条VLAN的交换机?


字面上 macvlan 看起来很像是分配了独立 mac 地址的 vlan,实际效果也是给 container 分配单独的 mac 和 ip 地址,便于 lan 内的其他设备可以与之互访
和 KVM 实现的效果相似,虽然有共通点但毕竟原理不同,通常 docker 更轻便,KVM 相对更重,特别是当宿主机硬件是 ARM 架构时
官网有个指引,可以配置 ipv4/v6 双栈:https://docs.docker.com/network/macvlan/

实操上,sulinggg 的 arm8/aarch64 镜像可以试试,他也写了很详细的教程
https://hub.docker.com/r/sulinggg/openwrt

不过由于测试环境没有 ipv6,所以用的是官方 snapshot 镜像
https://hub.docker.com/r/openwrtorg/rootfs


换 yacht 看,会更直观一点

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

感谢感谢,写的非常详细了!如果虚拟机搞不定,我就去尝试docker试试看  详情 回复 发表于 2023-3-16 16:11
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 来自手机 | 显示全部楼层
lovecrayfish 发表于 2023-3-15 19:53
拓扑没错,设置也没错,只有盒子上不了网是因为你用的是盒子的eth0
eth0肯定不行,它相当于trunk了,你得在 ...

大佬 我对代码不是很懂。研究了半天也没能按你说的设置成功,能给个代码示例吗?跪求

点评

编辑 /etc/network/interfaces(应该是这个文件) 在里面添加以下内容 auto eth0.1 iface eth0.1 inet dhcp 然后保存,重启网络,然后用 ip add 查看一下是不是能获取到IP地址了? 如果eth0.1不行的  详情 回复 发表于 2023-3-16 20:07
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 来自手机 | 显示全部楼层
iamyangyi 发表于 2023-3-15 20:37
HK1 为啥不直接刷OP

因为OP的内核不完整 好多东西用不了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 来自手机 | 显示全部楼层
edywh 发表于 2023-3-15 21:44
字面上 macvlan 看起来很像是分配了独立 mac 地址的 vlan,实际效果也是给 container 分配单独的 mac  ...

感谢感谢,写的非常详细了!如果虚拟机搞不定,我就去尝试docker试试看
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

395071712 发表于 2023-3-16 16:08
大佬 我对代码不是很懂。研究了半天也没能按你说的设置成功,能给个代码示例吗?跪求

编辑 /etc/network/interfaces(应该是这个文件)

在里面添加以下内容


auto eth0.1
iface eth0.1 inet dhcp


然后保存,重启网络,然后用 ip add 查看一下是不是能获取到IP地址了?
如果eth0.1不行的话,就换成br0.1再试试
直到 ip add 能查到获取了你的Lan网段IP就可以了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

没必要搞这么复杂,armbian跑个代理,ac2100转发就行。

参考
https://www.right.com.cn/forum/thread-2882648-1-1.html
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-29 05:58

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表