付费解决 centos7 vlan 相关问题。

2021-07-26 01:10:22 +08:00
 aijialefu

环境:centos7 经过 1 根网线接交换机 3 口( trunk ),交换机 1 口( vlanid=101 )接路由器,2 口(vlanid=102)接光猫。交换机配置没问题,1 口 2 口做了 access,3 口做了 trunk (已经接 Windows10 机器做过测试,交换机配置没有问题) 需求:centos7 通过 vlan 能获取 1 口路由器连接外网,2 口经过 pppoe 链接外网。最终目的是打算聚合负载均衡这 2 条网络 目前做了很多操作,系统都重装 10 次不止了,没辙了。。。 做过以下测试: macvlan 设置虚拟网卡 enp0s25.101 ,enp0s25.102,然后 enp0s25.101 用 dhclient 获取 ip,enp0s25.102 用 rp-pppoe 包的 pppoe-setup 设置拨号。8021q 正常开启

结果就是网卡一直启动不起来。 绿色软件:aijialefu,个人折腾 费用不会太高,确实折腾的没脾气。。。

1632 次点击
所在节点    程序员
16 条回复
felixcode
2021-07-26 02:08:40 +08:00
pppoe 应该是链路层的协议,没法通过 trunk 口到达 2 口再到光猫。
最好是路由器上 2 口做拨号,或者电脑上用双网卡。
felixcode
2021-07-26 02:10:41 +08:00
@felixcode
”最好是路由器上 2 口做拨号“
说错了,交换机 2 口做拨号,或连一个路由器拨号。
billlee
2021-07-26 02:43:34 +08:00
搞错了吧,macvlan 和 vlan 不是一回事。你先试试在只有 enp0s25 的状态下, 手工配置 vlan 和 ip 路由,看看能不能走通

ip link add link enp0s25 name enp0s25.101 type vlan id 101
ip addr add enp0s25.101 x.x.x.x/x
ip route add default via x.x.x.x
aijialefu
2021-07-26 07:10:27 +08:00
@billlee 因为设备就一个网口,所以用 macvlan 相当于虚拟出来 2 张网卡,一张经过交换机接路由通过 dhcp 获取 ip,一张经过交换机接光猫做 pppoe 。交换机 1 、2 口的 vlanid 分别是 101 、102,交换机 3 口 trunk 会识别 1 、2 口 tag,我自己也是乱的... 你上面的意思看懂了,你这也是对的,你不用 macvlan 虚拟出来 2 站网卡,直接用物理网卡带着 tag101 过去也是可行的,我马上试试!---- 之前也用过这个思路搞过,没通...可能是我代码不对
aijialefu
2021-07-26 07:12:00 +08:00
@felixcode 可以的,我 Windows 就用的这套方案,可以完美跑起来。trunk 只是识别带着 tag 标签的 1 、2 号口,相当于做好分流,形成 2 条通路
aijialefu
2021-07-26 07:42:31 +08:00
@billlee ip link add link enp0s25 name enp0s25.101 type vlan id 101
ip link set enp0s25.101 up
ip addr add 192.168.8.222/24 dev eth0

ip route add default via 192.168.8.222
还是不行,ping 网关 192.168.8.1 不通
aijialefu
2021-07-26 07:48:28 +08:00
开启 8021q 模块,直接用 dhclient 给 enp0s25.101 自动获取 ip 也没成功。
aijialefu
2021-07-26 08:09:01 +08:00
modprobe -a 8021q
ip link add link enp0s25 name enp0s25.101 type vlan id 101
ip link set enp0s25.101 up
ip addr add 192.168.8.222/24 dev enp0s25
ip route add default via 192.168.8.222
aijialefu
2021-07-26 08:09:43 +08:00
modprobe -a 8021q
ip link add link enp0s25 name enp0s25.101 type vlan id 101
ip link set enp0s25.101 up
ip addr add 192.168.8.222/24 dev enp0s25
ip route add default via 192.168.8.222

@billlee
还是不通
jingslunt
2021-07-26 09:33:54 +08:00
overlay 需要结合服务注册发现服务,比如 consul
ipvlan 需要较新的内核支持
macvlan 也有四种网络模式
https://mp.weixin.qq.com/s?__biz=MzI1OTY2MzMxOQ==&mid=2247485246&idx=1&sn=c42a3618c357ebf5f6b7b7ce78ae568f
defunct9
2021-07-26 09:50:38 +08:00
这个想法没毛病,好弄。做法么我建议 CentOS 做桥接,再子接口走 vlan tag, 两个网关,需要做策略路由。类似的东西搞过,似乎没问题的。
defunct9
2021-07-26 09:52:21 +08:00
@jingslunt 答非所问
realpg
2021-07-26 11:55:51 +08:00
明码标价看看值不值当
defunct9
2021-07-26 15:30:15 +08:00
已解决。
defunct9
2021-07-26 15:48:30 +08:00
@realpg 很好奇,开多少你会答应接这一单活?
aijialefu
2021-07-26 20:07:04 +08:00
@defunct9 感谢兄弟定理帮忙,折腾了好些天。

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

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

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

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

© 2021 V2EX