Arista EOS VLAN 配置 Step-by-Step:Access/Trunk/SVI - 夜莺博客

Arista EOS VLAN 配置 Step-by-Step:Access/Trunk/SVI

Arista EOS 的 VLAN 模型与 Cisco IOS 相似但更简洁:没有独立的 vlan.dat,VLAN 数据库就是运行配置的一部分,write memory 即持久化;接口默认就是二层交换口,且不做 DTP 协商,模式必须显式配置。本文按真实上架流程走一遍:建 VLAN、配 access 口、配 trunk 口、用 SVI 做三层转发,每一步都给验证命令。

1. 创建与维护 VLAN

switch# configure terminal
switch(config)# vlan 10
switch(config-vlan-10)# name mgmt
switch(config-vlan-10)# state active
switch(config-vlan-10)# exit

# 一条命令创建多个 VLAN
switch(config)# vlan 10,20,30,40

# 暂停而不删除
switch(config)# vlan 40
switch(config-vlan-40)# state suspend

# 删除
switch(config)# no vlan 40

# 验证
switch# show vlan
switch# show vlan brief
switch# show vlan id 10
switch# show vlan name mgmt

state suspend 适合临时下线某个 VLAN:端口配置保留,但 VLAN 不参与转发,比删除再重建安全得多。

2. Access 口

switch(config)# interface Ethernet1
switch(config-if-Et1)# description web-server-01
switch(config-if-Et1)# switchport
switch(config-if-Et1)# switchport mode access
switch(config-if-Et1)# switchport access vlan 20
switch(config-if-Et1)# spanning-tree portfast
switch(config-if-Et1)# no shutdown

# 批量配置一组端口
switch(config)# interface Ethernet1-8
switch(config-if-Et1-8)# switchport mode access
switch(config-if-Et1-8)# switchport access vlan 20

# 验证
switch# show interfaces Ethernet1 switchport
switch# show vlan id 20
switch# show mac address-table interface Ethernet1

给 IP 电话接入口时,数据 VLAN 用 access、语音 VLAN 单独指定:

switch(config)# interface Ethernet5
switch(config-if-Et5)# switchport mode access
switch(config-if-Et5)# switchport access vlan 20
switch(config-if-Et5)# switchport voice vlan 100
switch(config-if-Et5)# spanning-tree portfast

3. Trunk 口

switch(config)# interface Ethernet49
switch(config-if-Et49)# description Downlink-to-sw2
switch(config-if-Et49)# switchport mode trunk
switch(config-if-Et49)# switchport trunk allowed vlan 10,20,30,40
switch(config-if-Et49)# switchport trunk native vlan 999
switch(config-if-Et49)# no shutdown

# 追加、移除、全放通
switch(config-if-Et49)# switchport trunk allowed vlan add 50,60
switch(config-if-Et49)# switchport trunk allowed vlan remove 60
switch(config-if-Et49)# switchport trunk allowed vlan all

# 验证
switch# show interfaces Ethernet49 trunk
switch# show lldp neighbors
switch# show interfaces Ethernet49 status

安全基线:native VLAN 永远不要留在 VLAN 1,改成未使用的 999 之类的 ID,并在两端保持一致。EOS 默认对所有已创建 VLAN 放通,因此显式收紧 allowed 列表本身就是一层收敛与安全控制。

4. SVI 与三层转发

switch(config)# ip routing
switch(config)# interface Vlan10
switch(config-if-Vl10)# description SVI-mgmt
switch(config-if-Vl10)# ip address 10.10.10.1/24
switch(config-if-Vl10)# no shutdown
switch(config)# interface Vlan20
switch(config-if-Vl20)# ip address 10.10.20.1/24
switch(config-if-Vl20)# no shutdown

# 验证
switch# show ip interface brief
switch# show ip route
switch# show interfaces Vlan10

SVI 的 up 条件是:该 VLAN 内至少有一个成员端口处于 up 且 STP 处于 forwarding。VLAN 内无活动端口时 SVI 会显示 down,这不是故障,而是正常行为;如果需要 SVI 无成员端口也保持 up,可在接口下配置 autostate 相关选项。

5. 排错清单

  • Access 口不通:对端在打标签,或 switchport mode access 未配置导致端口停留在默认模式。
  • Trunk 不通:allowed 列表缺少业务 VLAN;native VLAN 两端不一致导致未标记帧落错 VLAN。
  • SVI 不 up:VLAN 内没有 up 的成员端口,或 ip routing 未开启。
  • 变更不持久:忘记 write memory。EOS 没有独立的 VLAN 数据库文件,重启后未保存的 VLAN 就消失了。

相关阅读:Arista EOS VLAN 配置 step-by-step(英文版)Arista EOS trunk 与 VLAN 间路由 CLI 手册

原文链接:https://arista.com/en/um-eos/eos-virtual-lans-vlans