macvlan解决vlan路由冲突

172.28.225.0/24 dev eth0.2 proto kernel scope link src 172.28.225.10

172.28.225.0/24 dev eth1.13 proto kernel scope link src 172.28.225.13

这两个vlan路由冲突了,用下面的方法解决。。

复制代码
#!/bin/bash
# 使用macvlan解决路由冲突

# 0. 清理旧配置
ip link del eth0.2 2>/dev/null
ip link del macvlan1 2>/dev/null
ip link del macvlan2 2>/dev/null

# 1. 创建VLAN接口
echo "1. 创建VLAN接口 eth0.2..."
ip link add link eth0 name eth0.2 type vlan id 2
ip link set eth0.2 up

# 2. 在VLAN接口上创建两个macvlan
echo "2. 创建macvlan接口..."

# macvlan1: 172.28.225.10
ip link add link eth0.2 name macvlan1 type macvlan mode bridge
ip link set macvlan1 address 00:11:22:33:44:55  
ip addr add 172.28.225.10/24 dev macvlan1
ip link set macvlan1 up

# macvlan2: 172.28.225.13  
ip link add link eth0.2 name macvlan2 type macvlan mode bridge
ip link set macvlan2 address 00:11:22:33:44:66 
ip addr add 172.28.225.13/24 dev macvlan1
ip link set macvlan2 up

# 3. 禁用eth0.2的IP(避免路由冲突)
echo "3. 清理VLAN接口IP..."
ip addr flush dev eth0.2

# 4. 查看路由表
echo "4. 查看路由表..."
ip route show | grep "172.28.225.0/24"

# 5. 验证配置
echo ""
echo "=== 配置完成 ==="
echo "接口列表:"
ip link show | grep -E "(eth0.2|macvlan)"
echo ""
echo "IP地址配置:"
ip addr show | grep -A2 -E "(eth0.2|macvlan)"


iptables -A FORWARD -i macvlan1 -d 255.255.255.255 -j DROP
相关推荐
东风破_1 天前
Docker 基础:为什么需要容器?
前端·后端·nginx
东风破_1 天前
Docker 实战:使用 Nginx 作为容器入口代理 Node 服务
前端·后端·nginx
你别说话了1 天前
Vue项目解决跨域
前端·javascript·vue.js
唐青枫1 天前
http-server:别再双击 index.html,一条命令把目录变成网站
前端·javascript
网安蟹佬霸1 天前
OSINT开源情报收集实战:从信息搜集到资产测绘(2026最新万字保姆级指南)
前端·网络·安全·web安全·网络安全·开源
a1117761 天前
3D历史建筑展览馆 THreeJS 开源
前端·开源
单线程_011 天前
【源码阅读】Vue3 Tokenizer 词法分析器完整状态机流转深度梳理(3.4+ 新版架构)
前端
PBitW1 天前
PM 丢来 3 个 Excel、12 个功能、4 种情形?用 TRAE Work 30 分钟整理成前端开发文档
前端·trae
风骏时光牛马1 天前
AIAgent高可用架构:弹性容错与故障自愈的落地实践
前端
IT_陈寒1 天前
Vue的响应式什么时候会失灵?这个坑我踩了
前端·人工智能·后端