请假下大家,如何在 pve 中利用 openwrt 接管所有虚拟机的 ip 分配

164 天前
 njzy
我局域网下已经有一个 dhcp 服务了 子网掩码为 255.255.0.0 分配地址段为 192.168.1.1-192.168.1.254

pve vmbr0 的 ip 为 192.168.2.1 能做到开一台 openwrt 虚拟机接管所有虚拟机的 ip 分配吗 让它们分配到 192.168.2.*,同时不会跟我局域网中的 dhcp 发生冲突且可以互相访问
2030 次点击
所在节点    NAS
13 条回复
var1122
164 天前
openwrt 把挂上的虚拟网卡设置为 lan 口,然后其它虚拟机都挂这个虚拟网卡,然后就可以让 openwrt 分配 IP 了;
好久没这么干了,之前这么做过
var1122
164 天前
草,好像你想访问局域网的设备有点问题;;; G 了,这个我没实际落地过
njzy
164 天前
@var1122 wan 口为 vmbr0 新建一个 vmbr1 作为 lan 口,然后其他虚拟机把网络桥接端口改为 vmbr1?
totoro625
164 天前
@njzy 互相访问有点麻烦
openwrt 下的虚拟机 192.168.2.* 能访问上级 192.168.1.*
上级 192.168.1.* 访问下级 192.168.2.* 挺麻烦的,我是直接在 openwrt 上建立端口转发,顺手安装 Tailscale 组网
uion
164 天前
https://github.com/xYx-c/build-openwrt
可以参考我这个,pve 启动负责拨号的 openwrt 还未启动,做个延迟定时任务主动获取 dhcp 服务的分配的 ip
var1122
164 天前
@njzy 这个方法就是 openwrt 做子路由了;同级路由下只能由一个 DHCP ,俩个就会冲突;可以试试配置 openwrt 做 NAT 转发,然后主路由挂 192.168.2.1/24 的静态路由。
afirefish
164 天前
有多网口的话。比如说 A,B,C 三个网口。C 网口为 pve 的 vmbr0 。
pve 创建虚拟机 openwrt ,直通网卡 A,B 。
A 为 WAN ,接网关为 192.168.1.x 的路由器。openwrt 网关为 192.168.2.1 。
B 为 LAN ,C 网口接 B 网口。
然后关闭 openwrt 的 wan 防火墙,上级路由器配置静态路由。

缺点就是白白浪费两个网口。
totoro625
164 天前
@afirefish #7 这样能实现什么,让 PVE 的 IP 变成 192.168.2.* 吗?,似乎没有任何作用,并不能使 192.168.1.* 访问下级 192.168.2.*
totoro625
164 天前
@afirefish #7 弄错了,上级路由器配置静态路由后就能访问下级了

感觉单网口就能实现,创建一个虚拟网卡 vmbr1
pve 创建虚拟机 openwrt ,添加 vmbr0 作为 wan ,vmbr1 作为 lan
在 PVE 网络管理界面删除 vmbr0 的 CIDR 及网关内容,在 vmbr1 添加 openwrt 的 CIDR 及网关内容,应用即可。
njzy
163 天前
@totoro625 尝试了,我的主路由是 routeros ,加上静态路由后感觉并没有生效,访问不了二级路由,二级路由倒是可以访问一级
njzy
162 天前
@totoro625 搞定了,就是加静态路由和 nat ip 伪装规则,详细的拓扑图可见我上面更新的内容
xiaoxiang69460
162 天前
感觉 PVE 里的 2 个 Openwrt VM 可以合并为一个。VM 的 Openwrt 可以防火墙配置为无 NAT ,配合上级 RouterOS 设置静态路由达到 2 个网段互访,且内网没有 NAT ,仅需要配置 RouterOS NAT 192.168.0.0/16 到外网即可(因为没用过 RouterOS ,不太清楚是否需要额外设置,Openwrt 我目前在用,是不需要的)。
njzy
162 天前
@xiaoxiang69460 分两个原因我是希望 nas 虚拟机还有 emby 服务可以正常网络发现,不然都是 10.0.0.0/24 网段里,打开 infuse app 应该不会自动搜到这两个服务

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/995429

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX