• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

基于ip划分vlan不通

4天前提问
  • 0关注
  • 0收藏,134浏览
粉丝:0人 关注:0人

问题描述:

拓扑如下,58上配置vlan1内配置172.16.10.11,68上配置172.16.10.10。在68上vlan10内配置基于ip划分vlan后。两者无法ping通,检查,58上存在172.16.10.10的arp表项,但是68上没有172.16.10.11的表项,抓包发现58有进行arp回复。具体配置如下:

58

68

抓包

arp表项

58

68

组网及组网描述:

 

 

 

最佳答案

已采纳
Xcheng 九段
粉丝:138人 关注:3人

模拟器问题,做不了这个实验。


要测试验证换真机才行

3 个回答
粉丝:0人 关注:0人

  68 的 GE1/0/3 接口禁止了 VLAN 1,导致 58 发出的 VLAN 1 帧无法进入 68,需要 允许 VLAN 1 通过 GE1/0/3(tagged 或 untagged),使 ARP 可达    

配置完vlan1 untag与tag后 也不通

zhiliao_84pqyd 发表时间:4天前 更多>>

配置完vlan1 untag与tag后 也不通

zhiliao_84pqyd 发表时间:4天前
粉丝:31人 关注:1人

您好,根据您的描述,58交换机在VLAN 1,68交换机在VLAN 10,虽然IP地址处于同一网段(172.16.10.x/24),但在交换机内部,不同VLAN是隔离的二层广播域,无法直接通信。

您观察到的现象(58有ARP表项,68没有,且58回复了ARP)恰恰印证了问题根因:

  • 68有58的ARP表项:因为68(VLAN 10)发送ARP请求,58(VLAN 1)收到了该请求,并将68的MAC/IP学习到了自己的ARP缓存中。

  • 68没有58的ARP表项:因为58回复的ARP报文(携带VLAN 1标签)到达68后,没有进入VLAN 10的三层接口,导致68的CPU未能处理该回复,从而无法学习ARP。



 核心根因:基于IP划分VLAN(IP-Subnet VLAN)的生效机制

您在68上配置的“基于IP划分VLAN”特性,在H3C Comware系统中仅对端口收到的Untagged(不带VLAN标签)报文生效。如果报文本身已经携带了VLAN Tag,交换机会直接根据Tag转发,不会触发IP子网VLAN的重映射

数据流回放

  1. 68(VLAN 10)ping 58 → 68发出ARP请求(从VLAN接口10发出,在链路上可能带Tag 10,也可能转为Untagged,取决于端口配置)。

  2. 58(VLAN 1)收到该请求,发现请求的是自己的IP,于是发送ARP回复。

  3. 关键点:58处于VLAN 1,其发出的ARP回复帧携带VLAN 1的Tag

  4. 该回复帧到达68的互联端口。由于该帧携带明确的VLAN 1 Tag,且端口允许VLAN 1通过,交换芯片将其直接桥接在VLAN 1内部

  5. 68的VLAN接口10无法收到该帧,因此CPU无法处理该ARP回复,ARP表项为空,Ping不通。



 解决方案(三选一)

方案一:统一VLAN(最推荐,配置最简单)

既然IP在同一网段且直连,应将两台交换机划入同一个VLAN

  • 将58的接口/VLAN改为VLAN 10,或

  • 将68的VLAN接口IP迁移到VLAN 1,并取消VLAN 10的IP-Subnet VLAN配置。

方案二:利用IP-Subnet VLAN特性(保留68的VLAN 10配置)

如果您必须保留68在VLAN 10且依赖IP划分VLAN,需确保58发出的报文到达68时是Untagged状态,以便触发IP子网VLAN的重映射。

将68连接58的互联端口配置为Hybrid模式,PVID设为VLAN 1(或一个临时VLAN),并配置IP子网VLAN规则。这样,58发出的携带VLAN 1 Tag的报文,到达68端口时会被剥离Tag变为Untagged,随后匹配IP子网规则,被重定向到VLAN 10,最终送达VLAN接口10。

参考配置(在68的互联端口上)

text
interface GigabitEthernet 0/0/1 // 假设连接58的端口 port link-type hybrid port hybrid vlan 1 untagged // 允许VLAN 1通过并剥除Tag port hybrid vlan 10 tagged // 允许VLAN 10带Tag通过(如果需要) port hybrid pvid vlan 1 // 设置PVID为1,使收到的Untagged帧属于VLAN 1 ip-subnet-vlan enable // 开启IP子网VLAN

注:需确保全局或VLAN下已配置 ip-subnet-vlan 10 ip 172.16.10.0 255.255.255.0,将源IP为172.16.10.x的Untagged报文映射到VLAN 10。

方案三:启用VLAN间路由(不推荐用于此场景)

如果因业务原因必须保留VLAN隔离,需在68或上层设备上配置VLAN间路由(如启用交换机虚拟接口并开启路由功能)。但同一网段做VLAN间路由会破坏子网设计,通常不建议。



 验证要点

修改配置后,请执行以下操作确认:

  1. 清除两台交换机的ARP缓存:reset arp all

  2. 重新发起Ping,并在68上使用 display arp 检查是否学习到58的MAC。

  3. 在68的互联端口抓包,确认58回复的ARP报文是否变为Untagged并匹配了IP子网VLAN规则。

粉丝:34人 关注:2人

# 故障分析:基于 IP 子网 VLAN (ip‑subnet‑vlan) 不通

>
> 现象总结:

- S58(下连交换机):VLAN1 地址`172.16.10.11`;能学到 S68 的`172.16.10.10`ARP 表项,可以收到 ARP 回复。
- S68(配置 ip‑subnet‑vlan 的交换机):Vlan‑if10 地址`172.16.10.10`;**收得到 ARP 应答报文,但是不生成 ARP 表项**,ping 不通。
- 互联链路:S68‑GE1/0/3 ↔ S58‑GE0/1,S68 侧接口配置`hybrid + ip‑subnet‑vlan vlan10`。

## 🔴根本原因

**`ip‑subnet‑vlan 只对入方向 untagged(不带标签)报文生效;带 tag 的报文不会匹配 ip‑subnet‑vlan 规则**H3C。

S58 交换机发出的 ARP 应答报文是**带 VLAN1 标签**进入 S68 的 GE1/0/3 接口。报文带 VID=1 标签,不会触发 ip‑subnet‑vlan 匹配;
S68 的 GE1/0/3 接口 PVID 默认 VLAN1,收到带 VLAN1 标签报文,报文进入 VLAN1 广播域。
而`172.16.10.10`网关是**Vlan‑interface10**(三层接口属于 VLAN10),ARP 应答报文跑到 VLAN1,不在 VLAN10 广播域,**交换机收到 ARP 应答,但该 ARP 应答不属于 Vlan‑if10 对应的 VLAN10,所以拒绝学习 ARP 表项**,display arp 看不到 172.16.10.11。

>
> 通俗理解:ARP 报文从 VLAN1 进来,三层网关在 VLAN10,广播域隔离,不生成 ARP 表项。S58 侧请求报文是 untagged,匹配 ip‑subnet‑vlan 进入 VLAN10,S58 能学习 ARP。

## 拓扑数据流拆解

1. S68 ping 172.16.10.11,源 Vlan‑if10 发出 ARP 请求,从 GE1/0/3 口,按照 hybrid untagged vlan10,**不带标签发出 ARP 请求**。
2. S58 收到 untagged 帧,接收进 VLAN1,回复 ARP 应答,**携带 VLAN1 标签**回传给 S68 GE1/0/3。
3. S68 GE1/0/3 收到带 VLAN1 标签帧,**ip‑subnet‑vlan 对带 tag 报文完全不处理**,报文直接送入 VLAN1。
4. Vlan‑interface10 的三层接口在 VLAN10,VLAN1 收到 ARP 应答,**不是本 VLAN 三层接口的网段,丢弃 ARP 学习,无 ARP 表项**。
5. S58 侧收到 S68 发出来 untagged 的 ARP 请求,匹配 ip‑subnet‑vlan,进入 VLAN10,S58 可以正常学习到 172.16.10.10 的 ARP 表项。

## ✅两种修复方案

### 方案 1:互联口改为 Trunk,透传 VLAN10(推荐,标准做法)

S68 侧互联接口 GE1/0/3:

```
interface GigabitEthernet1/0/3
undo port link‑mode bridge
port link‑type trunk
port trunk permit vlan 10
# 删除原来hybrid和ip‑subnet‑vlan相关配置
undo port hybrid vlan 10 20 30 untagged
undo port hybrid ip‑subnet‑vlan vlan 10
```

S58 侧互联接口配置为 trunk 允许 vlan10 通过,S58 把 172.16.10.11 放到 VLAN10。

>
> 注意:**ip‑subnet‑vlan 是用于终端接入端口,不是用于交换机之间互联!** 交换机之间互联不要用 ip‑subnet‑vlan。ip‑subnet‑vlan 设计场景:PC 终端接 hybrid 口,PC 发 untagged 报文,根据 IP 匹配划分到对应 VLAN。

### 方案 2:继续用 hybrid 互联(不推荐,仅测试验证)

S58 互联接口发送报文剥除 VLAN 标签,S58 互联口配置为 access vlan10,发出 untagged 报文给到 S68,此时 S68 收到 untagged 报文,ip‑subnet‑vlan 可以正常匹配,双向 ARP 学习正常。

>
> 缺点:S58 侧 VLAN1 地址 172.16.10.11 不能再使用,只能 VLAN10 地址。**同网段 IP 不能分布在两端设备不同 VLAN,这是这个组网的核心矛盾**。

## 关键知识点(H3C 官方文档)

>
> **基于 IP 子网的 VLAN 只对 Hybrid 端口接收的 Untagged 报文生效,对带 VLAN 标签的报文不生效**H3C。
> ip‑subnet‑vlan 用于终端接入,**不能用于交换机‑交换机互联场景**。交换机之间互联用 trunk 透传标签。

## 排错验证命令

```
#查看接口入方向匹配的子网VLAN
display port hybrid ip‑subnet‑vlan GigabitEthernet 1/0/3
#看接口收到带tag/untagged报文统计
display interface GigabitEthernet 1/0/3
#查看vlanif10的状态
display ip interface brief Vlan‑interface 10
```

## 为什么抓包能看到 ARP 回复但是没有 ARP 表?

抓包是芯片硬件镜像,**镜像可以抓到跨 VLAN 的报文;但是 ARP 表项学习受 VLAN 广播域约束:ARP 应答报文的入 VLAN 必须等于三层 Vlan‑interface 所属 VLAN,交换机才会学习 ARP**。镜像抓到报文≠三层模块接收处理该 ARP 报文。

### 补充原配置问题点

S68 GE1/0/3 互联口配置`port hybrid ip‑subnet‑vlan vlan10`,这个功能只处理**untagged 入报文**;S58 回包带 VLAN1 标签,不会匹配子网 VLAN,直接进入 PVID VLAN1,和 Vlan‑if10 三层接口不在同一个广播域,ARP 应答报文被二层收到,三层不处理 ARP 学习。

>
> 你的场景两台三层交换机,相同网段 IP 分别在 S58‑VLAN1,S68‑VLAN10,中间互联端口使用 ip‑subnet‑vlan,属于典型错用 ip‑subnet‑vlan 场景。ip‑subnet‑vlan 是终端接入功能,不是交换机间互联技术。

---

### 最简总结

1. ip‑subnet‑vlan**只管不带标签的入报文**,带 tag 报文不匹配该规则H3C。
2. S58 回 ARP 带 VLAN1 标签,报文进入 S68 的 VLAN1,网关 Vlan‑if10 属于 VLAN10,广播域隔离,不学 ARP。
3. **交换机之间互联不要用 ip‑subnet‑vlan,改用 Trunk 透传 VLAN10**。

编辑答案

你正在编辑答案

如果你要对问题或其他回答进行点评或询问,请使用评论功能。

分享扩散:

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作

举报

×

侵犯我的权益 >
对根叔社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明